PDA

View Full Version : ساخت عقربه ساعت به سبک ماکروسافت



Delphi KDE
شنبه 16 آبان 1383, 02:58 صبح
سلام دوستان
من میخواهم عقربه ای به شکل زیر درست کنم البته ساخت عقربه ثانیه که خیلی ساده است فقط یک دستور LineTo است منظورم عقربه دقیقه است
من از چند لاین کنار هم با زاویه استفاده کردم ولی درست جواب نمیده
کسی میدونه چطوری میشه دقیقا چنین عقربه ای را ساخت

JavanSoft
شنبه 16 آبان 1383, 13:24 عصر
این کامپوننت را در سایت آقای یعقوبی می توانید با سورس پیدا کنید

ahmad sajjad
شنبه 16 آبان 1383, 22:32 عصر
اگر آدرس سایت آقای یعقوبی رو هم مینوشتید دیگه توپ بود

Delphi KDE
یک شنبه 17 آبان 1383, 02:24 صبح
اگه اشتباه نکنم باید این باشه
http://www.geocities.com/b_yaghobi/vcls/farsi/indexfar.html
لینک دقیق رو پیدا کردم همینجا میزارم تا بقیه هم استفاده کنند

Delphi KDE
دوشنبه 18 آبان 1383, 01:52 صبح
فکر کنم سایت رو اشتباهی رفتم تمان سایت رو دو با زیرو رو کردم هیچی بدر بخوری (البته در این مورد)پیدا نکردم
حالا به غیر از این مورد هر کدام از دوستان ایده ای نظری یا هر چی که در مورد حل این موضوع به نظرش میاد بنویسند

سار
سه شنبه 19 آبان 1383, 15:33 عصر
اگه اشتباه نکنم باید این باشه
http://www.geocities.com/b_yaghobi/vcls/farsi/indexfar.html
لینک دقیق رو پیدا کردم همینجا میزارم تا بقیه هم استفاده کنند


با عرض شرمندگی من به پیغام زیر برخورد کردم:

مشترک گرامی

دسترسی به این سایت امکان پذیر نمی باشد

آیا لینک درسته؟!!! :strange:

hadavinia
سه شنبه 19 آبان 1383, 16:34 عصر
میتونی از فلش استفاده کنی

MiRHaDi
سه شنبه 19 آبان 1383, 19:54 عصر
سلام
بعضی از ISP ها Geocities رو Filter کردند ( لعنه الخلق علیه)
بای

JavanSoft
سه شنبه 19 آبان 1383, 21:24 عصر
با اجازه آقای یعقوبی

Gladiator
سه شنبه 19 آبان 1383, 21:44 عصر
جدیدا از شرکت مخابرات ایران نامه محرمانه ای ارسال شده که پیرو این نامه 12 برگ A4 لیست سایتهای ممنوعه اعلام شده یکی از این سایتهای همین Geocities.com خودمونه که از این به بعد باید باهاش خداحافظی کنید .

Gladiator
سه شنبه 19 آبان 1383, 21:47 عصر
راستی در مجموعه کامپوننتهای Jedi هم این کامپوننت موجوده .

MiRHaDi
سه شنبه 19 آبان 1383, 22:29 عصر
سلام
آقا اگه پایه اید بریم تو کار ................ مخابرات !
هر چی سایت Hack , Crack , ... هم هست بسته !
فقط باید بیام تو برنامه نویس ! البته تهران اینجوریه ها . شهرستانها کمتر فیلتر دارند
لعنه الخلق علی الجمیع الفیلترینگ



برای عقربه هم باید از Sin , Cos استفاده کنی و 4 تا نقطه رو بدست بیاری و باهاش رسم کنی همین
بای

Delphi KDE
چهارشنبه 20 آبان 1383, 03:26 صبح
میتونی از فلش استفاده کنی

