Что за скрипт дижок используется?
Скриптов как таковых нет. Есть некоторый самописный зачаток скриптового движка. на данный момент он позволяет только описать типы данных и присвоить им начальные значения. Используется восновном для инспектора объектов.
ак я понял - все на скриптах. Даже оболочка.. при запуске попросил pas файлы..
Нет, не всё. Но при запуске много что парсится, это да
Базовый объект GDBaseObject?
Да. Изначально за основу всего был взят object, не class.
Но дело идет к тому что рано или поздно dxf примитивы сильно упростятся (будут обязаны предоставлять всего несколько методов в отличии от сейчас) и из чертежа уйдут все древовидные структуры. Все "сложности" спрячутся в движек и будут работать на уровне геометрических и графических примитивов. Тогда dxf примитьивы можно будет легко переобуть в классы. Очень медленно но идет))
Есть ли группировки? Редактор блоков не оно
Групп как в автокаде нет. блоки есть. Но группы и блоки это разные сущности в автокаде.
Точек нет?
Точка есть, нет команды для рисования точек, если точка будет прочитана из dxf файла - она поддерживается
Бобавить команду рисующую точку - проще пареной репы)) аналгичная рисующая линию выглядит примерно так:
http://svn.shamangrad.net/zcad/trunk/ca ... xample.pasфункция команды - строка 563, регистрация команды в интерфейсе - строка 893
Сложно разобратся.. Я так думаю правильнее:
1)Математика:(матрицы,базовый функционал(нахождения точки,пересечения линии, внутри многоугольника, принадлежность к линии, плоскости.. и т.п.)
Юнит геометрических функций используемых зкадом -
http://svn.shamangrad.net/zcad/trunk/ca ... ometry.pasНазвания неочень, но ничего сложного
2) объектная модель (Базовая часть(матрица: перемещения, увеличения..),-> Точки, Линии, полигоны..
dxf примитивы
http://svn.shamangrad.net/zcad/trunk/ca ... /entities/ - верхний уровень
примитивы графической системы
http://svn.shamangrad.net/zcad/trunk/ca ... ngine/zgl/ - нижний уровень, представление dxf примитива для графической системы - то что рисуется на экране
геометрические примитивы -
http://svn.shamangrad.net/zcad/trunk/ca ... e/geomlib/геометрических еще нет, они в планах и на них должны переехать все операции типа поиска пересечений, хиттеста, привязок и т.п.
преобразование примитива - вызов его метода TransformBy с матрицей преобразования
3)Система:(Opengl/DX/GUI/..)
http://svn.shamangrad.net/zcad/trunk/ca ... l/drawers/Opengl/GDI/Canvas
DX мне интересен небыл, но если есть нужда и желание...
То никто не мешает написать всего 2 модуля аналогичные таковым для OpenGL
http://svn.shamangrad.net/zcad/trunk/ca ... werogl.pas - "рисователь"
http://svn.shamangrad.net/zcad/trunk/ca ... reaogl.pas - область отображения
4) объектная модель с учетом граф.системы (glBegin(GL_POINT)..)
насколько я понял имеется ввиду вотэто
http://svn.shamangrad.net/zcad/trunk/ca ... stract.pasи его наследники для Opengl/GDI/Canvas
Скриптовая модель.
Скриптов пока нет, но модель похожа на правду