PDA

View Full Version : سوال: الگوریتم تشخیص برخورد دو دایره با هم



minashokri
یک شنبه 17 خرداد 1388, 11:38 صبح
درباره الگوریتم تشخیص برخورد دو دایره با هم کمکم کنید خواهش می کنم

tdkhakpur
یک شنبه 17 خرداد 1388, 13:51 عصر
سلام
ببینید این مساله به هوش مصنوعی ربطی نداره شما برای هر دایره یک نقطه مرکز و یک شعاع دارید.
شما از نقطع مرکز تا انتهای نقطه شعاع رو در نظر بگیرید اگر این دو نقطه(دو نقطه انتهای شعاع دو دایره) به یک نقطه مشترک ختم بشوند این دو دایره باهم برخورد داشته اند.
موفق باشید.

mortezamsp
یک شنبه 17 خرداد 1388, 23:38 عصر
با سلام.
سادست ديگه! تو شعاع هر دايره رو داري، فقط بايد هر لحظه مختصات مركز دو دايره رو دريافت كني و بعد ببيني آيا فاصله اين دو نقطه از هم برابر مجموع شعاع هاي دو دايره هست يا نه.كه اگر برابر مجموع شعاع هاشون باشه يعني برخورد كردن.يه راه ساده.



class circle()
{
public:
circle();


int x;
int y;
int r;
.
.
.
}

int func(circle c1,circle c2)
{

int a=abs(c1.x - c2.x); //ABS:قدرمطلق
int b=abs(ca.y - c2.y);
int r=sqrt(a^2 + b^2);

if(r== abs(c1.r + c2.r)
return(1); //برخورد کرده
else
RETURN(0);

}

mosab_vb
شنبه 13 تیر 1388, 11:16 صبح
ببخشید یک مثال می زنید.عددی.ممنون.