Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Media";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.04 c
1-1102841605
Russko
2004-12-12 11:53
2004.12.26
Проверка на существование формы


1-1102694816
Gear
2004-12-10 19:06
2004.12.26
Как перетащить форму мышью кликая на любой её области?


1-1102528398
Leaner
2004-12-08 20:53
2004.12.26
Присоединение к проекту файла: *tlb


14-1102083278
Igor_thief
2004-12-03 17:14
2004.12.26
Delphi 2005 и RAVE


8-1096376782
_alex_
2004-09-28 17:06
2004.12.26
компонент TAnimate





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский