Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.26;
Скачать: CL | DM;

Вниз

Формула эллипса   Найти похожие ветки 

 
Ice ©   (2006-11-06 22:42) [0]

Подскажите, пожалуйста формулу эллипса, в смысле, функцию, подставляя значения в которую
можно получить (y) точки окружности. Я сейчас хочу нарисовать красивые часы на форме,
очень нужна такая формула.. Я смутно припоминаю, что там что-то с квадратами.. но не более того ;(
Ну или хоть компоненту какую, я таких компонент не искал и не знаю, что лучше, чем вы пользовались.
Про эллипс: он у меня не является правильным т.е это не круг, сижу вот уже вторые сутки над этой
формулой, пока ничего работающего в голову не пришло.


 
ProgRAMmer Dimonych ©   (2006-11-06 22:44) [1]

x^2     y^2
---- + ------ = 1
a^2     b^2


 
Чапаев ©   (2006-11-06 22:46) [2]

"С квадратами" тебе не поможет. a*x*x+b*y*y=c

А тебе нужно: x(t)=a*cos(t), y(t)=b*sin(t). Возможно, синус и косинус местами перепутал. ;-)


 
ProgRAMmer Dimonych ©   (2006-11-06 22:48) [3]

> Чапаев ©   (06.11.06 22:46) [2]
Всё нормально: косинус - абсцисса, синус - ордината.


 
ferr ©   (2006-11-06 22:52) [4]

> Всё нормально: косинус - абсцисса, синус - ордината.

правда?)


 
ferr ©   (2006-11-06 22:57) [5]

я к тому что если с мозгом подойти, то не важно кто где))


 
ProgRAMmer Dimonych ©   (2006-11-06 23:00) [6]

> ferr ©   (06.11.06 22:57) [5]
Да, не сообразил как-то


 
palva ©   (2006-11-06 23:42) [7]

Если рисовать на канвасе, то можно не вычислять координат. Есть специальная графическая функция.


 
Ice ©   (2006-11-07 00:32) [8]

Спасибо за формулы.
>Если рисовать на канвасе, то можно не вычислять координат. Есть специальная >графическая функция.
Это ты про сектор?


 
ProgRAMmer Dimonych ©   (2006-11-07 00:50) [9]

> Ice ©   (07.11.06 00:32) [8]
TCanvas.Ellipse, кажется. Не сектор будет, а именно эллипс. сектор - Pie, если не ошибаюсь.


 
Ice ©   (2006-11-07 00:58) [10]

2ProgRAMmer Dimonych
Почитай сабж - не как эллипс нарисовать, а куда конец линии стрелки напрвить,
кстати, если кому надо - вот рабочий код (ахтунг!, спасиба за формулы)
lineto(x+round(m*cos(i)),y-round(m*sin(i)));


 
iZEN ©   (2006-11-07 16:28) [11]


> Ice ©   (07.11.06 00:58) [10]
>
> 2ProgRAMmer Dimonych
> Почитай сабж - не как эллипс нарисовать, а куда конец линии
> стрелки напрвить,
> кстати, если кому надо - вот рабочий код (ахтунг!, спасиба
> за формулы)
> lineto(x+round(m*cos(i)),y-round(m*sin(i)));

Переменная i считается в радианах, но это относительно большая величина и приходится использовать действительный числа (с десятичными дробями).

Её ещё можно представить в градусах или в градах (целые числа от 0 до 90 или от 0 до 100 с шагом 1 градус или град, соответственно, для первого квадранта) и считать по таблицам — это якобы быстрее, но нужна память для таблицы с заранее вычисленными полями [значение_угла:значение_косинуса:значение_синуса]. Удобно использовать в цикле со счётчиком for-to.



Страницы: 1 вся ветка

Текущий архив: 2006.11.26;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.07 c
10-1126512081
НИИМ
2005-09-12 12:01
2006.11.26
Вывод в Excel без Excel


6-1152152056
verybadbug
2006-07-06 06:14
2006.11.26
webmodule


2-1161856009
Khabibulin
2006-10-26 13:46
2006.11.26
TCalendar


2-1163084546
Greenchel
2006-11-09 18:02
2006.11.26
Фильтрация символов в TEdit


2-1162847539
eugeniya2006
2006-11-07 00:12
2006.11.26
События, нажатие кнопки