|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
А почему бы сразу не создавать этот набор методами ActiveX? Но если уж так хочется "превращений" (может, там у ssget фильтр какой-нибудь незаурядный по плану) , то, наверное, как-то так:
Код:
![]() Совершенно не понимаю, что означает эта строка Либо туговато соображаю с утра, либо одно из двух. Что за цифры 2 и 3? Что за координаты? Координаты вершин четырехугольника неправильной формы? Видовой экран должен быть непрямоугольным? Трапецевидным? Тогда в него нужно "превращать" полилинию, если я ничего не путаю. Можно приложить файл dwg с изображением желаемого эффекта? Offtop: Одни Гарри Поттеры, блин ![]() |
|||
![]() |
|
||||
Регистрация: 15.04.2014
Сообщений: 14
|
skkkk
Я имел в виду следующее. В автокаде можно разделять экран на несколько видовых экранов (два вертикально, 3 вертикально, горизонтально) в модели. Но чтобы мне удобно поделить модель на 2 видовых экрана мне приходиться создавать их большое количество а потом пользуясь инструментом "объединить видовые экраны" создавать 2 видовых экрана со смещенным центром. Рассматривая учебник по написанию программного кода я обнаружил функцию (Vports) которая может показать значения координат видовых окон. А вот самому задать эти значения у меня не получается ![]() Последний раз редактировалось Dima_90, 27.01.2015 в 08:52. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
Но в этом уже давно нет нужды. Если множество Layout с любыми плавающими ВЭ. И нет никакой необходимости "создавать большое количество", а потом "объединять". Подумайте об организации своей работы, а не об обработке списков. |
|||
![]() |
|
||||
Регистрация: 15.04.2014
Сообщений: 14
|
ShaggyDoc
Не совсем понял Вашу мысль. Я согласен с тем, что подготовить чертежи к выпуску, работая с листами намного проще и удобней в большинстве случаев (особенно если добавлять в ЛИСТ несколько видовых экранов). Но в моих проектах (электрика) существует множество дискомфорта с подобной организацией работы. Может быть я не совсем понятно написал что же я хочу сделать, поэтому распишу подробно мой случай. У меня стоит на рабочем месте 2 монитора разной диагонали и разрешения. Я при работе растягиваю окно Автокада на 2 монитора и делю пространство модели на пополам по вертикале. В моем случае получается что рабочая область находиться на одном мониторе, а вспомогательная область на другом. НО т.к разрешение мониторов разное, то получается что автокад при делении на пополам (по пикселям) модель, не по полам делит изображения на два монитора (граница деления проходит на мониторе с большим разрешением). Чтобы решить данную проблему я делю пространство модели на очень большое количество по вертикали, потом эти видовые экраны модели объединяю таким образом, что полоса деления модели по "полам" проходит между двумя физическими мониторами. Затем я сохраняю этот новый видовой экран модели и могу в данном файле в пару кликов его подгружать. Но в другой файл я не нашел как его импортировать. Из-за этого приходиться в каждом новом файле его создавать заново утомительным способом. И вот недавно я нашел функцию Vports, которая если взять в скобочки, то даст размеры видовых экранов модели. Вот теперь я хочу создать несколько строчек программного кода который у функции (Vports) поменяет данные на те, которые я укажу. Потом это можно будет завязать на кнопку и делить экран под мои мониторы за один клик. Моя проблема состоит в том, что у меня не получается в функцию Vports записать список моей информации. |
|||
![]() |
|
||||
Регистрация: 05.09.2007
RUSSIA
Сообщений: 166
|
Спасибо - работает.
Да я бы с радостью. И нашел уже vla-select, но что-то пока с safearray не въезжаю... Задача вобщем-то примитивная - создать наборы объектов по существующим слоям и записать в отдельные файлы DWG. Последний раз редактировалось mkung, 27.01.2015 в 14:42. |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
А разве нельзя запись в макрос (рекордер операций) последовательность действий и вызывать в новом файле?
|
|||
![]() |
|
||||
Регистрация: 15.04.2014
Сообщений: 14
|
Сергей812
Записать макрос когда можно и мышкой и клавиатурой и лентой пользоваться не получается, т.к при повторении в новом файле макрос сбивается. Возможно получиться если вручную все прописывать, но это хлопотно и не универсально (на других ПК с другими мониторами его надо будет переписывать). А вот если как то получаться в эту функцию (Vports) мои значение задать то это будет намного проще. Может надо через ключи какие то, или переменные посреднические прописать. Подробнее о данной функции, чем в учебнике, страницы которого я выкладывал, информации нигде не нашел. |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Цитата:
ShaggyDoc, анахронизм анахронизмом, а до сих пор поддерживаются они еще Автодеском. Тут прочитал, что в 2015-й версии добавили к этим экранам возможность перемещать границы мышью. Об организации работы, конечно, думать надо, и очень основательно, но ведь можно найти и случаи, когда такая модель работы будет очень кстати. Из спортивного интереса попробовал разобраться с этими VPORT'ами. При настроенной на четыре видовых экрана модели получил конфигурацию видовых экранов модели: Код:
Код:
И вот что это? Глюк моего Автокада 2011 или еще какие-то точечные пары лишние в списке? Терпение и труд все перетрут ![]() |
|||
![]() |
|
||||
Регистрация: 15.04.2014
Сообщений: 14
|
skkkk
Я не силен в программировании, но читать немного умею программные коды. Помню в одном из случаев по каким то причинам так же не присваивались значения к функции, и в этом случае вводили переменную, прописывали что там могут быть целые числа, потом присваивали к переменной список точечных пар через оператор List, а уже потом получалось значения этой переменной применить к функции. Может в этом случае так же надо. Сам я пробовал подобное написать, но что то ничего не вышло. |
|||
![]() |
|
||||
Регистрация: 27.01.2015
Сообщений: 2
|
День добрый граждане, большая просьба помочь с написанием макроса.Изо дня в день выполняю одни и те же действия,захотелось упростить себе работу.Итак на входе имеем файл,в котором имеется контур объекта,выполненный замкнутый полилинией,на вершинах которой расположены блоки,все блоки имеют одно имя,по сути одинаковые.Нужно сделать следующее: полилинию сделать красным цветом(что не сложно) а на вершинах проставить черные точки,ну или окружности заполненные черным цветом.Что делаю я-захожу в редактор блоков одного из блоков, заштриховываю черным цветом,сохраняю-в итоге все блоки черного цвета.
Макрос пока получается такого вида ^C^C-блокред bl_119 _hpname;SOLID;_bhatch Но дальше пока ничего неполучается(. |
|||
![]() |
|
||||
САПР Регистрация: 29.09.2011
СПб
Сообщений: 283
|
В вершинах полилинии расставляет штриховки солидом черного цвета на текущем слое непрерывным типом линии с весом 0.0
Выделяешь нужную полилинию, вызываешь макрос. В '(40 . 1.3) вместо 1.3 поставь нужный тебе радиус. Код:
__________________
На работе было скучно:shout: |
|||
![]() |
|
||||
Регистрация: 27.01.2015
Сообщений: 2
|
Огромное спасибо за отклик,но автокад выдает следующее "ошибка: синтаксическая ошибка"P.S. акад 2009
|
|||
![]() |
|
||||
Регистрация: 01.08.2011
Сообщений: 90
|
добрый день! понадобилось мне из region сделать pline. А так как этих регионо у меня много (порядка 4000) - обычные способы, типа взорвать, или boundary создать - не вариант. Порывшись в интернете на зарубежном форуме нашел lisp для этого дела, вот только беда - он не поддерживает мультивыбора, т.е. опять же, надо все регионы выбирать по очереди. Помогите, пож, его переделать, если это вообще возможно
Код:
|
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Найти пример перебора выделенных элементов (набора) на лиспе и скрестите)
Код:
Код:
Код:
|
|||
![]() |
|
||||
Регистрация: 01.08.2011
Сообщений: 90
|
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Ясно, разница между командами и функциями неочевидна, хотя VVA ее отлично описал: http://dwg.ru/pub/9
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 12.01.2015
Сообщений: 261
|
В функциях Кулик Алексея aka kpblc из темы "Проверка файла и dimpost" с autolisp.ru
(defun _lispru-error-sysvar-save-by-list (lst / res) * Сохранение состояния системных переменных (defun _lispru-error-sysvar-restore-by-list (lst) * Восстановление состояния системных переменных. не понял как они работают при сбойном завершении программы. Есть ли решение проблемы восстановления переменных в этом случае? |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
LISP. Вставка в таблицу поля, соотвествующего площади примитива | Profan | Готовые программы | 272 | 06.06.2021 23:12 |
Сейсмозащита и сейсмоизоляция существующих, построенных зд. | IANationalInformAgentstvo | Прочее. Архитектура и строительство | 216 | 20.01.2015 16:51 |
Мониторы LCD CRT | Разное | 94 | 17.06.2008 10:51 | |
ЮМОР 2006 =) | Perezz!! | Разное | 1122 | 04.01.2007 00:46 |