|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Вращение множества объектов вокруг локальных центров.
Иркутск
Регистрация: 20.06.2005
Сообщений: 57
|
||
Просмотров: 9377
|
|
||||
Регистрация: 20.06.2005
Иркутск
Сообщений: 57
|
Цитата:
Или предлагаете создать их по отдельности?)) Так это то же самое, что поворачивать вручную.. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Поскольку прозвучало "центр масс", подозреваю, что надо проворачивать над регионами или солидами. А тогда можно и таким манером (говорю сразу, все по-топорному, т.к. с методом vla-rotate что-то не получилось с наскоку - точку variant и safearray сводят с ума):
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 20.06.2005
Иркутск
Сообщений: 57
|
Цитата:
kpblc, эту операцию нужно проворачивать в основном над прямоугольниками из полилиний. |
|||
![]() |
|
||||
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
|
Хныкая и утирая крокодиловы слезки:
Эх, Лентяй, Лентяй... Прошше не почучацца ![]() В общем, тут дело такое. У меня с ActiveSelectionSet отношения что-то не сложились - железяка (2005) упрямо при попытке (sssetfirst) обратиться к ActiveSelectionSet показывала предыдущий выбор, пока новый объект не выделен. Т.е. у меня получилось так, что ActiveSelectionSet есть не активный выбор, а последний. Т.е. фактически надо проверять на наличие ActiveSelectionSet, очищать его и потом запрашивать новый. Головняк, и я пошел старым проверенным путем. А lamdba-функции у меня качественными не получаются. Наверное (да не наверное, а точно!), мозгов не хватат. И (в голос) - ну один меня, один! Если меня много, я теряюсь среди себя!
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||||
Project Engineer Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392
|
Цитата:
Цитата:
Цитата:
![]() Цитата:
Цитата:
![]() |
|||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Дык ить я ж ожидал от ActiveSelectionSet'a аналог поведения (ssget). Ан не вышло. Квалификации-то все ж маловато
![]() По проверке получилось следующее: Складываем: Код:
Цитата:
Код:
Лентяй, при всем уважении - настоятельная просьба: меня - ОДИН!!! См. подпись ![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Project Engineer Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392
|
Цитата:
Но не надо отчаиваться. Я тут немножко поизвращался и наваял верчение не только вокруг центров, но и вокуг точки относительно мин. угла. Наслаждайтесь! Код:
|
|||
![]() |
|
||||
Регистрация: 20.06.2005
Иркутск
Сообщений: 57
|
Лентяй, а почему оно не загружается?:
Command: _appload MROT.lsp successfully loaded. Command: ; error: malformed list on input и что означает "вокуг точки относительно мин. угла" И еще, не хотел флеймить дополнительным топиком.. "Что лучше?" VBA или Lisp? Что может позволить бейсик и не может позволить лисп и наоборот, при одинаковых трудозатратах? Прошу прощения за полуриторический вопрос, но если есть, что сказать, то извольте.. |
|||
![]() |
|
||||
Project Engineer Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392
|
Почему. почему... Скобочку пропустил
![]() Код:
Цитата:
Цитата:
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
Категорически не согласен насчет "сочетаются". Для ради интересу можно попробовать передать вычисленные значения из лиспа в VBA и наоборот. Геморрой тот еще. Приходится использовать либо setenv / getenv, либо ini-файлы.
Если lisp позволяет не только ActiveX работать с примитивами, то VBA - только объектная модель. Да, многие вещи лучше, проще и дешевле делать ActiveX / VBA, но некоторые моменты лично мне проще сделать через entmake / entmakex.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Project Engineer Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392
|
За что люблю, так это за категоричность несогласия вплоть до пренебрежения смыслом того, с чем не соглашаешься. Тебе, kpblc, русским по белому нарписли:
Цитата:
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,426
|
сорри, значит, понял неправильно. Подумал, что фраза "Они прекрасно сочетаются друг с другом" относится на связку VBA <-> LISP.
Бывает, особенно с утра пораньше.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |