| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как сделать масштабирование с предпросмотром (как в дефолтной функции автокада)

Как сделать масштабирование с предпросмотром (как в дефолтной функции автокада)

Ответ
Поиск в этой теме
Непрочитано 04.07.2016, 18:35
Как сделать масштабирование с предпросмотром (как в дефолтной функции автокада)
valerik88
 
Регистрация: 02.07.2016
Сообщений: 249

Хочу сделать функцию масштабирования, что бы можно было взять и мышью вытянуть объект до нужной величины (а не как по умолчанию, мышью через длину отрезка задаётся величина масштаба).

Уже сделал пробную версию, работает почти как надо. Но в дефолтной функции автокада есть удобная фишка - предпросмотр того, что будет после завершения команды.

Вопрос 1: Как сделать подобный динамический предпросмотр детали? Возможно ли вообще такое средствами Autolisp?

Вопрос 2: Есть ли какой-то простой способ узнать габариты выделенного элемента/примитива/блока? Ну т.е. грубо говоря минимальные размеры прямоугольника, в который этот элемент влезет.


(Прикладываю последнюю версию сделанной в рамках этой темы функции)

Вложения
Тип файла: lsp mashtab.lsp (42.6 Кб, 55 просмотров)


Последний раз редактировалось valerik88, 24.07.2016 в 20:53.
Просмотров: 6854
 
Непрочитано 23.07.2016, 09:04
#21
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,992


Нашел еще один вариант масштабирования Visual Scale function (требуется регистрация)
Видео
Вложения
Тип файла: lsp scaleme.lsp (3.9 Кб, 25 просмотров)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 23.07.2016, 12:21
#22
frostmourn


 
Регистрация: 23.04.2015
Сообщений: 163


VVA - А в #12 разве не оно?

Цитата:
Сообщение от valerik88 Посмотреть сообщение
PS: правда ты там накосячил, в твоей функции не работает моё масштабирование размерных линий. Но я поправил.
Ах да, про масштаб после цикла забыл. Можно было и тут (setq mas t) заменить Т на вычисление по-новой, но так писанины больше, да.
Кстати, новые баги всплыли - не все виды размеров учтены, на некоторых вылетает. Поправил. Сейчас тоже не всё гладко, например, разрывы не обрабатывает, но оно того не стоит. И, наверное, надо отлов ошибок хотя бы в комстроку выводить... Пока так оставил.
Вложения
Тип файла: lsp mashtab-1.lsp (25.5 Кб, 17 просмотров)
frostmourn вне форума  
 
Автор темы   Непрочитано 23.07.2016, 19:26
#23
valerik88


 
Регистрация: 02.07.2016
Сообщений: 249


Цитата:
Сообщение от VVA Посмотреть сообщение
Нашел еще один вариант масштабирования Visual Scale function (требуется регистрация)
Видео
Это та же самая моя же функция, более старой версии. Я её просто переименовал для пиндосов понятным словом.
valerik88 вне форума  
 
Автор темы   Непрочитано 23.07.2016, 21:46
#24
valerik88


 
Регистрация: 02.07.2016
Сообщений: 249


Прикрутил эту функцию привязки

Демонстрация

Во время работы функции привязку можно включать/выключать клавишей F3
(Правда после включения привязок функцией F3, почему-то включаются не все привязки, которые изначально были... бред какой-то, не понятно)
Вложения
Тип файла: lsp mashtab.lsp (42.6 Кб, 23 просмотров)
valerik88 вне форума  
 
Автор темы   Непрочитано 24.07.2016, 20:52
#25
valerik88


 
Регистрация: 02.07.2016
Сообщений: 249


Всё исправил! Корректно включаются, выключаются привязки по F3.
Заменю файл в первом посте тоже.
Вложения
Тип файла: lsp mashtab.lsp (42.6 Кб, 25 просмотров)
valerik88 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как сделать масштабирование с предпросмотром (как в дефолтной функции автокада)

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разработка ПОС, искусство проектирования Tyhig Технология и организация строительства 117 25.11.2021 17:38
Как сделать выражение в таблицах под тип ExсeL dim5678 AutoCAD 8 12.06.2013 14:57
как сделать твердотельную модель и сделать ее чертеж, потом перенести в солидворкс denya43 AutoCAD 5 24.12.2012 18:42
как сделать сопряжение в нужной точке? rtyu AutoCAD 4 08.08.2012 16:43