I’m trying to read a spline with subsplines in 3dsmax with out much success, for example in Maxscript i could do this.
fn getVertex splines =
(
thePoints = #() -- array of vertex positions
theShapes = for o in splines where superclassof o == Shape collect o
for o = 1 to theShapes.count do
(
local subLineCount = numSplines theShapes[o] -- number of splines in the current spline
for s = 1 to subLineCount do
(
local numOfPoints = (numknots theShapes[o] s)
for i = 1 to numOfPoints do
(
tmpNod = [0,0,0]
tmp = (getknotpoint theShapes[o] s i)
tmpNod.x = tmp.x
tmpNod.y = tmp.y
tmpNod.z = tmp.z
append thePoints tmpNod
)
)
)
return thePoints
)
getVertex selection
but with Max Python? with the following code for reading a single spline i tough it worked but the points are all wrong, does anyone knows how i could do it?
def readShapes(node):
points = []
# check if its a spline
if node.Object.GetClassName() == "SplineShape":
Shp = MaxPlus.SplineShape__CastFrom(node.GetObject())
numVerts = Shp.GetNumberOfVertices()
for v in range(numVerts):
p = Shp.GetPoint(v)
print p
points.append(p)
return points
n = MaxPlus.SelectionManager.GetNode(0)
eadShapes(n)
any help appreciated.
Guillermo Leal.