САПР на Lazarus

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

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

Re: САПР на Lazarus

Сообщение zub » 05.02.2022 09:03:33

Да. но тут есть 2 сложных момента:
1 - подрезка: границы вивпорта не прямоугольные и в общем случае даже не выпуклые. ужас, там даже дуги могут быть((
2 - вивпортов может быть много, мои примитивы пока хранят инфу для отображения только в одном вивпорте (хотя данные примитива отделены от данных для рендера, но пока 1 на 1)

Вообще, проблемных мест очень много. от сложных в движке, до простых в интерфейсе((
zub
долгожитель
 
Сообщения: 2850
Зарегистрирован: 14.11.2005 23:51:26

Re: САПР на Lazarus

Сообщение Sharfik » 05.02.2022 16:52:01

Я тут ноутбук и ПК стационарный мучал на вопрос можно ли на них работать в AutoCAD с интегрированной видеокартой. Есть условно нагруженные чертежи, много листов и по 2-3 видовых экрана. При переключении между листами в первый раз затык секунды 3-4, а потом переключаются быстро. Похоже эталонный CAD все же и сам не обрабатывает такие вещи на лету, а что то кеширует в оперативку на время работы.

ПС: В принципе, можно и не делать, если ты видишь свою программу с несколько другим уклоном. Но тогда надо сделать какое то решение, на основе блоков, чтобы печатать было легко. Выделять каждый лист в модели и отправлять на печать это каторга. Чем программа проще у правлении, тем больше людей ее любят.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 666
Зарегистрирован: 20.07.2013 01:04:30

Re: САПР на Lazarus

Сообщение zub » 05.02.2022 18:51:10

Печать по блокам листов в планах. думаю она получится не хуже печати листов - сортировка по номерам, автподбор формата... всё красиво, но пока в голове))
zub
долгожитель
 
Сообщения: 2850
Зарегистрирован: 14.11.2005 23:51:26

Re: САПР на Lazarus

Сообщение Sharfik » 05.02.2022 20:20:07

zub писал(а):Печать по блокам листов в планах. думаю она получится не хуже печати листов - сортировка по номерам, автподбор формата... всё красиво, но пока в голове))

Замучишься. Может так:
1. При добавлении/удалении блока с маркером "я лист" в отдельной таблице добавляется/удаляется соответствующая запись.
2. Соответственно зная блок, знаем область печати.
3. Заходим в "Редактор печати листов" и настраиваем параметры печати листа. Некоторые люди вместо того чтобы масштабировать чертеж, масштабируют сами рамки листов. Поэтому функция вписать, преобразования цветов, должны настраиваться. Подбора листа уже ручная работа, которая настраивается один раз человеком.

**В случае моей компании у нас плотер с двумя руломнами 594, 841. Длина любая. В стандарте компании прописали, что листы либо типовые А4,А3,А2,А1,А0, либо листы у которых одна сторона под ширину рулон, а вторая кратная 100мм. Автоматизировать такое не выйдет. Плотер каждый раз настраивать под разные размеры листов противная работа, так же как и стоять обрезать листы на гильятине. Проще было забить типовые размеры и плотер сам режет.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 666
Зарегистрирован: 20.07.2013 01:04:30

Re: САПР на Lazarus

Сообщение veb86 » 05.02.2022 22:04:54

Sharfik писал(а):
zub писал(а):Печать по блокам листов в планах. думаю она получится не хуже печати листов - сортировка по номерам, автподбор формата... всё красиво, но пока в голове))

Замучишься. Может так:
1. При добавлении/удалении блока с маркером "я лист" в отдельной таблице добавляется/удаляется соответствующая запись.
2. Соответственно зная блок, знаем область печати.
3. Заходим в "Редактор печати листов" и настраиваем параметры печати листа. Некоторые люди вместо того чтобы масштабировать чертеж, масштабируют сами рамки листов. Поэтому функция вписать, преобразования цветов, должны настраиваться. Подбора листа уже ручная работа, которая настраивается один раз человеком.

