MoI discussion forum
MoI discussion forum

Full Version: Alternating shapes along a sweep rail

From: submono
13 Jan 2019   [#1]
Hi,

I'm trying to sweep two different shapes along a rail curve in an alternating way. The only way I have found is to make a lot of shapes and assign them all one after the other. This is not only very cumbersome but the resulting sweep also doesn't evenly distribute the shapes along the rail (see attached). Is there an easy way to assign two (or more) shapes and tell MoI to repeat them along the curve x-times with even distribution? I'm trying to model shrink wrapped cables and would love to do this in MoI because no pesky polygons :)

Sven

Image Attachments:
sweep.jpg 


From: bemfarmer
13 Jan 2019   [#2] In reply to [#1]
Transform/Array/Curve? of a basic blended sphere-rectangle unit along a line, then use Flow from line to curve?
- Brian
From: submono
13 Jan 2019   [#3]
Won't work in my case. Deform/Flow is a bit unpredictable and I need the precision of a spline to connect two defined points. Also I'd like to keep it "live" for as long as possible.

Edit: okay, it's not as unpredictable as I though with the stretch option. But still, keeping it live and editable is important
From: Michael Gibson
13 Jan 2019   [#4] In reply to [#3]
Hi submono, I would also recommend using Flow. You can make the result of flow to be editable through history by selecting the output and using Edit > History > "Enable update" button.

- Michael
From: OSTexo
13 Jan 2019   [#5]
Hello,

Distortion will be greatly reduced in many cases if you take a few extra steps initially.

Once you have drawn the center spine of your cable use the Unwrap Curve plugin on the forum and unwrap the center line curve.
Align the unwrapped curve along a major axis.
Create the shrink wrap object and modify/scale accordingly, snapping to both ends of the unwrapped curve.
Flow the object along the center spine curve.

It would be useful to have a plugin which would call for a specific length of curve, allowing one to bend and modify that curve while keeping the length locked, but I'm not sure that will ever happen.
From: submono
13 Jan 2019   [#6] In reply to [#4]
Hi ! Hmm, this kinda works but I get artifacts and heavy compression/stretching along the resulting object as the target curve (which will need to be bent in all three dimensions) does not have the same length as the base curve. also the whole process gets really, really slow as the flow command takes a while on more complex geometry. I guess I skip the live/interactive part altogether and do it sub-d in rocket. But thanks to the both of you!
From: submono
13 Jan 2019   [#7] In reply to [#5]
Hi OSTexo,

thanks! Just saw your post after my last message to Michael. Will try the Unwrap Curve Plugin tomorrow and see if I'll get better results.
From: OSTexo
13 Jan 2019   [#8]
Hello,

I'm sure there isn't collision detection in the Flow command, as distortion will occur in very sharp angles, however this isn't usually an insurmountable issue, it just involves some manual positioning along your unwrapped curve.

Interestingly you could also Flow your core along the curve and use a combination of Offset/Boolean/Fillet which will leave you with even less distortion in the model as well as the core and sleeve as separate parts.

Are you able to share a curve, primitives and their count, as well as a sleeve thickness?

The Flow calculation for this part took less than 5 seconds on old hardware.

Image Attachments:
flow.png 


From: Michael Gibson
13 Jan 2019   [#9] In reply to [#5]
Hi OSTexo,

re:
> It would be useful to have a plugin which would call for a specific length of curve, allowing
> one to bend and modify that curve while keeping the length locked, but I'm not sure that
> will ever happen.

The underlying mechanics of NURBS does not really lend itself well to this kind of process unfortunately.

- Michael
From: bemfarmer
13 Jan 2019   [#10]
The (straight-line) unwrapped curve is the same length as the original curvy curve.
From: submono
14 Jan 2019   [#11] In reply to [#10]
Hi guys, got it to work using the UnwrapCurve plugin and after rebuilding the target curve :) Also actually building the flow object was now instantaneously. My mistake was not to Boolean Union the segments of the cable. History works beautifully now although with the many points on my rebuilt curve it is not very useful. In the future I'll just add some strategic points on the target curve to make it easier to handle. Anyway, it's now a fast and reliable workflow and means one less trip to polyland. Thanks everyone!

Image Attachments:
ctest.3dm - MoI.jpg