اگر شما Task Manager یا هر برنامه دیگری که بتواند درصد استفاده از CPU رو نشون بده اجرا کنید و بعد یک ساعت عقربه ای نوشته شده با زبان دلفی رو با یک ساعت عقربهای دیگر در فلاش مقایسه کنید میبینید که تقریبا فلاش 10 برابر وقت CPU رو نسبت به دلفی اشغال میکنه وگر نه ساعت های خیلی قشنگی نوشته شده با فلاش قابل دسترس است

Delphi KDE
چهارشنبه 20 آبان 1383, 03:40 صبح
راستی در مجموعه کامپوننتهای Jedi هم این کامپوننت موجوده
جناب Gladiator اون ساعتی که در مجموعه کامپوننت های Jedi وجود دارد عقربه های ساعتش خط معمولی است ولی من میخواهم دقیقا مثل تصویری که پست کردم عقربه بسازم
:mrgreen:

Gladiator
چهارشنبه 20 آبان 1383, 08:39 صبح
شاید چشمای من اشتباه میبینه . :kaf:

MiRHaDi
چهارشنبه 20 آبان 1383, 19:34 عصر
سلام
خطه دیگه :)) خطش کلفته !
منظورش اینه که خط نباشه متوازی الاضلاع باشه
مخلصیم
بای

Gladiator
چهارشنبه 20 آبان 1383, 23:10 عصر
جیگر ٬ همنطور که اینو ساختن اونم میشه ساخت ٬ کلفت بودنش مهمه براتون ؟ :kaf:

Sepidar
چهارشنبه 20 آبان 1383, 23:48 عصر
بابا خودتون رسم کنین راحتترین که!

چند خط مثلثات: ::نوشتن::
مطابق شکل برای رسم عقربه به طول بدنه L1، طول دم L2، و پهنای w که زاویه اش با محور xها بر حسب رادیان t باشد به دانستن مختصات 4 نقصه نیاز است:

X1=L1*Cos(t)
Y1=L1*Sin(t)

X2=w/2*Cos(t+pi/2)
Y2=w/2*Sin(t+pi/2)

X3=w/2*Cos(t-pi/2)
Y3=w/2*Sin(t-pi/2)

X4=L2*Cos(t-pi)
Y4=L2*Sin(t-pi)

نکته کنکوری:
مختصات Canvas شما با مختصات شکل بنده تفاوت دارد. در محاسبات فوق (یا پس از آن) باید تبدیل مختصات هم انجام شود.

امیدوارم نتیجه بگیرید...

Delphi KDE
پنج شنبه 21 آبان 1383, 02:36 صبح
از جناب Sepidar و دیگر دوستان ممنونم ولی این کاری هم که شما فرمودید من قبلا انجام دادم و در زمان رسم عقربه اگر شکل عقربه را به دو مثلث تقسیم کنیم (1و2و4) و (1و3و4) ارتفاع مثلث بالایی به طور مثال باید یک چیزی در حدود 3 پیکسل باشد و اگر فرض کنیم طول عقربه (1و4) 60 پیکسل باشد به این ترتیب در هر 20 پیکسلی که به سمت جلو میرویم یک پیکسل هم به سمت پایین میاییم مانند ساعت عقربه ای اقای کرامتی که در تصویر میبینید و شکل حاصل زیاد جالب نیست (البته نظر شخصی منه) من برای رسم این عقربه از Polyline,Line استفاده کردم ولی همونطور که گفتم زیاد خوب در نیامد در اخر به فکر رسم پیکس به پیکسل افتادم که دقیقا میتواند چیزی که من میخواهم را بسازد ولی خیلی تعداد دستورات زیاد میشود و اگر بخواهم همان طور که در تصور اول میبینید هر عقربه دو تا سایه هم دارد و در هر ثانیه مجبور به رسم 6 عقربه اونم با این مشخصات باشم تعداد خیلی زیادی پیکسل اونم با رسم به صورت دستی بنظر کار معقولی نیست
بلاخره این ساعت ماکروسافت هم یک نفر برنامه اش را نوشته و نباید چیز محالی باشد
من از دوستان میخواهم راهنمایی کنند که دقیقا(دقیقا) چه جوری میشه عقربه های ساعت به سبک ماکروسافت ساخت :oops:
در ضمن اینم بگم که اگر تونستم چنین عقربه ای بسازم حتما همین جا اپلود میکنم تا دیگر دوستانم استفاده کنند

