![]() |
|
||||||||||
|
|||||
|
Регистрация: Oct 2006
Сообщений: 15
|
как скриптами нарисовать окружность заданого центра и радиуса?
|
|
|||||
|
Modus ponens
|
Тебе полностью написать или объяснить хватит? =)
Если объяснить - то читай дальше, если написать - вечером сделаю =) Итак Используя MovieClip.curveTo() последовательно рисуем N-ое количество одинаковых кривых соединенных в конечных точках, которые рассчитываем по формуле: X = R*sinά; Y = R*cosά; Вертексы рассчитываем по формуле: X = X1-R*sinά/2; Y = Y1+R*cosά/2; ά зависит от того, каким количеством кривых ты будешь рисовать окружность, желательно не меньше 6, а то кривовато выглядеть будет (ά в этом случае будет прибывать по 360/6 = 60); X и Y самой удаленной от центра окружности точки радиуса, я думаю, сможешь и сам посчитать =) ЗЫ. Вроде у Гурского как раз такой пример был =)
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Oct 2006
Сообщений: 15
|
Я девочка
Спасибо, параметрическое задание окружности я знаю, попробую, напишу если проблемы. Спасибо |
|
|||||
|
loading 50%
|
Ух уж эта геометрия.
function radians(degrees) {
return (Math.PI/180)*degrees;
}
theta = 45;
//радиус:
r=100;
d = r/Math.cos(radians(.5*theta));
this.lineStyle(1, 0x000000, 100);
this.moveTo(r, 0);
for (k=(theta/2); k<361; k=k+theta) {
xControl = d*Math.cos(radians(k));
yControl = d*Math.sin(radians(k));
xAnchor = r*Math.cos(radians(k+(theta/2)));
yAnchor = r*Math.sin(radians(k+(theta/2)));
this.curveTo(xControl, yControl, xAnchor, yAnchor);
}
//координаты центра:
this._x = 200
this._y = 200
|
![]() |
![]() |
Часовой пояс GMT +4, время: 11:57. |
|
|
« Предыдущая тема | Следующая тема » |
|
|