Как создать сплайн

Создаем сплайн-примитив (круглый)

circle = c4d.BaseObject(c4d.Osplinecircle)

А так же Osplinearc, Osplinestar, Osplineflower, Osplineformula и др.

либо создаем пользовательский сплайн, первый аргумент - количество точек

spline = c4d.SplineObject(2, c4d.SPLINETYPE_LINEAR)

типы точек: SPLINETYPE_LINEAR, SPLINETYPE_CUBIC, SPLINETYPE_AKIMA, SPLINETYPE_BSPLINE.

Если нужно задать количество сегментов или изменить количество точек:

spline.ResizeObject(8,2)

первый аргумент количество точек, второй сегментов

Задаем количество точек в сегменте

spline.SetSegment(0, 4, True)

Задаем точки

spline.SetPoint(0, c4d.Vector(-100, -100, -100))
spline.SetPoint(1, c4d.Vector(100, -100, -100))
spline.SetPoint(2, c4d.Vector(100, 100, -100))
spline.SetPoint(3, c4d.Vector(-100, 100, -100))

Вставляем в документ и обновляем

doc.InsertObject(spline)
c4d.EventAdd()

У SPLINETYPE_LINEAR и SPLINETYPE_BSPLINE нет ручек для настройки кривых (тангенсов)

Last updated