**В случае моей компании у нас плотер с двумя руломнами 594, 841. Длина любая. В стандарте компании прописали, что листы либо типовые А4,А3,А2,А1,А0, либо листы у которых одна сторона под ширину рулон, а вторая кратная 100мм. Автоматизировать такое не выйдет. Плотер каждый раз настраивать под разные размеры листов противная работа, так же как и стоять обрезать листы на гильятине. Проще было забить типовые размеры и плотер сам режет.


Все уже готово))) Я проблему печати из модели листа решал 3и раза в автокаде. И сейчас нашел идеальный вариант. Как вы и написали, рамка в виде блока, оказалось все просто до безобразия. Ловит любые масштабы, потому что ориентируется на масштаб в настройках блока. И сканирует штампы, которые тоже блоки и из них получаем номер листа и шифр. Сейчас реализовано для автокада, в планах переписать на Zcad, но конечно более аккуратно, со списком, с выбором красивым.

Подробно о моем подходе печати листов из модели, и сам код программы для автокада смотрите на гитхаб https://github.com/veb86/BTOOLSPLOT
PS. Самый противный баг в программе "autocad не отпускает распечатанные листы" я решил только вчера, причем чисто случайно :) Раз такой праздник думаю, что 2й баг тоже решу как нибудь, пока информацию поглядываю)))
veb86
новенький
 
Сообщения: 60
Зарегистрирован: 16.03.2016 12:58:35

Re: САПР на Lazarus

Сообщение Sharfik » 06.02.2022 05:01:00

veb86 не хочу обидеть, но в AutoCAD из коробки все сделано так, что там ничего лишнего не надо. Все печатается быстро и легко, когда человек не выпендривается, а оформляет чертежи в листах. А блок рамки листа должен быть максимально простым, чтобы им могли пользоваться все. Вашим уже все пользователи LT не могу, добавить поля - еще меньше. Динамический блок с атрибутами минимально достаточная вещь.
*Игрался я с lisp, VBA, они настолько проблемные и узко применимые, что бросил и не жалею. Прекрасно сейчас себя чувствую без всего этого, просто пользуясь чистыми функциями ACAD.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 666
Зарегистрирован: 20.07.2013 01:04:30

Re: САПР на Lazarus

Сообщение veb86 » 06.02.2022 11:10:15

Sharfik писал(а):veb86 не хочу обидеть, но в AutoCAD из коробки все сделано так, что там ничего лишнего не надо. Все печатается быстро и легко, когда человек не выпендривается, а оформляет чертежи в листах. А блок рамки листа должен быть максимально простым, чтобы им могли пользоваться все. Вашим уже все пользователи LT не могу, добавить поля - еще меньше. Динамический блок с атрибутами минимально достаточная вещь.
*Игрался я с lisp, VBA, они настолько проблемные и узко применимые, что бросил и не жалею. Прекрасно сейчас себя чувствую без всего этого, просто пользуясь чистыми функциями ACAD.


Я пробовал работать по листам, для меня это ужасно. Вот у меня 50 листов(наверное я не знаю какую то фишку как люди работают), и как в них работать, это надо в голове помнить на каком номере листа что расположено, для меня это просто ужасно. на листах располагаю только то что надо резать. Один раз меня просили доделать за другим чертежи, они были по резаные по листам их было штук 40, я из мучился. Как я понимаю остальные работают в модели, а потом лиспом помещают все листы по листам, я не понял фишку, зачем мне разбивать по листам, если я могу сразу отправить на печать. Штатные механизмы в Автокад не подошли для мне, хотя я вроде бы не выпендриваюсь. Модуль делал в первую очередь не для всех, а для себя и просто выложил в открытый доступ, что бы другие если надо чем то воспользовались. Динамический блок с атрибутами классная штука, я с начало думал так сделать, а потом еще подумал. Часть работы я черчу в ZCAD, ZCAD не работает с динблоками, тогда в чем прикол делать инструмент так как надо другим, а не тебе. Доработать механизм печати, что бы он понимал дин блоки не сложно, обязательно кто то разберется и сделает))))
А тут обычные блоки, которые будут работать во всех кадах, и логика помещенная в имя блока, что может быть проще :)
veb86
новенький
 
