Имеется скрипт, делающий пакетный экспорт. В этот скрипт я добавил ещё кусок кода, который перед экспортом ещё производит определённые изменения. Всё хорошо, всё работает. Но мне нужно добавить некоторую интерактивность.
Среди прочего есть вот такая строка:
meshop.extrudeFaces $ #{1..$.numfaces} 50 -1.0
Мне нужно сделать следующее: каждый раз вручную вводить величину экструда (в данном случае 50), после этого сделать тестовый рендер, далее поправить введённую величину, если нужно (цикл правка-рендер может продолжаться сколько угодно). И, если отрендеренная картинка меня устроит - продолжить выполнение скрипта дальше.
Возможно ли относительно несложно реализовать такую задачу? Или это из разряда невозможного?
Используем Keyboard Entry. Пример:
В новой сцене создаем 1 чайник Teapot.
Конвертируем чайник в Editable Mesh. Выделяем чайник.
Открываем окно Render Scene (нажимаем F10).
Открываем окно MAXScript Listener (нажимаем F11).
Запускаем скрипт.
В окне MAXScript Listener вводим значение 50. Нажимаем Enter.
Нажимаем кнопку Render.
Если результат не устраивает, тогда нажимаем кнопку Undo (Ctrl+Z).
Активируем окно MAXScript Listener.
Вводим другое значение. Нажимаем Enter.
Нажимаем кнопку Render.
Если результат устраивает, тогда активируем окно MAXScript Listener и нажимаем клавишу Escape.
print "start code"
-------------
test=1; while test==1 do
(
v = getKBValue prompt:"Enter extrude value:"
if(classOf v == integer or classOf v == float)then
(
meshop.extrudeFaces $ #{1..$.numfaces} v -1.0
update $; redrawviews()
)--if(classOf v == integer or classOf v == float)then
if v==#escape do test=0
)--while test==1 do
--------------
print "end code"
Доступ к резюме доступен только по пакетному доступу HR менеджерам зарегистрированных компаний. Узнать о вариантах корпоративных пакетов можно по ссылке.
ARTIS
Среди прочего есть вот такая строка:
meshop.extrudeFaces $ #{1..$.numfaces} 50 -1.0Мне нужно сделать следующее: каждый раз вручную вводить величину экструда (в данном случае 50), после этого сделать тестовый рендер, далее поправить введённую величину, если нужно (цикл правка-рендер может продолжаться сколько угодно). И, если отрендеренная картинка меня устроит - продолжить выполнение скрипта дальше.Возможно ли относительно несложно реализовать такую задачу? Или это из разряда невозможного?
igorznag
В новой сцене создаем 1 чайник Teapot.
Конвертируем чайник в Editable Mesh. Выделяем чайник.
Открываем окно Render Scene (нажимаем F10).
Открываем окно MAXScript Listener (нажимаем F11).
Запускаем скрипт.
В окне MAXScript Listener вводим значение 50. Нажимаем Enter.
Нажимаем кнопку Render.
Если результат не устраивает, тогда нажимаем кнопку Undo (Ctrl+Z).
Активируем окно MAXScript Listener.
Вводим другое значение. Нажимаем Enter.
Нажимаем кнопку Render.
Если результат устраивает, тогда активируем окно MAXScript Listener и нажимаем клавишу Escape.
print "start code" ------------- test=1; while test==1 do ( v = getKBValue prompt:"Enter extrude value:" if(classOf v == integer or classOf v == float)then ( meshop.extrudeFaces $ #{1..$.numfaces} v -1.0 update $; redrawviews() )--if(classOf v == integer or classOf v == float)then if v==#escape do test=0 )--while test==1 do -------------- print "end code"ARTIS