Добавление операций в RingModeToggle

Автор
Сообщение
На сайте c 26.03.2014
Сообщений: 81
online

Всем привет.

В 3ds max есть режим RingModeToggle (или Loop Mode). При включении лупы выбираются одним кликом.

Можно ли дополнить этот режим так чтобы при клике выделялся луп и удалялись эти ребра с точками.

Знатоки скриптов пожалуйста помогите решить эту задачу.

Спасибо.

На сайте c 27.07.2016
Сообщений: 1568
Красноярск

VGennadii

просто выделите Edge (у EditablePoly)

в MS:

$.EditablePoly.SelectEdgeLoop ()

$.EditablePoly.Remove ()

На сайте c 26.03.2014
Сообщений: 81
online
Цитата StunBreaker:

VGennadii

просто выделите Edge (у EditablePoly)

в MS:

$.EditablePoly.SelectEdgeLoop ()

$.EditablePoly.Remove ()

Хотелось бы что бы это работало как MODE  = ON/OFF

Что бы просто активировать режим и не кликать скрипт каждый раз.

Можно ли как то это сделать?

На сайте c 27.07.2016
Сообщений: 1568
Красноярск

Цитата VGennadii:
Что бы просто активировать режим и не кликать скрипт каждый раз.

Как простой вариант просто перетащите эти строки из MaxScript на свою панель инструментов - и далее назначить хоткей.. Так же вы можете выбрать не только один, а сразу несколько Edges (лупы которые вы хотите удалить вместе с точками).. и применить строки MS один раз. )

Цитата Jähman':
чтоб еще и undo в активном режиме отрабатывал большой вопрос

ну если реализовано на колбэке на клик , то разве не вариант в самой функции в начале прописать:

Undo "имя юндо которое будет отображаться в стэке Undo/Redo"on(тело функции) ?

должно работать..

На сайте c 26.03.2014
Сообщений: 81
online
Цитата Jähman':

сделать-то можно, а вот как сделать, чтоб еще и undo в активном режиме отрабатывал большой вопрос

ха...

а разве вот это не оно? 

Цитата StunBreaker:
Цитата VGennadii:
Что бы просто активировать режим и не кликать скрипт каждый раз.

Как простой вариант просто перетащите эти строки из MaxScript на свою панель инструментов - и далее назначить хоткей.. Так же вы можете выбрать не только один, а сразу несколько Edges (лупы которые вы хотите удалить вместе с точками).. и применить строки MS один раз. )

Вах! Спасибо Вам! То что нужно!

На сайте c 27.07.2016
Сообщений: 1568
Красноярск
Цитата Jähman':
только имейте ввиду что $.EditablePoly.Remove() лупы-то удаляет, а вот вершины нет 

а вы проверяли? видимо нет...

P/S а я понял теперь о чём вы, если запустить только эту одну строку действительно удаляет эджи и оставляет вертексы... )

а если запускаю две строки - вертексов уже нет:

$.EditablePoly.SelectEdgeLoop ()

$.EditablePoly.Remove ()

На сайте c 27.07.2016
Сообщений: 1568
Красноярск

Jähman' и впрямь - мистика автодэска ).....  тогда мини кастыль(проверьте если можете):

$.EditablePoly.SelectEdgeLoop ()

b = $.EditablePoly.ConvertSelection #Edge #Vertex

$.EditablePoly.Remove ()

subobjectLevel = 1

$.EditablePoly.Remove ()

subobjectLevel = 2

На сайте c 27.07.2016
Сообщений: 1568
Красноярск
Цитата Jähman':
вот пожалуй рабочий вариант

длинно слишком, видел его ) мой предыдущий пост по-короче.. ))

p.s. там просто писали ещё под 7-ой макс.. )

Читают эту тему: