dwg.ru forum rss xml
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму |

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

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

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

zenon вне форума Вставить имя

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

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

исходник.dwg

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


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


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

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


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


Цитата:
Сообщение от 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,627
Отправить сообщение для 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
Сообщений: 105


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


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


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

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

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


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


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

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


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


Цитата:
Сообщение от baksconstructor Посмотреть сообщение
НО см. :
ГОСТ Р 21.1101-2013
Приложение Ж (обязательное). Основные надписи и дополнительные графы к ним
а именно размер и расположение графы "Согласовано"
Действительно. Поправил блок.
Вложения
Тип файла: dwg
DWG 2013
рамка.dwg (103.8 Кб, 16 просмотров)
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,048
Отправить сообщение для 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,048
Отправить сообщение для 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

|| Главная || Каталог САПР || Тендеры || Публикации || Объявления || Биржа труда || Download || Галерея ||
|| Библиотека || Кунсткамера || Каталог предприятий || Контакты || Файлообменник || Блоги ||


Размещение рекламы