Здравствуйте. Требуется помощь в доработке скрипта.
Хочется в инструментах макса иметь отдельный - примитив цилиндр. Смысл его в том, что в процессе его создания, количество его сечений изменялось в зависимости от его диаметра. Т.е. например, если его радиус 50 см, то сечений 60, если радиус уменьшается до 40, то сечений становится 48 и т.д.
Вот такой кусок у меня есть сейчас. Не совсем понимаю, куда можно воткнуть функцию проверки радиуса по необходимым мне значениям, чтобы измениния происходили в реальном времени, а не после завершения создания примитива.
on buildmesh do
(
Obj=cylinder()
Obj.smooth=true
Obj.heightsegs=0
Obj.capsegs=1
Obj.sides=Sides
Obj.height=Height
Obj.Radius=Radius
Obj.mapcoords=on
setmesh mesh Obj.mesh
delete Obj
)
tool create
(
on mousePoint click do
case click of
(
1: nodeTM.translation = gridPoint
)
on mouseMove click do
case click of
(
3: Radius=gridDist.x
4: height=gridDist.z
)
)
Хочется в инструментах макса иметь отдельный - примитив цилиндр. Смысл его в том, что в процессе его создания, количество его сечений изменялось в зависимости от его диаметра. Т.е. например, если его радиус 50 см, то сечений 60, если радиус уменьшается до 40, то сечений становится 48 и т.д.
Вот такой кусок у меня есть сейчас. Не совсем понимаю, куда можно воткнуть функцию проверки радиуса по необходимым мне значениям, чтобы измениния происходили в реальном времени, а не после завершения создания примитива.
on buildmesh do
(
Obj=cylinder()
Obj.smooth=true
Obj.heightsegs=0
Obj.capsegs=1
Obj.sides=Sides
Obj.height=Height
Obj.Radius=Radius
Obj.mapcoords=on
setmesh mesh Obj.mesh
delete Obj
)
tool create
(
on mousePoint click do
case click of
(
1: nodeTM.translation = gridPoint
)
on mouseMove click do
case click of
(
3: Radius=gridDist.x
4: height=gridDist.z
)
)