|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Меняешь UCS, ждешь, что пользователь будет вести плюс-минус около оси Ox. А он бац - и вдоль оси Oy текущей UCS
А кто сказал, что при старте кода система координат была мировой?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 19.11.2014
Сообщений: 2,606
|
Цитата:
Цитата:
----- добавлено через ~2 мин. ----- Кстати, проблему с перпендикулярным вводом частично можно уменьшить, если начало координат закинуть подальше, чтобы физически сложно было выбрать перпендикулярный режим. |
|||
![]() |
|
||||
Регистрация: 21.06.2013
Сообщений: 11
|
Доброй ночи!
Подскажите как в коде указать универсальный путь к файлу шаблона? Если ввести конструкцию %UserName% в пути напрямую, то не работает( Дали идею: (getenv "%appdata%") (getenv "%userprofile%") Но как применить в коде не знаю, мои знания в язык LISP равны нулю к сожалению( Код:
|
|||
![]() |
|
||||
Регистрация: 10.01.2020
Сообщений: 420
|
У тебя неправильно написаны переменные, нужно так:
(getenv "APPDATA") (getenv "USERPROFILE") Если нужно только имя пользователя: (getvar "LOGINNAME") Для объединения строк используется оператор strcat |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
ИМХО никак. В СОМ-модели соответствующие свойства вроде бы не проброшены, да и в ename-представлении динамический массив - всего лишь анонимный блок. Правда, со своими реакторами и словарями.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 19.11.2014
Сообщений: 2,606
|
Поискал информацию в интернете - удивился, что ничего такого не нашлось по изменению свойств массивов. А ведь через палитру Свойства - это возможно. Получается надо удалять старый массив и затем создавать новый с нужными параметрами.
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Или расковыривать словари на примитиве - насколько я помню, там что-то мелькало.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 19.11.2014
Сообщений: 2,606
|
А можно ли добраться простым способом до шага динамического массива? Вот здесь это сделано, но через открытие редактора блоков. Это слишком неудобно.
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Я же говорю - вскрывай словари.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Ну как-то так примерно
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 19.11.2014
Сообщений: 2,606
|
Не придумал как сделать из набора примитивов обычный автокадовский массив с ручками, обернул набор в анонимный блок. Ниже реализация. Посмотрите, нет ли там каких-то явных глупостей в коде, может что-то можно сделать проще.
Функция создает объект, представляющий собой заводской сварной шов - небольшой отрезок с некоторым шагом. Геометрия пока жестко прописана в коде (длина отрезка и максимальный шаг отрезков). Код:
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Ну создай перед while свой слой, и в конце после vla-put-textoverride добавь (vla-put-layer item <Имя твоего слоя>)
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 11.07.2022
Сообщений: 765
|
Как программно выбрать все тексты или Мтексты на чертеже с одинаковым содержанием,
указав на нужный текст в чертеже. Мтекст может быть многострочным. Код:
Но мне нужно выбрать текст на экране Код:
(<Имя объекта: 7ffffb0c620> (12816.6 1477.96 0.0)) (<Имя объекта: 7ffffb0c610> (11643.9 2491.88 0.0)) (<Имя объекта: 7ffffb0c630> (13407.1 1037.49 0.0)) Для мтекстов с одинаковым содержанием выводятся различные имена... Возможно ли выбрать одинаковые мтексты как одинаковые объекты, указав на мтекст-образец? |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Цитата:
деформатирование исходного образца-мультитекста, в цикле по всем мультитекстам в чертеже деформатировать их содержимое и сравнивать "чистые" текстовые значения. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
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 |