Render.ru

Семейство объектов, заданное математической формулой

Dims

Активный участник
Рейтинг
5
#1
Мне надо сформировать семейство цилиндров (или других объектов), которые находятся на расстояниях x_n = 1/d_n от начала координат, имеют длину, диаметр и угол поворота, пропорциональные этому расстоянию.

Вроде бы, стандартные средства вроде Array для этого не подходят.

Есть ли в Максе средства, для построения фигур по обобщённым математическим законам? Может, можно какой-то скрипт написать?

Не подскажете ли вкратце, как?
 

Alex7

Знаток
Рейтинг
56
#2
nnn = 10
H = 100
R = 10
D = 300
for i = 1 to nnn do
(
local tempH = H/i
local tempR = R/i
local tempD = D/i
local angle = 10*(i-1)
Cylinder smooth:eek:n heightsegs:5 capsegs:1 sides:18 height:tempH radius:tempR mapcoords:eek:n pos:[tempD,0,0] isSelected:eek:n

rotate $ (angleaxis angle [0,0,1])
)


Этот скрипт циклом создаст 10 цилиндров с уменьшающимися координатами по X
уменьшающимися радиусами и высотой, а также поворачивающихся на 10 градусов
по коду очевидно как

написал этот код поскольку не совсем понял, что означает d_n
таким же способом делай то, что тебе нужно
(на всякий случай... этот код впиши в MaxScript -> NewScript
затем там же Evaluate All)
этот код естественно можно сделать поэлегантней и поуниверсальней
вообще стоит поизучать MaxScript Reference
или использовать Macro Recoder, если мануал читать лень
скрипты полезная вещь :)
 
Сверху