САПР на Lazarus

Планы, идеология, архитектура и т.п.

Модератор: Модераторы

САПР на Lazarus

Сообщение zub » 08.06.2010 01:32:12

есть проект:
[s]http://shamangrad.net/project.php?act=view&prj=zcad[/s]
http://sourceforge.net/projects/zcad

написан на FPC+самопальная обертка winapi:
+отображение модели - OpenGL
+зачатки привязок-трассировок
+формат файла - dxf (несколько базовых примитивов)
-плохо продуманая архитектура
-много говнокода

Подумываю переделать на LCL и частично сделать opensource (базовый функционал чертилки).
Исследую интерес сообщества - найдутся ли желающие помочь развивать проект?
Последний раз редактировалось zub 05.09.2017 10:55:58, всего редактировалось 1 раз.
zub
долгожитель
 
Сообщения: 2192
Зарегистрирован: 14.11.2005 23:51:26

Re: САПР на Lazarus

Сообщение Light13 » 08.06.2010 06:34:41

+есть интерес
+вроде должен знать программирование :)
-не работал с OpenGL
-не знаком с предметной областью
-наличие свободного времени
Аватара пользователя
Light13
постоялец
 
Сообщения: 127
Зарегистрирован: 17.07.2009 07:50:10
Откуда: Челябинск

Re: САПР на Lazarus

Сообщение Timid » 08.06.2010 08:46:28

zub писал(а):есть проект:
http://shamangrad.net/project.php?act=view&prj=zcad

написан на FPC+самопальная обертка winapi:
+отображение модели - OpenGL
+зачатки привязок-трассировок
+формат файла - dxf (несколько базовых примитивов)
-плохо продуманая архитектура
-много говнокода

Подумываю переделать на LCL и частично сделать opensource (базовый функционал чертилки).
Исследую интерес сообщества - найдутся ли желающие помочь развивать проект?


Нельзя "подумать" над "частично оперсорс". Если ты хочешь помощи сообщества - тогда опенсорс на всю важную функциональность. Кому нужна базовая функциональность чертилки?
Люди будут развивать только то, что нужно им.
Мне вот интересен функционал (UML - IDEF - блоксхема) редактора. Чтобы материалы были сразу готовы к включению в word/powerpoint/компас.
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Re: САПР на Lazarus

Сообщение zub » 08.06.2010 09:30:27

Light13
ок.

Timid
>>тогда опенсорс на всю важную функциональность
так и есть. вся важная функциональность - опенсорс, ее кстати тоже развивать-непереразвивать.
не опенсорс - мои конкретные интересы, типа Ваших UML.

>>Мне вот интересен функционал (UML - IDEF - блоксхема) редактора
думаю не подойдет - 3D

>>Кому нужна базовая функциональность чертилки?
вот я и интересуюсь, нужна комунибудь или нет))
под базовой функциональностью понимаю 3Д редактор DXF2000 файлов с поддержкой следующих примитивов: line, polyline, 3dpolyline, circle, arc, text, mtext, blockinsert, point, возможность не сложного расширения этого набора. интерфейс с закосом под автокад.
zub
долгожитель
 
Сообщения: 2192
Зарегистрирован: 14.11.2005 23:51:26

Re: САПР на Lazarus

Сообщение Alek_Aaz » 16.06.2010 07:38:18

Думаю базовый функционал никого не заинтересует. Ну разве что в образовательных целях. Легкая и бесплатная чертилка нужна. Но зачем 3D? Зачем там OpenGL?

Лично я посматриваю в сторону "взрослой" открытой CAD, CAE системы аля CATY. Делать используя OpenCascade. Если повезет с финансированием, то башлять за разработку фрилансерам :) Но это планы, двух-трех лет, не сейчас.

2Timid
StarUML - открытый UML редактор, писался на Delphi, сейчас скорее мертв чем жив. Использует несколько платных компонентов. Если его форкнуть на Lazarus и сделать кроссплатворменным было бы весьма недурственно. Даже готов помочь в этом чем смогу.

Добавлено спустя 39 минут 15 секунд:
2Zub
Ну вполне прилично сделано, правда у меня почему-то больше напоминало пошаговую стратегию... что там так жрет ресурсы?
Сделать базовый рисовальный функционал, а все кабельные дополнения в виде плагина и вообще кошерная програмулина получится может.
Да и кстати, если под GPL то исходники все же надо выкладывать, а то некоторые забывают это делать :)
Alek_Aaz
новенький
 
Сообщения: 27
Зарегистрирован: 26.11.2007 04:13:06

Re: САПР на Lazarus

Сообщение Timid » 16.06.2010 10:26:08

Alek_Aaz писал(а):Думаю базовый функционал никого не заинтересует. Ну разве что в образовательных целях. Легкая и бесплатная чертилка нужна.
2Timid
StarUML - открытый UML редактор, писался на Delphi, сейчас скорее мертв чем жив. Использует несколько платных компонентов. Если его форкнуть на Lazarus и сделать кроссплатворменным было бы весьма недурственно. Даже готов помочь в этом чем смогу.


Интересная мысль. Надо подумать.
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Re: САПР на Lazarus

Сообщение zub » 16.06.2010 11:00:03

Alek_Aaz
Чтото никому не нравится выраженье "базовый функционал")) - в программе всего несколько не "базовых" команд и 2 "небазовых" примитива (кабель и эл.цепь(трасса)). т.е. открыто будет практически всё - таже программа без 2х кнопок сбоку и одного пункта меню.
>>Но зачем 3D?
DXF (общепринятый "открытый" стандарт в "легких и средних" CAD программах) подразумевает 3D, если его умышленно резать - получится не полная поддерка. по большому счету 3д-2д разницы не много, уж лучше сразу 3D, всетаки САПР))

