امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
مکان های تصادفی
نویسنده پیام
xsalamx آفلاین
كاربر دو ستاره
**

ارسال‌ها: 205
موضوع‌ها: 31
تاریخ عضویت: بهمن ۱۳۸۶

تشکرها : 313
( 146 تشکر در 38 ارسال )
ارسال: #1
مکان های تصادفی
[/b]سلام خسته نباشيد
مي خواستم بدونم چطوري مي شه داخل يه دايره(مثلا با اندازه 1000و1000و1000)با متد پي ست در مکان تصادفي(نقطه ها فقط داخل دايره و روي خطوط دايره نقطه بيافتد) و بارنگ تصادفي نقطه رسم بشه(من,در رسم خطوط در محوطه مخصوص((دايره)) مشکل دارم)اگه کمکم کنيد ممنون مي شم
خدا حافظ
۱۸-بهمن-۱۳۸۶, ۰۱:۱۷:۰۳
ارسال‌ها
پاسخ
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #2
RE: مکان های تصادفی
فکر می کنم راه های زیادی داشته باشه ولی من یکیش به نظرم اومد. می تونی هر نقطه ای که خواستی قرار بدی، ابتدا با استفاده از مختصات اون، عرض از مبدا رو بدست بیاری ( با فرض اینکه مبدا همون مرکز دایره هست وگرنه عرض از مرکز دایره رو باید بدست بیاری ) و اگر کوچکتر از شعاع دایره بود رسمش می کنی .
برای رنگ تصادفی هم می تونی مقدار رنگ رو با تابع RND بسازی.

۱۸-بهمن-۱۳۸۶, ۱۱:۰۱:۵۸
وب سایت ارسال‌ها
پاسخ
xsalamx آفلاین
كاربر دو ستاره
**

ارسال‌ها: 205
موضوع‌ها: 31
تاریخ عضویت: بهمن ۱۳۸۶

تشکرها : 313
( 146 تشکر در 38 ارسال )
ارسال: #3
RE: مکان های تصادفی
ممنونم از پاسختون. فکر کنم یه چیزایی فهمیدم.
۲۰-بهمن-۱۳۸۶, ۱۸:۲۱:۵۵
ارسال‌ها
پاسخ
xsalamx آفلاین
كاربر دو ستاره
**

ارسال‌ها: 205
موضوع‌ها: 31
تاریخ عضویت: بهمن ۱۳۸۶

تشکرها : 313
( 146 تشکر در 38 ارسال )
ارسال: #4
RE: مکان های تصادفی
سلام
یکمی روش کار کردم اما نتونستم(آخه ما تازه کاریم)می شه یه سورس کوچولو بذارید.
۲۰-بهمن-۱۳۸۶, ۲۳:۵۴:۲۰
ارسال‌ها
پاسخ
arashrj آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 511
موضوع‌ها: 30
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 4
( 212 تشکر در 133 ارسال )
ارسال: #5
RE: مکان های تصادفی
سلام
خیلی هم نباید ساده باشه !
چون مستطیل یا مربع نیست که !
اینو به نظر من حتما برای حلش باید از روابط مثلثاتی کمک بگیری
سعی کن روش فکر کنی .
البته اگه خودمم وقت کردم برات می نویسم.
این کد هم برای رنگ تصادفی
کد:
RGB(Rnd * 255, Rnd * 255, Rnd * 255)
موفق باشی

[آرش جعفری]
اگر به دیگران کمک کنید تا به آنچه می خواهند برسند .شما هم می توانید در زندگی به آنچه می خواهید برسید

* کوتاه کردن URL های طولانی

DevJam
(آخرین ویرایش در این ارسال: ۲۱-بهمن-۱۳۸۶, ۰۳:۲۲:۲۳، توسط arashrj.)
۲۱-بهمن-۱۳۸۶, ۰۳:۲۱:۴۳
وب سایت ارسال‌ها
پاسخ
Di Di آفلاین
مدير بخش هك و كرك
*****

ارسال‌ها: 2,358
موضوع‌ها: 116
تاریخ عضویت: اسفند ۱۳۸۵

تشکرها : 1816
( 4046 تشکر در 1321 ارسال )
ارسال: #6
RE: مکان های تصادفی
برای پیدا کردن عرض از مبدا یک نقطه کافیه شما طول و عرض نقطه رو داشته باشه ( مقادیر X و Y که برای رسم نقطه به کار می بری ) حالا قدر مطلق X,Y رو به دست میاری و با هم جمعمی کنی.

A = Abs ( X ) + Abs ( Y ) ' fff

حالا فرض می کنیم مرکز دایره شما همون مبدا مختصات ( X و Y مرکز دایره { 0 و 0 } هست ) و شما دایره ای به شعاع 1000 پیکسل دارید . در این حالت اگه مقدار A کمتر از 1000 باشه ، نقطه مورد نظر درون دایره قرار خواهد داشت و چنانچه دقیقا 1000 باشه نقطه روی دایره و اگر هم بزرگتر باشه خارج از دایره قرار داره.

