PDA

View Full Version : زوم کردن نقطه از عکس



ehsanocx
دوشنبه 10 خرداد 1389, 00:47 صبح
با سلام
دوستان چطوری می تونم مثل این شکل هر جا که mouse move میشه همون نقطه رو زومش رو توی یک مسططیل کنارش نشون میده ببینم ؟
50056
و چطوری این مستطیل روی این عکس ثابته و وقتی اسکرول تکون میدی این مستطیل همچنان ثابته و تکون نمی خوره ؟ چطوری می تونم جنین کاری رو توی vb انجام بده ؟
دوستان کسی می تونه کمکم کنه؟

ehsanocx
دوشنبه 10 خرداد 1389, 23:27 عصر
دوستان یعنی کسی اطلاعاتی در این زمینه نداره ؟

ehsanocx
سه شنبه 11 خرداد 1389, 18:56 عصر
دوستان لطفا در این زمینه بهم اطلاعاتی بدبد یا نمونه سورسی که بتونم چنین چیزی رو بنویسم. با تشکر

vbhamed
سه شنبه 11 خرداد 1389, 19:43 عصر
سلام

من رفرنس كار رو بهتون مي دم
يك پيكچر باكس داخل پيكچر باكس جاري بزاريد براي نمايش بزرگتر (همون زوم شده)
وقتي ماوس روي پيكچر پايين حركت مي كنه يك مربع با سايز دلخواه مثلا 20 در 20 دور مكان فعلي ماوس در نظر بگيريد سپس از اون منطقه عكس بگيريد و در پيكچر داخلي با سايز بزرگتر رسم كنيد

براي رسم كردن و عكس گرفتن هم از متد PaintPicture استفاده كنيد

daniyal_1363
سه شنبه 11 خرداد 1389, 19:49 عصر
دوستان لطفا در این زمینه بهم اطلاعاتی بدبد یا نمونه سورسی که بتونم چنین چیزی رو بنویسم. با تشکر

سلام

شما با استفاده از خاصیت MouseMove در Image با 2 Image میتونی این کار رو انجام بدی (یه Image برای نمایش عکس به صورت کامل و یه Image برای نمایش زوم قسمتی که موس در اونجاس)

ehsanocx
سه شنبه 11 خرداد 1389, 20:18 عصر
50197
50196
دوستان به این برنامه یه نگاه بندازین به همراه فایل dll مورد نیازش . من تا اینجاشو انجام دادم این برنامه رو برای زوم کردن. حالا چطوری اینو می تونم mouse over کنم؟ یعنی هر جا موس میره او نقطه رو زومشو نمایش بده ؟
دوستان کسی می تونه برنامه رو اصلاح کنه؟ یا تشکر

daniyal_1363
سه شنبه 11 خرداد 1389, 21:11 عصر
این یه نمونه که الان ساختم

البته به روش دوستمون

روشی که خودم گفتم یکم پیچیدس

