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

Вниз

Построение поверхностей второго порядка в трехмерном пространстве   Найти похожие ветки 

 
BALU1111 ©   (2004-09-28 13:27) [0]

Господа!
Проблема следующая: необходимо построить поверхность в трехмерном пространстве, подставляя коэффициенты a11, a12, ..., a0 в общее уравнение второй степени относительно переменных x, y, z на компьютере, не используя средства типа Methematica и подобное, а используя лишь только средства Delphi. Если есть какие-то соображения или кто-то этим занимался, буду очень признателен.


 
MBo ©   (2004-09-28 14:20) [1]

Следует изучить в какой-либо книге раздел "аналитическая геометрия в пространстве" (например, справочник по математике Корнов)
По коэффициентам (точнее, составленным из них инвариантам) производится классификация - к какому типу квадрик относится поверхность - эллипсоид, параболоид, цилиндр и т.д.
Уже в зависимости от типа производится построение (как я понял, необходимо отображение на экране?)


 
BALU1111 ©   (2004-09-28 14:30) [2]

> (как я понял, необходимо отображение на экране?)
Именно.
Допустим, классификация по инвариантам известна, мне необходимо подставляя в уравнение общего вида коэффициенты (они всегда разные, в том то и проблема) вывести на мониторе полученную фигуру.
Каким образом производить построение, ведь надо преобразовывать трехмерную систему координат в двухмерную?
Какой компонент стоит лучше всего использовать?


 
MBo ©   (2004-09-28 14:50) [3]

>Какой компонент стоит лучше всего использовать?
Наверно, никакой. Разве что TeeChart Pro может отображать трехмерные графики, но в данном случае не знаю - удобно ли будет.

>Каким образом производить построение, ведь надо преобразовывать трехмерную систему координат в двухмерную?
Существуют различные виды проекций - ортогональная, перспективная и т.д., см, например, http://www.gamedev.ru/
кроме того, вероятно, придется позаботиться о построении полигональной сетки, об удалении невидимых линий.
Возможно, стоит воспользоваться средствами OpenGL - многое упростится.


 
MBo ©   (2004-09-28 15:47) [4]

кстати, еще один момент - стоит найти матрицу аффинного преобразования, приводящего квадрику к более простому виду - axis-aligned, т.е. чтобы главные оси были параллельны осям координат. Тогда после определения типа фигуры будет легче построить полигональную сетку в виде функции двух переменных, например, Z=F(x,y) (или +/-F(x,y) для двуполостных фигур), а перед отображением выолнить обратное преобразование.



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
1-1103014114
Delphi5.01
2004-12-14 11:48
2004.12.26
выезжающее окошко как это сделано в WinAmp-е


9-1093486007
Xerx
2004-08-26 06:06
2004.12.26
Формат моделей


1-1102669514
ASoft
2004-12-10 12:05
2004.12.26
Folder.


14-1102322607
Суслик
2004-12-06 11:43
2004.12.26
Delphi 2005


1-1103101701
Руслана
2004-12-15 12:08
2004.12.26
Скажите как изменить цвет строки в ListView?