|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Регистрация: 25.10.2008
Сообщений: 106
|
Есть вопросы по работе лиспа.
1) В каком масштабе должны быть начерчены чертежи? Сейчас у меня 1 ед. на чертеже соответ. 1 мм. на бумаге. 2) На чертеже есть разные форматы А1, А2 разной ориентации вертикальные и горизонтальные, и нестандартные. Как сделать чтоб они печатались в правильном формате? Пока печатал только на ПДФ принтере и так понял что лисп печатает все на одном формате заданном в _PAGESETUP. |
|||
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,187
|
чертежи , т.е штампик =может быть ЛЮБОГО масштаба.
Прога находит прямоугольники (лежащие на слое format), которые находятся под рамкой блоком- и распечатывает их по наружным границам. Т.е масштаб- абсолютно любой Ориентация чертежей- альбомная или книжная-не важно- вычисляется автоматически, =поворачивает и распечатывает в правильном положении. См. пост 36 -там видео работы моего лиспа. если печатать надо разные форматы, то как вариант сгруппировуй разные форматы вместе , и меняя в _PAGESETUP. размер листа- печатай за несколько заходов. зы. пост 33- лисп пост 26- файл с образцом рамки и под ней- специальный прямоугольник (по которому и печатаются сами рамки) Обращаю внимание, если у тебя я думаю, нет этого прямоугольничка под блокамиЭ, то можно сделать так: тебе нужно будет в блок рамок зайти, там создать полилинию, лежащую на слое format, а затем разбить свой блок коммандой burst - чтобы не полетели атрибуты. Лучше все это сделать в копии основного файла
__________________
Kiev, Ukraine |
|||
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 807
|
sasha_lif, Попросил админа поставить триал версию Пдф креатор плюс (начнем с того что он платный ). Ваш лисп работает отлично. Но хотелось бы узнать, можно его доработать в таком направлении.
У меня есть блок рамки, перед печатью его можно разбить, не проблема. Но дело в том что у меня обе рамки (внутренняя и внешняя) сделаны полилинией на слое Формат. Можно ли добавить условие чтобы лисп захватывал бОльшую рамку или та которая тоньше. Вроде как самое просто это разбить вторую полилинию. Но тогда придется переделывать блок, а у меня на основе этого блока сделано еще много блоков, и в каждом придется отлавливать баги заново.
__________________
AutoCad 2011 -> AutoCad 2013 Последний раз редактировалось Astartes, 06.06.2013 в 07:48. |
|||
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,187
|
Astartes, Виртуальный принтер МОЖЕТ БЫТЬ ЛЮБОЙ, только чтобы он в процессе добавления листов, работал в фоновом режиме и не задавал вопросов :-)), а молча добавлял странички...
Вы по- моему уже ленитесь: 1.Это надо сделать один раз для файла- зайти в блок и закинуть например ненужную линию на другой слой- и все, вопрос решен. 2. Какие баги полезут? Слой должен называться format, а не формат. Или же надо исправить строчку в лиспе Код:
Код:
__________________
Kiev, Ukraine Последний раз редактировалось sasha_lif, 06.06.2013 в 13:28. |
|||
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 807
|
sasha_lif, Про формат и format я конечно исправил в лиспе.
Баги в блоке. На другой слой переносить заданную линию в исходном блоке? Ну как то это не по нашему. Весь блок в слое Формат, а эта линия в другом. Если менять эту линию через редактор блоков перед разбиением, то при выходе из редактора, слетают многострочные атрибуты. Я просто не знаю лиспа. Если это можно сделать одной строчкой кода, то почему нет. Если сложно, то конечно, заморачиваться ради этого не стоит. Сразу не додумался. Проще будет после разбития ненужные линии выбрать с помощью Селект симиляр, и перенести на другой слой. УПД: Пока писал, уже ответ есть. Сейчас проверю. УПД2: По поводу вирт. принтеров. Я не встречал бесплатного принтера, который может делать многостраничный ПДФ. Если знаете, дайте ссылку пожалуйста.
__________________
AutoCad 2011 -> AutoCad 2013 |
|||
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,187
|
Astartes, поищи тогда другой тоже pdf creator (без плюса который ) - он намного проще, но вроде бесплатный
инсталяху ищи по: PDFCreator-0_9_3_GPLGhostscript.exe вроде тут, только проверь бесплатный, а то мне лень качать и ставить. http://www.pdfforge.org/pdfcreator Там вначале вроде спросит при попытке послать второй лист на печать - что делать- добавлять или перезаписывать, поставишь галочку добавлять- и все ОК
__________________
Kiev, Ukraine |
|||
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 807
|
sasha_lif, Спасибо, работает. Но.
В приложенном файле 2 вида форматов. Сверху со штампом. А снизу теже самые форматы, только без штампов. Так вот, если применить ваш модернизированный лисп к нижним форматам, то печатается без проблем. А вот к верхним, если захватить рамкой выделения и штампы, то выдает: Команда: ASD1 Выделите чертежи, предназначенные для печати Выберите объекты: Противоположный угол: найдено: 26 Выберите объекты: ; ошибка: неверный тип аргумента: numberp: nil Других полилиний там нет. Тем не менее, что то мешает печати.
__________________
AutoCad 2011 -> AutoCad 2013 |
|||
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,187
|
Astartes,
Цитата:
Цитата:
Поэтому тебе придется своим тонким линиям присвоить любую другую толщину, кроме 0,00! Offtop: От Киева до Барнаула - 4 242 км. Мощная штука интернет!
__________________
Kiev, Ukraine Последний раз редактировалось sasha_lif, 06.06.2013 в 13:35. |
|||
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 807
|
sasha_lif, Забыл написать.
Если пользоваться изначальным лиспом и даже перевести внутренний контур на 0 слой. Все равно не работает. Точнее также печатает вынесенные отдельно рамки, но не хочет печатать, когда в рамку выбора попадает штамп.
__________________
AutoCad 2011 -> AutoCad 2013 |
|||
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 807
|
sasha_lif, Я наверное запутал вас. У меня конец рабочего дня. Вкраце опишу сейчас. Потом добавлю подробно.
1. Не модифицированный лисп (setq s1 (ssget (list '(8 . "Формат") ))). Не работает даже если внутреннюю рамку переместить на другой слой. 2. Модифицированный лисп (setq s1 (ssget (list '(8 . "Формат") '(370 . 0) ))). Работает если присвоить линиям с Нулевой толщиной, любую другую. Вопрос. Почему неработает не модифицированный лисп. В нем ведь нет указаний на толщину линий?
__________________
AutoCad 2011 -> AutoCad 2013 |
|||
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,187
|
Astartes, по 1 Не модифицированный лисп - НА СЛОЕ ФОРМАТ НЕ ДОЛЖНО БЫТЬ НИКАКИХ ЛИНИЙ кроме наружной рамки
прога ищет все полилинии лежащие на слое формат. А у тебя там есть как нужные прямоугольники, так и не нужные проге полилинии, которые ее сбивают с толку
__________________
Kiev, Ukraine |
|||
|
||||
Котло- и реакторостроение Регистрация: 25.02.2010
Барнаул
Сообщений: 807
|
sasha_lif, С одной стороны понял, с другой нет.
Меня полностью устраивает модиф. лисп. Спасибо за него. Я просто изменю линии нулевой толщины на другую толщину. Дальнейшие вопросы, чисто мое любопытство. Немод. и мод. лисп отличаеют вот этим: '(370 . 0). Можешь объяснить что это значит. Пробовал почитать про ssget, но там на английском, я ни фига не понял. Думаю если понять что здесь зашифровано, то может и вопросы отпадут. Проводил эксперименты над лиспом. Есть пара моментов, которыми хочу поделится. Цитата:
Вывод, немод. лиспу не нравятся наложения линий. А так, на слое формат может быть любое количество объектов. Еще, если в настройках принтера "Область печати" стоит по умолчанию не "Рамка", а допустим "Экран", то лисп также сбоит и не печатает. ЗЫ: Кстати спасибо за наводку на ПДФ Креатор (без плюса) бесплатный, и может склеивать листы.
__________________
AutoCad 2011 -> AutoCad 2013 Последний раз редактировалось Astartes, 07.06.2013 в 11:50. |
|||
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,187
|
Astartes,
Цитата:
Так как при получении результатов выполнения (setq a (entget s11)) набери после выполнения лиспа в компндной строке !a Получишь описание , например такое Код:
(8 . "format") - слой, на котором лежит искомый прямоуголник для печати (370 . 35) - толщина линии 0,35 мм (10 3219.4 355.114) - координаты точек прямоугольника и соответственно в строке Код:
если без '(370 . 0) - то просто все объекты, находящиеся на слое формат. Цитата:
Код:
Код:
Цитата:
http://www.3e-club.ru/view_full.php?id=24&name=dxf http://gor.h1.ru/15bt1/ebook_1590/theory/part7.htm
__________________
Kiev, Ukraine Последний раз редактировалось sasha_lif, 10.06.2013 в 15:00. |
|||
|
||||
Регистрация: 25.10.2010
Сообщений: 868
|
Цитата:
ошибка в строке Код:
Код:
Как вариант, я понял, на слое format должны находится только прямоугольники-границы. Надо какое-то условие поставить - или отключать слой format при печати, или отфильтровывать только рамки для получения координат. У меня работает #40 Выложите полный исправленный код, пожалуйста, чтобы мы не лазили по строкам с исправлениями! Программка нормальная.
__________________
From Siberia with love Последний раз редактировалось vl74, 14.11.2013 в 12:01. |
|||
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,187
|
vl74, в посте №72 я и писал:
НА СЛОЕ format НЕ ДОЛЖНО БЫТЬ НИКАКИХ ЛИНИЙ кроме наружной рамки прога ищет все полилинии лежащие на слое формат. выбирать руками по одному не надо. Прога сама сканирует чертеж, только на слое format НЕ ДОЛЖНО БЫТЬ НИКАКИХ ЛИНИЙ кроме наружной рамки берите из №40- у меня работает, ошибку правда выбивает, но на печать все посылает.Сейчас поковыряюю лисп. sadko7, у вас я думаю ошибка из-за того, что не настроен принтер никакой, выберите что-нибудь Перенес все в новый файл, Выкладываю. проверьте у вас работает в моем файле?
__________________
Kiev, Ukraine Последний раз редактировалось sasha_lif, 14.11.2013 в 12:58. |
|||
|
||||
Регистрация: 01.02.2012
Сообщений: 101
|
Тоже самое пишет:
Для пересечения выбрано избыточное число объектов Команда: (LOAD "D:/сеть/ACAD 2012 (полезные советы, настройки)/Пакетная печать множества рамок (форматов) из пространства модели/asd.lsp") =========== Автоматический поиск и печать чертежей================= Разработал [email protected] Для запуска наберите asd Команда: asd Выделите чертежи, предназначенные для печати Выберите объекты: Противоположный угол: найдено: 1 Выберите объекты: Для пересечения выбрано избыточное число объектов Неизвестная команда "ASD". Для вызова справки нажмите F1. Неизвестная команда "ASD". Для вызова справки нажмите F1. Неизвестная команда "ASD". Для вызова справки нажмите F1. Неизвестная команда "ASD". Для вызова справки нажмите F1. Неизвестная команда "ASD". Для вызова справки нажмите F1. ; ошибка: неверный тип аргумента: lentityp nil |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Печать в один PDF фаил нескольких листов | YuryKlimchuk | AutoCAD | 103 | 24.05.2018 20:47 |
autocad mep 2009, как отправить печать нескольких листов одновременно | eugen2002 | Вертикальные решения на базе AutoCAD | 2 | 26.01.2012 15:39 |
Опять про печать из модели нескольких листов | gizmo_zx | Программирование | 2 | 28.09.2010 12:33 |
Печать сразу нескольких листов из одного лайаута??? | Nik6 | Программирование | 21 | 19.02.2009 17:20 |
Как заменить принтер одновременно у нескольких листов в чертеже. | Witalij | AutoCAD | 6 | 22.05.2008 09:00 |