Alan, THANKS! This turned out to be extraordinarily useful!
-- Joey Ponthieux LaRC Information Technology Enhanced Services (LITES) Mymic Technical Services NASA Langley Research Center __________________________________________________ Opinions stated here-in are strictly those of the author and do not represent the opinions of NASA or any other party. From: [email protected] [mailto:[email protected]] On Behalf Of Alan Fregtman Sent: Friday, August 02, 2013 1:48 PM To: XSI Mailing List Subject: Re: Convert curve to linear Here's a script that I made that I use when I need nicely spaced curve points: si = Application def frange(x, y, jump): ''' Like range() but with float values. ''' while x < y: yield x x += jump def evenPositions(crv, quantity): ''' Get an amount of evenly spaced positions on a given curve. ''' subcrv = crv.ActivePrimitive.Geometry.Curves(0) percs = [num for num in frange(0.0, 100.0, 100.0 / quantity)] percs.append(100) ppos = [ subcrv.EvaluatePosition( subcrv.GetUFromPercentage(percs[i]) )[0] for i in xrange(len(percs)) ] return ppos def main(): size = float( Application.XSIInputBox("What spacing do you want between points, in XSI units?", "Spacing?", 1) ) newCurves = [] si.OpenUndo("Make evenly spread linear curves") for crv in si.Selection: quantity = int(crv.ActivePrimitive.Geometry.Curves(0).Length / size) positions = evenPositions(crv, quantity) positions = ["(%s,%s,%s)" % (a.X,a.Y,a.Z) for a in positions] newCurve = si.CreateCurve( 1, 0, ",".join(positions), False)('Value') newCurve.Name = crv.Name+'_evenlySpaced' newCurves.append(newCurve) si.SelectObj(newCurves) si.CloseUndo() main() On Fri, Aug 2, 2013 at 11:26 AM, Ponthieux, Joseph G. (LARC-E1A)[LITES] <[email protected]<mailto:[email protected]>> wrote: Rob, Yeah, its turns out that this might be a far more reliable method than what I was trying to accomplish. I guess I'll have to make a copy of every curve, but there are far fewer curves than objects or strands. This might solve the problem nicely. Thanks -- Joey Ponthieux LaRC Information Technology Enhanced Services (LITES) Mymic Technical Services NASA Langley Research Center __________________________________________________ Opinions stated here-in are strictly those of the author and do not represent the opinions of NASA or any other party. -----Original Message----- From: [email protected]<mailto:[email protected]> [mailto:[email protected]<mailto:[email protected]>] On Behalf Of Rob Chapman Sent: Friday, August 02, 2013 9:16 AM To: [email protected]<mailto:[email protected]> Subject: Re: Convert curve to linear yes! create > curve > fit on curve I was going to suggest it earlier but your point 3. requirements said it must fit with *any* curve :) change to degree linear, subdivision high and untick maintain discontinuity On 2 August 2013 15:11, Ponthieux, Joseph G. (LARC-E1A)[LITES] <[email protected]<mailto:[email protected]>> wrote: > Is there in any way in Soft to convert a NURBS curve of any shape, to > a high density linear curve with equidistant points? > > > > -- > > Joey Ponthieux > > LaRC Information Technology Enhanced Services (LITES) > > Mymic Technical Services > > NASA Langley Research Center > > __________________________________________________ > > Opinions stated here-in are strictly those of the author and do not > > represent the opinions of NASA or any other party. > >