>>Зачем там OpenGL?
По началу OGL использовался плотно. сейчас "главная" opengl`ная функция - выбор объектов мышью реализована "математически", opengl только как рисовалка. можно доработать реализацию примитивов и сделать мультирендер. тут моя большая ошибка - рендер завязан на реализации примитивов, нужно его выносить

Что у вас за система? Тормоза скорее всего изза того что чтото не в порядке с поддержкой OpenGL (например дрова от микрософта под виндой или ATI карта под linux+wine). Вообще ZCAD работает довольно шустро - с автокадом конечно не сравнить, но быстрее многих аналогичных программ.

>>Сделать базовый рисовальный функционал, а все кабельные дополнения в виде плагина и вообще кошерная програмулина получится может.
Примерно так я себе и представляю. но плагин в "чистом" виде наврятли получится.

>>Да и кстати, если под GPL то исходники все же надо выкладывать, а то некоторые забывают это делать
По лицензиям я не знаток... GPL заставит открыть исходники вышеописаного плагина?

Пока неспешно переношу ZCAD на LCL
zub
долгожитель
 
Сообщения: 2192
Зарегистрирован: 14.11.2005 23:51:26

Re: САПР на Lazarus

Сообщение qivi » 16.06.2010 14:50:52

Я поддерживаю идею создания хорошей "чертилки" - CAD приложения, меня собственно больше всего интересует то что здесь было названо базовым функционалом с управлением аналогичным автогаду под ОС Linux (GTK). Если чем смогу быть полезен помогу, чуток попозже, ну это мы уже с zub'ом обговаривали.
Аватара пользователя
qivi
энтузиаст
 
Сообщения: 703
Зарегистрирован: 19.01.2009 13:45:54
Откуда: Россия

Re: САПР на Lazarus

Сообщение Odyssey » 16.06.2010 16:18:22

zub писал(а):По лицензиям я не знаток... GPL заставит открыть исходники вышеописаного плагина?

Если не делать никаких исключений или двойного лицензирования -- то да, заставит. Правда не сразу, а после первого патча со стороны. Плюс если сборка с плагинами распространяется только внутри одной компании, то можно не открывать изменения.

Возможно для этого проекта подойдёт та же лицензия что и у RTL/FCL/LCL -- Modified LGPL (with linking exception), т.е. изменения в базовом функционале должны открывать все, а плагины могут писаться закрытыми и линковаться в закрытые бинарные сборки.

P.S. я не юрист, и всё вышесказанное -- имхо, основанное на тексте лицензий.
Odyssey
энтузиаст
 
Сообщения: 581
Зарегистрирован: 29.11.2007 17:32:24

Re: САПР на Lazarus

Сообщение А.Н. » 19.06.2010 11:38:10

3D, думаю, лишним не будет. К тому же, с использованием OpenGL.

Если не делать никаких исключений или двойного лицензирования -- то да, заставит.

Я тоже плохо разбираюсь. А LGPL? Или, вообще, всё - BSD?
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: САПР на Lazarus

Сообщение Odyssey » 19.06.2010 16:39:00

И LGPL заставит. При статической линковке она становится аналогом GPL. BSD не заставит.
Odyssey
энтузиаст
 
Сообщения: 581
Зарегистрирован: 29.11.2007 17:32:24

Re: САПР на Lazarus

Сообщение qivi » 19.06.2010 17:17:20

Odyssey писал(а):BSD не заставит.

Но стоит отметить что позволит закрывать код с изменением пары строк.
Аватара пользователя
qivi
энтузиаст
 
Сообщения: 703
Зарегистрирован: 19.01.2009 13:45:54
Откуда: Россия

Re: САПР на Lazarus

Сообщение А.Н. » 20.06.2010 13:31:33

И LGPL заставит. При статической линковке она становится аналогом GPL. BSD не заставит.

Ну ведь возможно сделать плагинный движок. Или взять готовый...

Но стоит отметить что позволит закрывать код с изменением пары строк.

Не факт, что это минус. Зато свободная лицензия. Хотя, сложно говорить, учитывая, что даже код Linux закрывать пытались... :? Есть и плюсы и минусы. Плюсов, наверное, больше.
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: САПР на Lazarus

Сообщение Timid » 21.06.2010 10:20:51

Вопрос с плагинами можно решить через внедрение какого-нибудь скриптового движка вроде Lua или PascalScript. Модули при этом можно сделать не бинарными, а подключаемыми.
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Re: САПР на Lazarus

Сообщение zub » 21.06.2010 11:46:03

Вопрос с плагинами состоит из 2х частей:
1 - плагины для обработки и создания графических примитивов существующих в основной программе. тут всё просто и легко вписывается в обычное понятие плагинов с использованием экспортированных основной программой функций. это у меня было реализовано, но вырезано изза попыток велосипедизировать sharemem.
2 - плагины создающие свои графические примитивы (наследуемые от созданых в программе). тут либо статическая линковка, либо хаки VMT.

>>Вопрос с плагинами можно решить через внедрение какого-нибудь скриптового движка вроде Lua или PascalScript
Скриптовый движек нужен, но проблемы с плагинами он не решит. я пытался писать для zcad свой скриптовый движек на pascal синтаксисе - мне не по силам((, получились только самые элементарные вещи.
zub
долгожитель
 
Сообщения: 2192
Зарегистрирован: 14.11.2005 23:51:26

След.

Вернуться в Разработки на нашем сайте

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Рейтинг@Mail.ru