| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > C# .net Создание Layout для чертежей, оформленных в модели

C# .net Создание Layout для чертежей, оформленных в модели

Ответ
Поиск в этой теме
Непрочитано 16.05.2012, 18:09 7 |
C# .net Создание Layout для чертежей, оформленных в модели
bargool
 
Санкт-Петербург
Регистрация: 16.08.2006
Сообщений: 508

Программа ищет новых хозяев.

Назначение программы:
Автоматическое создание листов по рамкам, указанным пользователем в модели (вручную, либо с помощью блоков). Автоматический выбор форматов бумаги и настройка листов.

Запуск / загрузка:
  • Выбираем dll из вложения к данному сообщению, либо самую последнюю версию из сообщения, указанного в конце "шапки"
  • Размещаем dll-ки в любом удобном месте, главное локально, а не в сети.
  • Командой _netload грузим выбранную dll в автокад
  • Автозагрузка рассматривается в #361 и #362

Принцип работы:
  • Программа формирует предварительный список настроек листа, с форматами бумаги
    Список формируется двумя способами
    1. Из DWG to PDF.pc3
      • Выбираются все пользовательские форматы
      • В конец списка добавляются форматы, начинающиеся на "ISO A.."
      • Область печати выставляется "Лист"
      • Единицы измерения - миллиметры
      • Масштаб 1:1
      • Стиль печати - acad.ctb. Позже буду брать из файла конфигурации
      • Имя настройки берётся из имени формата бумаги. Если встречаются символы из ряда "\<>/?"":;*|,=`" - убираются
    2. Из файла шаблона
      • Копируются пользовательские именованные настройки печати (для пространства листа, не для пространства модели), доступные из диалога "Page setup"
      • Повторяю. Пользовательские настройки. Не листы, а именно настройки
      • Ещё раз. В сами листы не заглядываем ВООБЩЕ - заглядываем в именованные настройки печати для пространства листа
      • Соответственно, имя настройки печати не должно начинаться с символа звёздочки "*"
  • - Запрашивает у пользователя "референтный размер".
    Используется для определения масштаба рамки. По-умолчанию это 185 мм. - длина основной надписи
  • - Запрашивает у пользователя противоположные углы рамок
    Слева-направо, сверху-вниз, или наоборот - не важно
    Привязка принудительно выставляется "конточка"
  • - На основе масштаба и списка форматов определяет наиболее подходящий
    При этом используется строго ориентация из "списка". Ориентацию с книжной на альбомную и обратно программа произвольно не меняет. Строго по "списку настроек"
  • - По выбранным форматам бумаги создаёт листы
    В чертёж добавляет подходящие именованные настройки из "списка", настроенные на нужный формат бумаги
    Присваивает созданным листам соответствующие именованные настройки
  • - Создаёт видовой экран, "смотрящий" на рамку, указанную пользователем

Процесс работы:
Указание рамок вручную:
  1. Для вызова программы введите в ком. строку bargLFM
  2. Либо задайте номер первого создаваемого листа, либо используйте опции ком. строки
  3. Укажите "референтный" размер
  4. Указывайте рамки, кликая по противоположным углам рамок.
    Опции ком. строки см. соответствующий раздел
  5. По окончании жмите escape или используйте опцию P
Рамки вставлены блоками:
  1. Для вызова программы введите в ком. строку bargLFBL
  2. Либо задайте номер первого создаваемого листа, либо используйте опции ком. строки
  3. Имя блока должно быть задано в конфигурации
  4. Формат будет определяться по габаритам конкретного вхождения блока. Включая атрибуты и дин. параметры (на данном этапе следите, что бы они не вылезали за пределы геометрии рамки)
    Опции ком. строки см. соответствующий раздел

