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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Печать из модели по выбору объекта

Печать из модели по выбору объекта

Ответ
Поиск в этой теме
Непрочитано 21.10.2009, 12:41
Печать из модели по выбору объекта
zenon
 
Остекляем!!! Алюминим!!!
 
Москва
Регистрация: 21.02.2005
Сообщений: 3,825

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

ps см. в приложении что и как.

исходник.dwg

__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
Просмотров: 73538
 
Непрочитано 22.03.2017, 14:51
#181
valerik88


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


А я не могу понять как получить текущий принтер?
Ну или вообще как не задавать его, что бы отправляло на печать в тот принтер, который для данного чертежа установлен в окне печати?

В идеале бы научиться получать все те параметры, которые в окне печати установлены в данном чертеже и вставлять их в программе в команду _plot
valerik88 вне форума  
 
Непрочитано 22.03.2017, 15:30
#182
ытя


 
Регистрация: 23.09.2005
СПб
Сообщений: 424


Цитата:
Сообщение от valerik88 Посмотреть сообщение
А я не могу понять как получить текущий принтер?
Список доступных .pc3
(vl-directory-files (strcat(getvar "ROAMABLEROOTPREFIX")"Plotters\\")"*.pc3")
ытя вне форума  
 
Непрочитано 22.03.2017, 18:45
1 | #183
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Цитата:
Сообщение от valerik88 Посмотреть сообщение
А я не могу понять как получить текущий принтер?
Ну или вообще как не задавать его, что бы отправляло на печать в тот принтер, который для данного чертежа установлен в окне печати?

В идеале бы научиться получать все те параметры, которые в окне печати установлены в данном чертеже и вставлять их в программе в команду _plot
Тут же в теме ранее есть код, в котором это уже сделано: http://forum.dwg.ru/showpost.php?p=480876&postcount=120
Можно изменить его под свои нужды или просто использовать как шпаргалку.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Непрочитано 23.03.2017, 07:46
#184
valerik88


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


Цитата:
Сообщение от Do$ Посмотреть сообщение
Тут же в теме ранее есть код, в котором это уже сделано: http://forum.dwg.ru/showpost.php?p=480876&postcount=120
Можно изменить его под свои нужды или просто использовать как шпаргалку.
Немного не то, но для моих нужд подойдёт.
valerik88 вне форума  
 
Непрочитано 27.03.2017, 12:44
#185
valerik88


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


Написал программку для личных нужд для печати из модели. Использовал коды приведённые в этой теме.
Программка удобная, но работает только с моим блоком рамки (берёт из него формат - аттрибут FORMAT и размеры листа - атрибуты W и H, без всяких GetBoundingBox)

При запуски командой printAll просит выбрать все печатаемые рамки.
Перед печатью для каждого формата из выбранных листов предлагается выбрать принтер.
Листы сортируются по вертикале и горизонтали (на примере с блоками рамки видно)

Прикладываю лисп и свой блок рамки.
Тестировалось на Autocad 2016
Вложения
Тип файла: dwg
DWG 2013
рамка.dwg (116.1 Кб, 33 просмотров)
Тип файла: lsp printAll.lsp (9.6 Кб, 46 просмотров)
valerik88 вне форума  
 
Непрочитано 27.03.2017, 12:52
1 | #186
baksconstructor


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


Цитата:
Сообщение от valerik88 Посмотреть сообщение
Программка удобная, но работает только с моим блоком рамки (берёт из него формат - аттрибут FORMAT и размеры листа - атрибуты W и H, без всяких GetBoundingBox)
Ну что сказать.... Реверс рамки переварил нормально.
НО см. :
ГОСТ Р 21.1101-2013
Приложение Ж (обязательное). Основные надписи и дополнительные графы к ним

а именно размер и расположение графы "Согласовано"
baksconstructor вне форума  
 
Непрочитано 27.03.2017, 13:10
#187
valerik88


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


Цитата:
Сообщение от baksconstructor Посмотреть сообщение
НО см. :
ГОСТ Р 21.1101-2013
Приложение Ж (обязательное). Основные надписи и дополнительные графы к ним
а именно размер и расположение графы "Согласовано"
Действительно. Поправил блок.
Вложения
Тип файла: dwg
DWG 2013
рамка.dwg (103.8 Кб, 36 просмотров)
valerik88 вне форума  
 