Sepidar
پنج شنبه 21 آبان 1383, 02:59 صبح
اصول روش رسم عقربه توسط شرکت مایکروسافت و یا هر موسسه انتفاعی و یا غیر انتفاعی دیگری که تو این دنیای فانی بخواد عقربه رسم کنه همونی بود که عرض شد، ولا غیر.

به این ترتیب در هر 20 پیکسلی که به سمت جلو میرویم یک پیکسل هم به سمت پایین میاییم مانند ساعت عقربه ای اقای کرامتی که در تصویر میبینید و شکل حاصل زیاد جالب نیست (البته نظر شخصی منه)
یک بار دیگر به عکسی که گذاشتید دقت کنید: عقربه ساعت شمار مایکروسافت هم همین مشکل را دارد :)

MiRHaDi
پنج شنبه 21 آبان 1383, 06:06 صبح
سلام
من میخواستم بشینم بنویسم بذارم اینجا که دیدم زحمتش رو کشیدید
بابا خیلی باحالی واقعا عکسشم خیلی قشنگ بود
خدا از مدیری کمت نکنه :)
قربانت و ارادت مند
بای

Delphi KDE
شنبه 23 آبان 1383, 04:30 صبح
جناب Sepidar عزیز شما درست می فرمایید اصول باید یکی باشد ولی مشکل من لبه های عقربه A و B است
همان طور که میبینید لبه های عقربه A نسبت به عقربه B زیاد جالب نیست من میخواهم لبه های عقربه ای که میسازم مثل شکل B باشد لبه های عقربه شکل A دندانه های کمتری دارد نسبت به شکل B در حالی که هر دو تقریبا طول و عرض یکسانی دارند چطور تعداد دندانه های عقربه B انقدر زیاد است در حالی که طول و عرض یکسانی دارند در عقربه A فاصله هر دندانه یک پیکسل است و من واحد کوچکتر از پیکسل نمیشناسم حالا نمیدانم این ماکروسافت چطوری این عقربه را ساخته :گیج:

MiRHaDi
شنبه 23 آبان 1383, 08:35 صبح
سلام
عزیزم این بستگی به زاویه داره
شما شکل B رو چرخوندی !‌اون روی 12 نبوده ! روی مثلا 7 بوده ! ولی شکل A روی 12 بوده.
شما ساعت 9:00 رو رای سیستمت بیار با ویندوز بعد نگاش کن میبینی اینجوری میشه
این به الگوریتم کاری نداره Pixel های monitor هست که در هر حالتی چجوری به شکل شما نزدیک تر میتونه باشه
راستی این پروژه چی هست که اینقدر دقیقه ؟
مخلصیم بای

Delphi KDE
یک شنبه 24 آبان 1383, 04:24 صبح
سلام MiRHaDi
شما درست میفرمایید عقربه رو ساعت 12 نبوده و من چرخوندمش
و در مورد ساعت 9 هم حق با شماست :)
بازم روی رسم با زاویه کار میکنم امیدوارم جواب بده من میخواهم تو زاویه دقیقا مثل عقربه ماکروسافت باشه

راستی این پروژه چی هست که اینقدر دقیقه ؟
پروژه خاصی نیست بعضی اوقات من به یک چیزایی گیر میدم و تا سر در نیارم دقیقا چجوری نوشته شده ول کن ماجرا نیستم :mrgreen:

mr13668248
جمعه 02 تیر 1391, 10:29 صبح
خیلی ممنون-بسیار عالی هست