Конфигурация:
  • Файл конфигурации. Имя файла - lfmsettings.xml. Хранится рядом программой
    Содержимое, не используемое диалогом конфигурации:
    • ReferenceDimension (По-умолчанию - 185). Референтный размер. Масштаб рамки будет определяться как отношение указанного пользователем размера к размеру в конфигурации. Если у вас референтный размер другой - можете изменить вручную
    • TemplatePath. Путь к шаблону для формирования списка настроек листов. Устанавливается программой при выборе опции templateSelect
  • Диалог конфигурации:
    • Префикс - Префикс имени создаваемого листа
    • Суффикс - Суффикс имени создаваемого листа
    • Точность определения форматов - Отвечает за точность определения форматов. Суть в том, что форматки иногда бывают примерно по госту. Таким образом, если указываемая форматка больше гостовского размера (уже после скалирования) на указанный размер - будет выбран соответствующий формат бумаги. Значение - целое число. По умолчанию = 10 мм
    • Удалять неинициализированые листы - Удалять ли листы, на которые ни разу не заходил пользователь
    • Оставаться в модели по окончании работы - Возвращать ли пользователя в модель по окончании работы программы

Опции ком. строки:
  • Undo - Отменить выбор последней рамки
  • Newscale - Задать новый масштаб рамки
  • Process - Выполнить создание листов
  • Configuration - Вызвать диалог конфигурации
  • useTemplate - Для создания листов использовать ранее выбранный шаблонный файл
  • templateSelect - Выбрать шаблонный файл. Переменная FILEDIA влияет на вид запроса (можно использовать в макросах)

Известные проблемы:
  • Если настройки листа подразумевают область печати Extents, и стоит галка Fit to paper - возможно неправильное отображение области бумаги в пространстве листа. На печать не влияет
  • Пока больше ничего не вспомнить


Короткое видео работы одной из последних версий программы
Increase Size Decrease Size LayoutsFromModel. ?’?µ????????, ???°?±???‚?°???‰?°?? ?? ?€?°?±?»?????°????
http://www.youtube.com/watch?v=TqaUcqZZCbA
Исходники на github. Репозиторий

Upd 20.12.2018: Спасибо Boxa, сборки для автокадов: 2017 и 2019
Upd 24.11.2022: Спасибо doctorraz, сборки для автокадов 2021 и 2022 и 2023

Миниатюры
Нажмите на изображение для увеличения
Название: scheisse.PNG
Просмотров: 3733
Размер:	28.7 Кб
ID:	80355  

Вложения
Тип файла: zip LayoutsFromModel.zip (196.8 Кб, 2900 просмотров)


Последний раз редактировалось bargool, 24.11.2022 в 11:45. Причина: добавил ссылки на свежие сборки
Просмотров: 313774
 
Непрочитано 20.04.2017, 23:42 Help!
#521
bulldozer


 
Регистрация: 13.02.2011
Сообщений: 14


Уважаемый bargool ваша программа очень полезна!
Могли бы вы записать видио каким образом создавать сборки под новые Autocadi.
Тогда я или кто-то еще могли бы продолжить ваше дело!
К сожалению сам я в программировании ничего не понимаю.
bulldozer вне форума  
 
Непрочитано 21.04.2017, 11:25
#522
freese

ingénieur
 
Регистрация: 21.07.2008
Сообщений: 762


bulldozer, на GIT у него выложен код, но нет сторонних бибилиотек который он использовал. Все ни как не может выложить все))
Цитата:
Сообщение от bargool Посмотреть сообщение
сли в репе на гитхабе чего-то не хватает для сборки (где-то было сообщение на эту тему) - выложу.
не хватает, выкладывай все
freese вне форума  
 
Непрочитано 21.04.2017, 13:55
#523
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


угу, как минимум не хватает:
\Bargool.Acad.Library\Bargool.Acad.Library\AcadSystemVariableSwitcher.cs
\Bargool.Acad.Library\Bargool.Acad.Library\View.cs
а, нет, нашел их...

Тестовая сборка во вложении, сам протестировать не могу, так что как она будет работать не знаю.
Вложения
Тип файла: zip LayoutsFromModel2017.zip (20.5 Кб, 289 просмотров)

Последний раз редактировалось Boxa, 21.04.2017 в 14:51.
Boxa вне форума  
 
