Way to clean up complicated curves?

Digital fabricator here, having to cut measure and alter complex curves to fit hand-built geometry. It means A LOT of exploding, tweaking, joining, exploding, ect. and after about an hour of work my curves are disgusting. Exploding a closed curve results in dozens of tiny, barely visible segments that keep tripping me up and sabotaging snap reliability.

What can I do? Rebuild Curve isn’t a solution, the curves are curved and polygonal at different sections.

Hi Wespor - best to post an example…


Not sure that would help, think I’m just not explaining myself well. If I make a S shape curve and split it into 10 pieces and rejoin the the parts into one curve. I’m going to have 20 end point snaps instead of 2 and 10 middle snaps instead of 1, even though it’s the same, single curve when joined. I’d like to know how, if possible, to do a true join. The regular join command just feels like a glorified group command to me.

Hi Wespor - why are you doing this?


It was a simplified hypothetical. I’m heavily modifying curves and the snaps are geting really complicated.

you have 2 options, a fast one which will increase the CP´s of your curve segment but having the curve chopped into millions i guess that might not bother you much :slight_smile: anyway use Join and FitCrv with the same degree as the original curves and something like 0.1 tolerance, you may have to play with this to get the best result, if you go to high the curve will change of course you may even have to go lower to 0.01 but will see, after that it becomes one continuous curve with no end points other than as many as a sausage naturally has :wink:

second method is more handwork use match to match two ends together and choose continuity curvature then merge as an option will get available and it will merge the curves instead of join. you will have quite some knots more but you can use RemoveMultiKnot. just be aware that it can still be explodable at some parts so this might not offer you a complete continuous curve.

both are quite some work and i would suggest you to just keep the original curves on an extra layer or hide them and you reuse them again instead of joining tons of bulls excrements together.

1 Like

Don’t split your original curves. If you need a portion of a curve for modeling use SubCrv with Copy=Yes to extract the required part of the curve. Or copy the curve, possibly to another layer, and use Split, Trim, SubCrv, etc to obtain the desired portion of the curve.

Also use layers to separate various curves. Then you can turn layers on and off to control what is visible and snapped to.

1 Like

Didn’t know about SubCrv, that’s great! I’m always splitting or trimming curves. Thanks.

I use two methods depending on what I am doing.

If there are a lot of curves that overlap and need trimming, then I use Curve Boolean. CrvBoolean can really cut up the curves nice.

If a polyline needs to be re-built as a NURBs curve, but there are also some sharp corners I preserve, then use this interp script. It will preserve corners over a specific break angle.

InterpPolyline.py (6.4 KB)