![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Aug 2001
Адрес: vg
Сообщений: 352
|
дядька Брезенхейм нам казал что окружность на матрице можно нарисовать с точностью около 0.7
запусти ниже следующее и посмотри на радиус который возвращают точки полученные по Безье. r=100; num=8; ang=0; dang=Math.PI/num; while(ang<2*Math.PI){ x1=r*Math.cos(ang); y1=r*Math.sin(ang); x2=2*r*Math.cos(ang+dang)-0.5*r*(Math.cos(ang)+Math.cos(ang+2*dang)); y2=2*r*Math.sin(ang+dang)-0.5*r*(Math.sin(ang)+Math.sin(ang+2*dang)); x3=r*Math.cos(ang+2*dang); y3=r*Math.sin(ang+2*dang); calc (x1,x2,x3,y1,y2,y3); ang+=2*dang; } function B1 (t) { return (t*t); } function B2 (t) { return (2*t*(1-t)); } function B3 (t) { return ((1-t)*(1-t)); } function calc (x1,x2,x3,y1,y2,y3) { count = 0; detailBias = 1/59; level = 1; do { x = x1*B1(count)+x2*B2(count)+x3*B3(count); y = y1*B1(count)+y2*B2(count)+y3*B3(count); r=Math.sqrt(x*x+y*y); trace(r); count += detailBias; } while (count<=1); } |
![]() |
Часовой пояс GMT +4, время: 18:33. |
|
|
« Предыдущая тема | Следующая тема » |
|
|