Автор темы   Непрочитано 21.04.2017, 15:14
#524
bargool


 
Регистрация: 16.08.2006
Санкт-Петербург
Сообщений: 508
<phrase 1=


Boxa, спасибо, да. Я же помню, что я включил нужные классы в исходники..
__________________
Алексей
bargool вне форума  
 
Непрочитано 21.04.2017, 15:16
#525
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


Цитата:
Сообщение от bargool Посмотреть сообщение
Я же помню, что я включил нужные классы в исходники..
Нет, их в репозитории нет, я их дебагером из сборки забрал.
Boxa вне форума  
 
Автор темы   Непрочитано 21.04.2017, 15:18
#526
bargool


 
Регистрация: 16.08.2006
Санкт-Петербург
Сообщений: 508
<phrase 1=


Цитата:
Сообщение от Boxa Посмотреть сообщение
Нет, их в репозитории нет, я их дебагером из сборки забрал
Хмм.. Тогда выложу, как доберусь до кода, да найду
__________________
Алексей
bargool вне форума  
 
Непрочитано 09.08.2017, 12:19
#527
XtooZee


 
Регистрация: 16.12.2009
Сообщений: 28


При переводе стандартных форматов берется ISO и области печати немного смещена, при нестандартной печати все нормально, для 2017 CAD.
XtooZee вне форума  
 
Автор темы   Непрочитано 20.09.2017, 01:15
3 | #528
bargool


 
Регистрация: 16.08.2006
Санкт-Петербург
Сообщений: 508
<phrase 1=


И-ха! Добрался таки и выложил на гитхаб всё нужное и ненужное.
https://github.com/bargool/Bargool.Acad.Library - библиотечные методы, требуются как раз для lfm
До кучи выкладываю ещё и методы расширения мои, и подсмотренные на просторах интернетов https://github.com/bargool/Bargool.Acad.Extensions

Коммит-мессаджи да.. Когда писал их - не планировал выкладывать, а теперь и не чистил..
__________________
Алексей
bargool вне форума  
 
Непрочитано 13.10.2018, 20:41
#529
vitalyekb


 
Регистрация: 13.10.2018
Сообщений: 6


Добрый Вечер!

Делаю все как указанно в процессе работы, а результат всегда такой, что рамка смещена относительно листа. Что делаю не так?
Подскажите куда нажать)))

Спасибо большое.
Миниатюры
Нажмите на изображение для увеличения
Название: Скриншот 2018-10-12 10.26.17.png
Просмотров: 269
Размер:	165.7 Кб
ID:	207055  
vitalyekb вне форума  
 
Автор темы   Непрочитано 13.10.2018, 22:39
#530
bargool


 
Регистрация: 16.08.2006
Санкт-Петербург
Сообщений: 508
<phrase 1=


Цитата:
Сообщение от vitalyekb Посмотреть сообщение
результат всегда такой, что рамка смещена относительно листа
Вам необходимо у используемых листов в настройках pc3 выставить в ноль границы печати. Уже не помню, как оно точно называется. У вас на скриншоте видно, пунктирная линия.
__________________
Алексей
bargool вне форума  
 
Непрочитано 15.12.2018, 14:55
#531
dim5678


 
Регистрация: 29.07.2012
Сообщений: 98


[quote=bargool;1760058]Огромное Вас спасибо за программу. У меня та же проблема, что и выше постом, Автокад 2019 не понимает программу, максимум я пробовал 2017 загрузить, выдает ошибку. Подскажите планируете ли сделать и на 2019 автокад? Заранее спасибо.
dim5678 вне форума  
 
Автор темы   Непрочитано 15.12.2018, 20:16
1 | #532
bargool


 
Регистрация: 16.08.2006
Санкт-Петербург
Сообщений: 508
<phrase 1=


Цитата:
Сообщение от dim5678 Посмотреть сообщение
Подскажите планируете ли сделать и на 2019 автокад
Нет возможности собрать
__________________
Алексей
bargool вне форума  
 
Непрочитано 15.12.2018, 21:17
1 | #533
Oleg T


 
Регистрация: 27.12.2011
Сообщений: 1,458


