[object Object]
Регистрация: 01.08.2008
Адрес: В России
Сообщений: 4,372
Написано 2,478 полезных сообщений (для 6,866 пользователей)
|
Ответ: Центр многоугольгика
Спасибо всем, вот что получилось:
<script type="text/javascript">
function FindCentroid(points){
var count = points.length;
var Sx = 0;
var Sy = 0;
for (i=0;i<count;i+=2){
Sx+= parseInt(points[i]);
Sy+= parseInt(points[i+1]);
}
Sx = Sx / (points.length * 0.5);
Sy = Sy / (points.length * 0.5);
document.write( '<br /> Centroid: <b>' + Sx +' , '+ Sy +'</b><br />');
var result = new Array(parseInt(Sx), parseInt(Sy));
return result;
}
var arr;
document.write('<fieldset> <legend>Poly</legend>');
arr = [0,0, 0,5, 10,5, 10,10, 15,10, 15,15, 0,15];
FindCentroid(arr);
document.write('</fieldset>');
document.write('<fieldset> <legend>Square</legend>');
arr = [0,0, 0,5, 5,5, 5,0];
FindCentroid(arr);
document.write('</fieldset>');
document.write('<fieldset> <legend>Triangle</legend>');
arr = [0,10, 10,10, 10,20];
FindCentroid(arr);
document.write('</fieldset>');
</script>
И результаты:
Poly
0,0; 0,5; 10,5; 10,10; 15,10; 15,15; 0,15;
Centroid: 7.14 , 8.57
Square
0,0; 0,5; 5,5; 5,0;
Centroid: 2.50 , 2.50
Triangle
0,10; 10,10; 10,20;
Centroid: 6.67 , 13.33
|
То, что надо :D
__________________
Retry, Abort, Ignore? █
Intel Core i7-9700 4.70 Ghz; 64Gb; Nvidia RTX 4090 3070
AMD Ryzen 7 3800X 4.3Ghz; 64Gb; Nvidia 1070Ti
AMD Ryzen 7 1700X 3.4Ghz; 8Gb; AMD RX 570
AMD Athlon II 2.6Ghz; 8Gb; Nvidia GTX 750 Ti
|