Главная страница
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.052 c
3-1101473148
msdn11
2004-11-26 15:45
2004.12.26
Проблемы кодировки при вставке в базу


1-1102600798
гость
2004-12-09 16:59
2004.12.26
Как вытащить иконку из окна если есть его хендл?


14-1102016407
av3nger
2004-12-02 22:40
2004.12.26
Статьи


1-1103097024
baleful
2004-12-15 10:50
2004.12.26
Как организовать обмен полями записи, через типизированный файл


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