Цитата:
Сообщение от dim5678 Посмотреть сообщение
Автокад 2019 не понимает программу, максимум я пробовал 2017 загрузить, выдает ошибку
Советую посмотреть:
http://forum.dwg.ru/showthread.php?t=124456&page=3
Сам пользуюсь. Lisp хорош тем, что не надо ничего переписывать при смене версий автокада.
Oleg T вне форума  
 
Непрочитано 16.12.2018, 08:28
#534
dim5678


 
Регистрация: 29.07.2012
Сообщений: 98


Цитата:
Сообщение от Oleg T Посмотреть сообщение
Советую посмотреть:
http://forum.dwg.ru/showthread.php?t=124456&page=3
Сам пользуюсь. Lisp хорош тем, что не надо ничего переписывать при смене версий автокада.

Спасибо.
dim5678 вне форума  
 
Непрочитано 17.12.2018, 16:37
2 | #535
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


Пересобрать не сложно... качаешь репозиторий и собираешь...
Тестовая сборка во вложении, сам протестировать не могу, так что как она будет работать не знаю.
Вложения
Тип файла: zip LayoutsFromModel2018_2019.zip (41.1 Кб, 506 просмотров)
Boxa вне форума  
 
Непрочитано 18.12.2018, 05:39
#536
dim5678


 
Регистрация: 29.07.2012
Сообщений: 98


Цитата:
Сообщение от Boxa Посмотреть сообщение
Пересобрать не сложно... качаешь репозиторий и собираешь...
Тестовая сборка во вложении, сам протестировать не могу, так что как она будет работать не знаю.
Спасибо.
dim5678 вне форума  
 
Автор темы   Непрочитано 20.12.2018, 17:28
#537
bargool


 
Регистрация: 16.08.2006
Санкт-Петербург
Сообщений: 508
<phrase 1=


Цитата:
Сообщение от Boxa Посмотреть сообщение
Пересобрать не сложно... качаешь репозиторий и собираешь...
Тестовая сборка во вложении, сам протестировать не могу, так что как она будет работать не знаю.
Спасибо, что собрал, добавлю-ка в заглавное сообщение ссылки на сборки..

По сравнению с #520 у меня уже и винды в пределах досягаемости не осталось
__________________
Алексей
bargool вне форума  
 
Непрочитано 03.10.2019, 09:51
#538
bm13


 
Регистрация: 23.01.2018
Сообщений: 25


Прога работает спасибо большое автору! Это уже третяя по счету испробованая, и первая работающая нормально.

Последний раз редактировалось bm13, 03.10.2019 в 10:07.
bm13 вне форума  
 
Непрочитано 11.06.2021, 10:56
#539
TABAK


 
Регистрация: 11.08.2011
Сообщений: 18


Программа начала выдавать ошибку...

Чтобы это значило и как победить?
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 142
Размер:	47.0 Кб
ID:	238051  
TABAK вне форума  
 
Непрочитано 01.01.2022, 16:49
#540
Сет


 
Регистрация: 19.11.2014
Сообщений: 2,435


Использую сборку от Воха. В модели я черчу в масштабе 1:100. Если формировать листы поштучно, обводя рамкой (bargLFM) и выставить масштаб 18500 - листы формируются нормально. Но если формировать листы по блоку (bargLFBL) - в диалоге нет возможности задать масштаб и получается ерунда, видовые экраны в 100 раз больше чем нужно. Как правильно настроить масштаб для формирования листов через блоки?
Сет вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > C# .net Создание Layout для чертежей, оформленных в модели

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вывести в layout только часть модели? temoha2006 AutoCAD 12 18.08.2008 17:19
Помогите завершить создание 3М модели!? Jerald AutoCAD 8 27.04.2008 23:09
Автоматической создание Layout serg01 AutoCAD 3 16.08.2007 14:09
как начертить в масштабе не деля на калькуляторе? djon AutoCAD 168 29.05.2007 10:13
Подготовка рабочих чертежей по 3D модели constructorl AutoCAD 21 07.02.2007 19:50