Ai bít thuật toán tính diện tích phần giao của 2 đường tròn chỉ hộ mình với.Hoặc có đoạn code nào pót lên họ mình với...thx all:hug: Và có 1 cách sau : chia hình vuông ngọai tiếp đường tròn nhỏ thành nhiều phần.Kiểm tra hình vuông con có thuộc 2 đường tròn ko??nếu thuộc cả 2 thì cộng vào....Hix nếu ai có đoạn code của cách này thì send hộ mình với....
Mình chỉ có cách tính thế này. Thử tìm hai giao điểm, tính tổng diện tích các cung tròn (có công thức mà) và tính diện các tam giac tạo bởi hai cặp bán kính và đường nối hai giao điểm.
Thx all ...cuối cùng cũng đã cài đặt xong rùi.Mình chọn cách chia ra thành những hình vuông cho dễ hiểu nhưng chạy lâu 1 tí:whew: PHP: float dtphangiao(DUONGTRON C,DUONGTRON D) { double s=0; for(int i=0 ;i<2*C.R/0.001 ;i++) for(int j=0 ;j<2*C.R/0.01 ;j++) { DIEM temp ; temp.x=float(C.I.x - C.R + j*0.001); temp.y=float(C.I.y + C.R - i*0.001); if(ktthuoc(C,temp)==1&&ktthuoc(D,temp)==1) s += 0.000001; } return (float)s; } int ktthuoc(DUONGTRON C,DIEM P) { float kc = khoangcach(C.I,P); if(kc <= C.R) return 1; return 0; } float khoangcach(DIEM A,DIEM B) { return float(sqrt((A.x-B.x)*(A.x-B.x)+(A.y-B.y)*(A.y-B.y))); }