|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Move 2D
Руководитель фирмы
Москва
Регистрация: 28.03.2007
Сообщений: 1,831
|
||
Просмотров: 17035
|
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Тебе Андрей Кочетков дельную мысль предложил.
Чтобы зафиксировать Z пользуйся фильтром координат .Z в ответ на "Базовая точка" или "Вторая точка" Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Если точка с Z и базовая в Move одна и та же, то еще проще
Код:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
(setq pt (getpoint "\nBase point")
pt2 (getpoint pt "\nNew point")) (vla-move obj (vlax-3d-point (list (car pt) (cadr pt))) (vlax-3d-point (list (car pt2) (cadr pt2))) Вроде так. Пишу без проверки и запущенного acad'a.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Ну, мужики, все круто стало. И так и сяк получается. А почему собственно в (command "_move" дальше нельзя лиспом вставлять результат расчета? Я только тут с этим столкнулся. vl-cmdf работает, а через command даже вручную в кавычках статику не дает вставить. Сбрасывает выделенное и требует указать заново объект.
|
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Цитата:
Код:
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Да....! Тут ты не забыл! Вот не забыл, так не забыл!!!
Даже смайлика подходящего я не нашел. А нафига проверять выделенные элементы на ename? а getpoint на list? Че, были случаи, что не то выдавало? Откаты зачем вставил? Не, я за надежность, но сравнивая предидущие тексты и этот, начинаю теряться. ![]() 471 страница в книге AutoLISP и Visual LISP в среде AutoCAD про метод Move, где буква в букву как у тебя в #10, только obj там есть, а тут нет. Я много раз просмотрел и не нашел в #10 этого obj. Ну да это и не важно. Только для публики разве что. А я этот obj наизусть помню. Для публики: Код:
Эта, на первый взгляд простая задача кровь портит очень многим и почему-то до сих пор мне нигде не попадалась в темах. Давайте выберем самый лучший вариант макроса и кинем в программы. Кстати, когда смотришь на модель в профиль, то очень часто надо перемещать объекты по Y не трогая X и Z. Надо и для этого случая сделать move. Только надо как-то правильно назвать функции. Вот причем тут Z в названии функции, когда мы перемещаем по X и Y? |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,406
|
Цитата:
Еще раз просмотри пост 10 - упоминание об obj там есть. Цитата:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Конструктор Регистрация: 04.04.2007
Киев
Сообщений: 536
|
Обычно привязки срабатывают, да по ним переместить объект обычно и требуется. Это действительно интересный нюанс. Приходится измерять расстояние и перемещать на это расстояние, забивая его с клавы.
Вот было бы удобно, если бы привязки в плоскосях работали в 3М а перемещение объектов происходило в строго в 2М!? А то бывает так переместишь, что потом не межешь это объект отыскать. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблемма после команды MOVE | *LUCKY* | AutoCAD | 6 | 12.07.2007 10:25 |
move - Do you really want to do this? | Apelsinov | AutoCAD | 11 | 30.05.2007 21:48 |
Solidedit > Faces > Move? | Styx | AutoCAD | 2 | 27.09.2006 13:22 |
Динамические блоки. Параметр Rotate | Tramp | Динамические блоки | 5 | 29.06.2006 14:53 |
Можно ли отключить резиновую нить при MOVE? | {Smirnoff} | Программирование | 10 | 20.01.2004 16:30 |