Непрочитано 01.05.2017, 15:53
#188
pant-79


 
Регистрация: 27.07.2013
Сообщений: 7
Отправить сообщение для pant-79 с помощью Skype™


Подниму тему, потому что более релевантной моим запросам темы поиск не выдал.
Задача печати плоских объектов из пространства модели передо мной не стоит, пользуюсь листами и вьюпортами и горя не знаю.
Но сейчас встала проблема автоматизации при создании таблиц-спецификаций с эскизами деталей в ячейках. Вручную при этом используется "плоский снимок", но у него есть куча недостатков:
1. Снимок получается 1:1, то есть блок эскиза выходит огромных размеров. Таблица его изначально ужимает до размеров ячейки, но потом при переоткрытии файла параметр "вписывание блока" ломается и таблицу разносит, как Халка при трансформации. Исправления этих косяков занимают много рабочего времени.
2. Снимок никаким образом нельзя автоматизировать, т.к. при выполнении команды вылезает диалоговое окно, которое обламывает выполнение скрипта и никакими программными методами это пока не решено (по крайней мере в лиспе и вба, в более сложные дебри типа шарпея я пока залезать не планирую).
3. Снимок не отображает данные о цвете и вообще неспособен выдать никаких стилей отображения кроме каркаса.
Отсюда возникла мысль создавать миниатюры путем печати выделенного 3D-объекта из пространства модели, точнее сохранения всего этого добра в отдельные PDF, которые потом можно запихнуть в таблицу тем или иным способом.
Принцип, вроде, тот же - getboundingbox и т.д. Но вот беда, для 3D-объектов, тем более взятых из ракурса, отличного от вида top, приведенный здесь код неприменим.
Нужно брать не две точки, а целых 8, и по ним как-то вычислять границы блока, либо вообще самостоятельно выбирать рамку объекта для печати.
Короче, нужна модификация приведенного макроса, которая:
1. Печатает 3D-объект по рамке, выбранной вручную, либо определенной более хитрым алгоритмом.
2. Сохраняет результат печати в PDF, думаю, где-то в формате А6.
3. Выдергивает этот PDF назад в чертеж, создает на его основе блок. В блоке миниатюра масштабируется до нужного размера. Размер миниатюры должен задаваться в макросе и потом подгоняться под реальные нужды.
4. Обзывает блок исходя из названия фотографируемого блока. Например, из блока "Деталь1" получается блок "ЭскизДеталь1". Чтобы потом в таблице блоков не ломать голову, где искать результат.

Думаю, под это дело можно модифицировать текущий макрос, но я пока не знаю всех подводных камней:
1. Кто знает готовое решение по печати посредством рамки, киньте ссылку, если не сложно.
2. Кто знает, как более изящно решить первый пункт макроса, т.е. создать рамку, исходя из getboundingbox в трехмерном пространстве? При этом вид на модель должен быть с произвольной "нормалью".
3. Задача предполагает обращение к файловой системе (причем, дважды). Есть уже готовые решения для этого дела на лиспе?
pant-79 вне форума  
 
Непрочитано 01.05.2017, 16:07
#189
maratovich


 
Регистрация: 12.07.2009
г. Самара
Сообщений: 2,481
Отправить сообщение для maratovich с помощью Skype™


Цитата:
Сообщение от pant-79 Посмотреть сообщение
таблиц-спецификаций с эскизами деталей в ячейках
Чё ? Это по какому такому нормативу ?
Цитата:
Сообщение от pant-79 Посмотреть сообщение
но потом при переоткрытии файла параметр "вписывание блока" ломается и таблицу разносит, как Халка при трансформации.
Установите сервис пак, у Вас Автокад глючит, работаю с этим свойством 2009-2015 везде всё в норме.
Отсюда остальное описанное не требуется.
Цитата:
Сообщение от pant-79 Посмотреть сообщение
Есть уже готовые решения для этого дела на лиспе?
Скорее это уже в Поиск исполнителей, с полным ТЗ и примером конечного результата.
Я конечно отдалённо понял чего требуется и сделать можно, но сложно, это серьёзный проект получится.
__________________
Вопрос : Где находится Тургай ? Ответ : Между Парагваем и Уругваем.....
maratovich вне форума  
 