اگه مرکز دایره جایی به جز مبدا مختصات باشه، باید برای تعیین مقدار A یکم بیشتر تلاش کنی . برای این کار باید مبدا مختصات رو همون مرکز دایره در نظر بگیری و مختصات نقطه ها رو بر طبق اون دوباره حساب کنی.

مثلا اگه مرکز دایره به جای نقطه { 0 و 0 } با همون مبدا مختصات در نقطه { 100و 0 } قرار داشت، و مختصات حقیقی نقطه شما {400 و 200- } هست ، برای تعیین عرض از مبدا باید مقدار X اون رو از X دایره که 100 هست کم کنید. یعنی باید عرض از مبدا نقطه ای با این مختصات رو حساب کنید { 300 و 200-}

خوب همه چیز آماده است چرا کدنویسیش رو شروع نمی کنی ؟ ;))

(آخرین ویرایش در این ارسال: ۲۱-بهمن-۱۳۸۶, ۱۱:۰۴:۵۲، توسط Di Di.)
۲۱-بهمن-۱۳۸۶, ۱۰:۵۱:۳۹
وب سایت ارسال‌ها
پاسخ
arashrj آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 511
موضوع‌ها: 30
تاریخ عضویت: آبان ۱۳۸۴

تشکرها : 4
( 212 تشکر در 133 ارسال )
ارسال: #7
RE: مکان های تصادفی
سلام
نمیدونم با روش قدر مطلقی که Di Di جان فرمودن میشه یا نه ! (البته اگه خودش لطف کنه سورس روش قدرمطلقی رو بنویسه جالب میشه !)
اما من به یه روش دیگه حلش کردم
این هم کد :

کد:
Dim Xc, Yc, Rc As Integer

Private Sub Form_Load()
    Xc = 1500
    Yc = 1500
    Rc = 1000
    Circle (Xc, Yc), Rc
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Dim deltaX, deltaY As Integer
    Dim deltaR As Integer
    deltaX = X - Xc
    deltaY = Y - Yc
    deltaR = Sqr((deltaX ^ 2 + deltaY ^ 2))
    If deltaR <= Rc Then
        PSet (X, Y)
    End If
End Sub
موفق باشی

[آرش جعفری]
اگر به دیگران کمک کنید تا به آنچه می خواهند برسند .شما هم می توانید در زندگی به آنچه می خواهید برسید

* کوتاه کردن URL های طولانی

DevJam
(آخرین ویرایش در این ارسال: ۲۱-بهمن-۱۳۸۶, ۱۴:۵۷:۳۱، توسط arashrj.)
۲۱-بهمن-۱۳۸۶, ۱۴:۵۲:۱۷
وب سایت ارسال‌ها
پاسخ
xsalamx آفلاین
كاربر دو ستاره
**

ارسال‌ها: 205
موضوع‌ها: 31
تاریخ عضویت: بهمن ۱۳۸۶

تشکرها : 313
( 146 تشکر در 38 ارسال )
ارسال: #8
RE: مکان های تصادفی
سلام
دست درد نکنه کارم رو را انداختی(البته یه کمی باید تغیرش بدم)
خدا حافظ
۲۶-بهمن-۱۳۸۶, ۲۲:۳۲:۴۹
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  نمایش جمله ی تصادفی download69 6 5,611 ۲۳-آبان-۱۳۸۹, ۱۵:۲۰:۵۱
آخرین ارسال: download69
Wink حروف تصادفی mahadahda 3 3,095 ۲۳-مرداد-۱۳۸۹, ۱۰:۱۱:۲۱
آخرین ارسال: kimiafars
  سوال در مورد اعداد تصادفی toytown 6 8,681 ۰۳-مرداد-۱۳۸۹, ۲۱:۱۸:۲۰
آخرین ارسال: dreamvbfox
  جابه جایی مکان نما hamed_Arfaee 1 1,646 ۱۰-دى-۱۳۸۷, ۰۳:۵۸:۴۶
آخرین ارسال: hamed_Arfaee
  تصادفی قرار گرفتن کامپوننتها siana_k1980 2 2,188 ۳۰-فروردین-۱۳۸۷, ۰۸:۴۸:۱۲
آخرین ارسال: Darg
  اجرای برنامه در هر زمان و هر مکان xsalamx 7 4,909 ۱۱-اسفند-۱۳۸۶, ۰۱:۰۷:۱۲
آخرین ارسال: m_vb6
  آوردن سوال به صورت تصادفی sokote_bi_payan 1 1,850 ۲۷-تير-۱۳۸۵, ۱۵:۲۷:۵۳
آخرین ارسال: Blossom
Shy مشخص کردن مکان دقیق خطا ! Darg 5 3,862 ۰۴-خرداد-۱۳۸۵, ۱۶:۲۸:۱۲
آخرین ارسال: Darg

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS