2016-04-08 23 views
0

Daha sonra aynı boyuta sahip x1, y1 ve x2, y2 merkezlerine sahip iki daireye (daire-1, daire-2) sahip olmalıyım.İki aynı dairenin yüzdesiyle üst üste bulma düzeyi bulma

Şimdi ben cir2 tamamen Cir1 kapsıyorsa (yüzde olarak) Cir1 üzerinde cir2 ait ile üst üste yüzdesini (ex) hesaplamak ve yarım Üstüne yerleştirme olacak% 50 ettik puanı yapılırsa o zaman, =% 100 değilse ilave etmek istediğiniz Hiç yok =% 0.

Bu nasıl yapılır? cevap için

Herhangi Kılavuzu ....

+0

http://mathworld.wolfram.com/Circle-CircleIntersection.html –

+0

teşekkürler. Anlamak biraz zor. Puanlar arasındaki mesafeyi hesaplamak için (ex) başka bir yol var mıdır? Distance = Math.sqrt ((x1-x2) * (x1-x2) + (y1-y2) * (y1-y2)); ve böylece bir ... – user6176116

+0

Mesafe formülü ile söyleyeyim demek, bazı yüzde değerine dönüşebilir – user6176116

cevap

0
Thanks Andy. 
I got an idea from the link you provide. 
Though the idea is not the best, but it solves the purpose.. 

double radius = 40.0; 
int x1 =100; //first Circle X value 
int y1 = 100; //first Circle Y value 
int x2 = 100; //second Circle X value 
int y2 = 100; //second Circle Y value 

double iDist = Math.sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1)); 
double per = (100.0-(iDist/radius)*100); //get the value in % 
System.out.println("Distance: "+iDist + "("+per+"%)"); 


OUTPUT: 

if values are (100,100) and (100,100) then o/p : 100% 
if values are (100,100) and (120,100) then o/p : 50% 
if values are (100,100) and (140,100) then o/p : 0% 
if values are (100,100) and (600,600) then o/p : percentage in negative value (ex) - 973% 


All the best....!