Непрочитано 01.05.2017, 16:12
#190
pant-79


 
Регистрация: 27.07.2013
Сообщений: 7
Отправить сообщение для pant-79 с помощью Skype™


Цитата:
Сообщение от maratovich Посмотреть сообщение
Установите сервис пак, у Вас Автокад глючит, работаю с этим свойством 2009-2015 везде всё в норме.
Отсюда остальное описанное не требуется.
То бишь, вы прочитали первый пункт недостатков, а остальные два проигнорировали. Если уж на то пошло, главный недостаток - второй.

Нет, исполнителей я не ищу. Я сам это все скомпоную в рабочую версию. Просто, если люди в теме и более информированы, чем я, то могут подсказать, куда копать насчет последних трех пунктов.
pant-79 вне форума  
 
Непрочитано 01.05.2017, 21:20
#191
maratovich


 
Регистрация: 12.07.2009
г. Самара
Сообщений: 2,481
Отправить сообщение для maratovich с помощью Skype™


Цитата:
Сообщение от pant-79 Посмотреть сообщение
То бишь, вы прочитали первый пункт недостатков, а остальные два проигнорировали. Если уж на то пошло, главный недостаток - второй.
Я всё полностью прочитал, собственно поэтому повторюсь:
1. Выяснить причину глюков со сбросом размеров блоков в таблице. И тогда
Цитата:
Если уж на то пошло, главный недостаток - второй.
отпадает, и недостаток превращается в достоинство.
2. Про
Цитата:
1. Снимок получается 1:1 (если с исправлением автокада)
2. Снимок никаким образом нельзя автоматизировать.
3. Снимок не отображает данные о цвете и вообще неспособен выдать никаких стилей отображения кроме каркаса.
оно так и должно работать т.к. плоский снимок это не команда автокада, а лисп, и автоматизировать его из вне не получится.

Цитата:
Нет, исполнителей я не ищу. Я сам это все скомпоную в рабочую версию. Просто, если люди в теме и более информированы, чем я, то могут подсказать, куда копать насчет последних трех пунктов.
Тогда Вам прямая дорога в Программирование если терпения хватит, т.к. Ваши пункты вопросов отношения к этой теме не имеют.

И ещё, я не зря писал
Цитата:
Сообщение от maratovich Посмотреть сообщение
Я конечно отдалённо понял чего требуется и сделать можно, но сложно, это серьёзный проект получится.
как надоест грабли ломать - пишите, задача решается в обход стандарта и на другом языке программирования.
__________________
Вопрос : Где находится Тургай ? Ответ : Между Парагваем и Уругваем.....
maratovich вне форума  
 
Непрочитано 02.05.2017, 11:35
#192
pant-79


 
Регистрация: 27.07.2013
Сообщений: 7
Отправить сообщение для pant-79 с помощью Skype™


Цитата:
Сообщение от maratovich Посмотреть сообщение
отпадает, и недостаток превращается в достоинство.
Цитата:
Сообщение от maratovich Посмотреть сообщение
оно так и должно работать т.к. плоский снимок это не команда автокада, а лисп, и автоматизировать его из вне не получится.
Пока что, сложив А и Б, из ваших слов выходит, что на команду "плоский снимок" есть открытый код на лиспе?

Последний раз редактировалось pant-79, 02.05.2017 в 13:41.
pant-79 вне форума  
 
Непрочитано 04.05.2017, 09:41
#193
pant-79


 
Регистрация: 27.07.2013
Сообщений: 7
Отправить сообщение для pant-79 с помощью Skype™


Вот вот. Так я и думал, что нет там никаких достоинств с точки зрения автоматизации.
Достоинство - это то, что расширяет возможности, а не ограничивает.
Пока у команды "плоский снимок" есть неубиваемое диалоговое окно, которое блокирует все возможности автоматизации использования этой команды, ни о каких достоинствах при программировании говорить не приходится. Отпадает эта команда для программиста. Просто отпадает. И приходится искать альтернативы.
pant-79 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Печать из модели по выбору объекта

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Опять про печать из модели нескольких листов gizmo_zx Программирование 2 28.09.2010 12:33
Автоматическая печать из пространства модели Дмитрий_В AutoCAD 9 19.04.2006 16:52
Печать из модели Eugenius AutoCAD 11 03.11.2004 18:26
Печать 3-х мерной модели Лариса AutoCAD 5 09.06.2004 19:57