ehsanocx
سه شنبه 11 خرداد 1389, 22:05 عصر
(PaintPicture Image1.Picture, 200, 250, 2000, 1500, X - 300, Y - 300, Val(Text1.Text), Val(Text1.Text

میشه این کد رو توضیح بدی دوست من؟

daniyal_1363
چهارشنبه 12 خرداد 1389, 08:28 صبح
(PaintPicture Image1.Picture, 200, 250, 2000, 1500, X - 300, Y - 300, Val(Text1.Text), Val(Text1.Text

میشه این کد رو توضیح بدی دوست من؟

PaintPicture Image1.Picture, 200, 250, 2000, 1500, X - 300, Y - 300, Val(Text1.Text), Val(Text1.Text)

مربوط به اینکه عکس در کجا و با چه اندازه ای نمایش داده بشه :

اعداد 200 و 250 مکان X و Y عکس زوم شده شماست که تو این نمونه کوشه سمت راست بالا قرار میگیره (یعنی نقطه شروع عکس ) (رنگ سبز)

اعداد 1500 و 2000 میزان Width و Height (همون طول و عرض عکسی که قراره نمایش داده بشه ) عکس زوم شده شماست شماست (رنگ قرمز) - (توضیح بیشتر اینکه : اگه زیاد بزرگش کنین تصویر رو کامل میگیره و اگه زیاد کوچکش کنید مثل یه نقطه میشه )


مربوط به اینکه عکس از کجای تصویر و با چه اندازه ای گرفته بشه :

X- 300 و Y - 300 نقطه جایی که قرار عکس از اونجا گرفته بشه (X و Y مختصات موس روی تصویر هستش که ورودی های تابع ما هستند و با حرکت موس روی عکس تغییر میکنه) (رنگ آبی)

و بالاخره Val(Text1.Text) که Width و Height (طول و عرض) عکس گرفته شدس (رنگ زرد)

vbhamed
چهارشنبه 12 خرداد 1389, 09:08 صبح
سلام
اينم نسخه كامل ترش :

ehsanocx
چهارشنبه 12 خرداد 1389, 19:14 عصر
دوست من آقا حامد اینی که شما طراحی کردین اگر سایز عکس بزرگ باشه موس رو تکون بدی زوم رو تیکه تیکه نشون میده در piczoom دوست من و پرش داره و مقدار زوم رو زیاد می کنی خیای دقتش میاد پایین. بازم ممنون از لطفتون و زحمتی که کشیدین. میشه برنامه ای که خودم نوشتم رو اصلاح کنین؟ .

ehsanocx
جمعه 14 خرداد 1389, 00:00 صبح
http://barnamenevis.org/forum/attachment.php?attachmentid=50197&d=1275409094
http://barnamenevis.org/forum/attachment.php?attachmentid=50196&d=1275408766

این برنامه ای که نوشتم. دوستان کسی نمی تونه راهنماییم کنه؟ می خوام فقط هر جا که موس رفت او نقطه رو زوم کنه. Mouse move کردنش رو بلد نیستم. الان گر درگ کنی موس رو زوم اون نقطه رو نمایش می ده . می خوام با حرکت موس روی اون صفحه زوم رو نمایش بده. کسی نمی خواد کمک کنه؟

daniyal_1363
جمعه 14 خرداد 1389, 18:01 عصر
http://barnamenevis.org/forum/attachment.php?attachmentid=50197&d=1275409094
http://barnamenevis.org/forum/attachment.php?attachmentid=50196&d=1275408766

این برنامه ای که نوشتم. دوستان کسی نمی تونه راهنماییم کنه؟ می خوام فقط هر جا که موس رفت او نقطه رو زوم کنه. Mouse move کردنش رو بلد نیستم. الان گر درگ کنی موس رو زوم اون نقطه رو نمایش می ده . می خوام با حرکت موس روی اون صفحه زوم رو نمایش بده. کسی نمی خواد کمک کنه؟

سلام

دوست عزیز خاصیت فایل Dll شما اینه که با Drag کار کنه و تظیماتی هم در مورد Mouse Move نداره - پس تنها طراح dll میتونه این کار رو انجام بده و dll جدید به شما بده :چشمک:

daniyal_1363
جمعه 14 خرداد 1389, 18:10 عصر
تصمیم دارم یه طرح جدید برای زوم تصاویر بریزم که بر اساس ریاضیاته - چون من ریاضیات رو خیلی دوست دارم :لبخند: نمونه ای که تو فکرمه و قراره درست کنم به نظرم خیلی جاها پرکاربردتر از این نمونه ها باشه و عکس های با کیفیت بالا رو با کیفیت بالا زوم کنه

از همین ساعت شروع میکنم - امیدوارم با مشکل برنخورم:لبخندساده:

vbhamed
شنبه 15 خرداد 1389, 10:42 صبح
دوست من آقا حامد اینی که شما طراحی کردین اگر سایز عکس بزرگ باشه موس رو تکون بدی زوم رو تیکه تیکه نشون میده در piczoom دوست من و پرش داره و مقدار زوم رو زیاد می کنی خیای دقتش میاد پایین. بازم ممنون از لطفتون و زحمتی که کشیدین. میشه برنامه ای که خودم نوشتم رو اصلاح کنین؟ .

سلام
پروژه پست شماره 10 مشكل سرعتش حل شد
همون رو دوباره دانلود كنيد

miladatashin
شنبه 15 خرداد 1389, 14:27 عصر
اینم اگه دوست داشتی یه نگاه بنداز
البته دو خط بیشتر نیست

vbhamed
یک شنبه 16 خرداد 1389, 10:22 صبح
اینم اگه دوست داشتی یه نگاه بنداز
البته دو خط بیشتر نیست

سلام
فايل .frm ضميمه پروژه نيست !

miladatashin
یک شنبه 16 خرداد 1389, 14:24 عصر
درسته
اضافه کردم

ehsanocx
یک شنبه 16 خرداد 1389, 17:08 عصر
من اگر Scale Mode عکس رو به سانتیمتر تبدیل کنم. زوم بهم میریزه و خراب میشه. حتما مقدار scale Mode روی twip باشه. چطوری می تونم scale Mode رو به سانتیمتر تبدیل کنم و زوم بهم نریزه؟



Dim z!

z = Val(Text1)

With piczoom
.Cls
Shape1.Move (X - (.Width \ 2) \ z), (Y - (.Height \ 2) \ z), .Width \ z, .Height \ z
.PaintPicture Picture1.Picture, 0, 0, .Width, .Height, _
Shape1.Left, Shape1.Top, Shape1.Width, Shape1.Height
End With

ehsanocx
یک شنبه 16 خرداد 1389, 17:10 عصر
scale mode عکس منظورم همون scale Mode
picture Box هستش.

ehsanocx
یک شنبه 16 خرداد 1389, 17:11 عصر
scale mode عکس منظورم همون scale Mode
picture Box هستش.

romina2006
یک شنبه 16 خرداد 1389, 18:41 عصر
ببين اين سورس بدردت ميخوره

Mohamad ghorbani
یک شنبه 16 خرداد 1389, 20:18 عصر
سلام
اينم نسخه كامل ترش :
من این برنامه رو دانلود کردم. خیلی عالی بود
حالا اگر بخوایم کاری کنیم که بجای عکس ،BackGround ویندوز رو نشون بده باید چیکار کرد؟

vbhamed
سه شنبه 18 خرداد 1389, 09:58 صبح
scale mode عکس منظورم همون scale Mode
picture Box هستش.

سلام
خب در اونصورت بايد تبديل سانتي متر به پيكسل رو انجام بدي
ولي شما چرا از اول نمي گي در نهايت چي ميخواي
بهتره بگي در آخرين مرحله قصد داري چه كاري انجام بدي

ehsanocx
سه شنبه 18 خرداد 1389, 10:37 صبح
اقا حامد حالا چطوری این کارو انجام بدم؟ میشه دوباره کد رو اصلاح کنی؟ و تبدیل twip به سانتیمتر رو درست کنی ? و بگی کدش چیه؟ با تشکر