Простейший 3DEngine

  • Автор темы alexey
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A

alexey

При разработке прикладной программы под AutoCAD(и не только) столкнулся со следующей проблемой - необходимо в программе организовать обработку трехмерных обьектов и после этого вывести чертежи, содержашие проекции обьектов на заданные плоскости (в том числе и разрезы), при этом не хотелось бы прибегать к услугам третьих программ (SolidWorks и прочие), в принципе данная проблема разрешима но информации по ее решению очень мало, в основном все что касается 3D - это в первую очередь игровые системы, основанные на OpenGL и DirectX, но эти системы выдают результат в виде картинки(а про точность я молчу), а мне нужна информация в координатном, векторном виде. На сегодняшний день мне удалось успешно решить проблему получения проекции на заданную плоскость - задача чисто математическая, но возникла одна из самых сложных проблем, это невидимые линии, плоскости, которые закрываются другими плоскостями, особенно эта проблема усложняется для тел вращения. Кроме того остается проблема двух наиболее часто используемых операций - вычитание одного трехмерногог тале из другого(пересечение) и их суммирование, но эта проблема в общем случае решима, и не является особо сложной, во всяком случае когда речь не идет опять таки о телах вращения, да и кроме того большинство из форм, с которыми придется иметь дело моей программе мне известны, они достаточно просты (паралелепипеды и образующие от них).
Одним словвом в качестве входных данных - координаты вершин многоугольников, из которых состоит трехмерное тело, на выходе координаты двухмерных многоугольников и линий, которыми описывается двухмерная проекция. Результат - с учетом невидимости невидимых поверхностей(извините за тавтологию :blink: )
В настоящий момент работа движется, но достаточно медленно, и чем дальше она продвигается тем сильнее меня мучает чувство что я изобретаю велосипед (ведь работает как-то SolidWorks :) (впрочем немного легче становится от мысли что объем работы у меня на порядок меньше - никаких источников освещения и прочей прелести), но тем не менее.....
Должна же быть теория всего этого дела, может кто учавствовал в подобных проектах или знает где можно достать полезную практическую или теоретическую информацию на эту тему.
 
R

RAIN

Привет. Я не знаю, поможет тебе это или нет? Но зайжи на сайт и скачай программку Delphi World 6. Там много чего интересного найдешь, может даже и то, что ты ищешь. :

Я сам ею пользуюсь. В этой проге и обновления есть.
 
A

alexey

Спасибо! :D
сейчас смотрю....
много информации....
полезной и не очень.....
если найду то напишу....
может еще кому понадобится :D
 
S

Sorrow

Может, кто-нибудь подскажет, каким образом можно эмулировать на TP или BP v 7.1 эмуляцию SVGA?
 
A

admin

Sorrow
а что такое эмуляция SVGA? SVGA - это режим такой и всё. Его не надо эмулировать - его надо установить. Если мне не изменяет помять то в стандартной поставке там тока VGA максимум есть. Выход одни - искать библиотеку для паскаля, которая SVGA держит. Но почему именно Pascal?
 
R

RAIN

Если мне не изменяет память, то есть такая cgi'шка под названием svga256.cgi Ищи в Инете мож найдешь...
 
R

RAIN

Серёга
Ну перепутал немного, не cgi, а bgi ;)
 
A

alexey

Точно - есть такая bgi - идет в комплекте с Borland Pascal 7.0 и выше, но ее можно без проблем прикрутить к обычному Turbo Pascal-ю, пробовал когда-то. :rolleyes:
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!