Сообщения: 60
Зарегистрирован: 16.03.2016 12:58:35

Re: САПР на Lazarus

Сообщение zub » 08.06.2022 01:19:23

Появилась начальная поддержка штриховок
https://imgur.com/a/OXpmGua
zub
долгожитель
 
Сообщения: 2850
Зарегистрирован: 14.11.2005 23:51:26

Re: САПР на Lazarus

Сообщение Sharfik » 09.06.2022 02:04:49

veb86 писал(а):Я пробовал работать по листам, для меня это ужасно.

Я пробовал, и я разобрался - не одно и тоже. Чтобы работать с листами надо понимать программу, а не жать на все подряд и надеяться что будет работать. Из варианта делать один и тот же план два раза или делать его один раз, и просто настроить разный масштаб на листе я выбиру второе. Терпеть не могу в пустую тратить время.

zub писал(а):Появилась начальная поддержка штриховок
https://imgur.com/a/OXpmGua

А раньше не было?)) Смотрится классно, поздравляю)
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 666
Зарегистрирован: 20.07.2013 01:04:30

Re: САПР на Lazarus

Сообщение zub » 09.06.2022 02:15:28

Не было. несколько лет откладывал, думал сложно)) За пару вечеров родил))
Таже песня с дуговыми сегментами полилиний(( надо таки взяться

Также подумываю прикрутить LibreDWG. Никто не пользовался?
zub
долгожитель
 
Сообщения: 2850
Зарегистрирован: 14.11.2005 23:51:26

Re: САПР на Lazarus

Сообщение Sharfik » 11.06.2022 03:59:48

zub писал(а):Также подумываю прикрутить LibreDWG. Никто не пользовался?

Погуглил сейчас и понял, что ничего не понял что там с поддержкой и развитием. Вроде какие то проблемы были с правами. Но попутно наткнулся на конвертер ODA.
А почему бы просто не сделать в интерфейсе кнопку "Открыть/Сохранить DWG..." и по нажатию выдавать предложение пользователю установить TeighaFileConverter https://www.opendesign.com/guestfiles/TeighaFileConverter ? Поддерживает он больше чем сам напрограммируешь, а если он установлен, то можно это проверить и автоматом запускать его по нажатию кнопки.

Код: Выделить всё
"C:\Program Files\ODA\ODAFileConverter 23.4.0\ODAFileConverter.exe" "E:\Test\1" "E:\Test\2" "ACAD2010" "DWG" "0" "0" "*.dxf"
"C:\Program Files\ODA\ODAFileConverter 23.4.0\ODAFileConverter.exe" "E:\Test\1" "E:\Test\2" "ACAD2000" "DXF" "0" "0" "*.dwg"
**Если неправильно ввести командную строку вылетит справка по командам.
Последний раз редактировалось Sharfik 11.06.2022 04:27:05, всего редактировалось 1 раз.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 666
Зарегистрирован: 20.07.2013 01:04:30

Re: САПР на Lazarus

Сообщение zub » 11.06.2022 04:26:58

поддержка там не особо
At the moment our decoder (i.e. reader) is done, just some very advanced R2010+ and pre-R13 entities fail to read and are skipped over. The writer is good enough for R2000


конвертит сторонними тузлами на уровне файлов не хотелось бы. имхо лучшепусть будет сторонняя, но внутри. пока пытаюсь "поиграться" https://github.com/zamtmn/fpdwg
zub
долгожитель
 
Сообщения: 2850
Зарегистрирован: 14.11.2005 23:51:26

Re: САПР на Lazarus

Сообщение zub » 30.09.2022 23:44:43

Релиз 0.9.9.0
Добавлено:
-штриховки
-новый userguide
-html помощь
-зачатки dwg
zub
долгожитель
 
Сообщения: 2850
Зарегистрирован: 14.11.2005 23:51:26

Пред.

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

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

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

Рейтинг@Mail.ru