Majik Tutorial: Telephone Cord  1-20  21-23

Next
 From:  Mike K4ICY (MAJIKMIKE)
4722.1 
I plan on modeling some type of flexible metal conduit hose for my shower head assembly in my bathroom scene.
The new V3 Flow tool is perfect for that.

The process also applies to modeling helically wound objects like telephone cords, and that is what this tutorial is on.



Here is an attractive and realistic looking telephone cord.


So... All you have to do is sweep a profile shape on a helix and use Flow to wrap it along a path...

Here is where this doesn't quite yield the best result:



In this example you see what happens to objects that are warped on a Flowed path.
The objects inside of a bend are compressed and the objects outside are expanded.

This is okay if the item is not highly visible with detail, but what if you want more realism in the particular model?

Well lets make that cord...

Start with a basic path:



A nice hanging line shape. You can use a catenary curve or course, but telephone cords made from rubber and wire are more awkward.


Lets use the new Twist tool!
This gives it a little more realism.



Please note that this is a path to follow here. Keep in mind that the cord is going to have x-amount of thickness. So don't let the curve come too close on itself.


Hard to see here, but here is the curve with a little undulation added to the path:




We need to make a straight reference line by which to draw our cords helix sweep path:




Here's the helix created on the reference line:




Here's the helix Flowed to the path:




Next, let's draw the profile shape to Sweep along the final helix:

We are going to Flow the profiles on to the final Flowed helix path.
And we'll be sweeping the flow-placed profile ON the flowed helix.



In this case, I want a rounded rectangle. If you create a similar object like a helical conduit made of metal, then perhaps a chamferred corner will do on the shape.


Here is a major issue!

There are a few different modes with the Sweep command that tell it how to carry the profile shape along the path.
1) If you choose "Freeform" mode, the profile will kind of follow the path curve, making banks and turns to allow for a graceful sweep result.



2) "Straight" mode is suggested if you are moving the sweep path in one direction. (As shown in the example at the beginning.)

Here, you can see what happens if you don't choose a direction:



Kind of cool, actually. But not what I needed.

Some facts about MoI's Sweep command:

If a profile shape is place off and away from the "bounding box" area of the sweep curve, then MoI will automatically take the profile shape(s) into consideration and sweep them. As shown in one of Michael's videos, the Sweep tool will see them in order as you have them arranged off to the side and merge their shapes into each other as the go down the line.
But this option does not take into account your intended orientation.

To enforce an exact orientation along the path - the second option for the Sweep command is to physically place the profile objects ON the path itself.
And just a few profile shapes along the away isn't good enough.



Here you see that I have used the Array Direction command to make copies that physically sit at some point along each rotation of the original helix object.

But this is still not good enough! Because the Sweep command is trying to match the shapes along a winding, and twisting helical path, you'll actually get a kind of funny blending effect as the long sides morph into the short sides and back.

You need to place copies along the path in EACH quadrant of the helix's rotation:




Now you think - All we have to do is Flow all of this to the path... Not exactly. If you do this, the Flow tool will warp your profile shapes.
This is a simple two-step process.

The first part, was done already. The helix was Flowed to the target curve with a regular flowing option.

The profile shapes need to be now Flowed as well!
But this time you'll need to activate the "Rigid" option.



And here we go... Now all of the profile objects are in place, except they retain their proportions.
Keep in mind that if the first helix object is stretched due to the difference in reference curve and target curve lengths, the profile shapes may actually need to be re-sized prior to flowing again.


You may notice that if your profile shapes are flowed on the target curve while they are kept rigid, some may now overlap.
This will cause a collision in your sweep path.
This may be allowable in your rendering if it is not too close, but you may want to now move them a bit.
This will actually make it look a little more realistic. A phone cord will behave in this way, but a metal flexible conduit pipe may not. You'll have to consider that.




Here you see what happens as you place the profile shape right on the path curve itself: A consistent sweep is created.




Here you go:




So to summarize: As with a real-life phone cord, the wire is shaped to conform to the helix configuration along it's implied path.
This is one way to mimic the same action and get a nice result using Flow and Sweep.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  FelixPQ (FELIX)
4722.2 In reply to 4722.1 
Hi Magic,

excellent! Excellent! Excellent!

If only I could connect my computer to my brain... Maybe in some other life.

Thanks,
Felix
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
4722.3 
Allo ? ;)
---
Pilou
Is beautiful that please without concept!
My Gallery
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Rich_Art
4722.4 In reply to 4722.3 
Thanks for another nice tutorial. :-)

Peace,
Rich_Art. ;-)

| C4DLounge.eu | Our Dutch/Belgium C4D forum. Cinema4D R13 Studio + VrayForC4D + UVLayout Pro + 3DCoat
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  ed (EDDYF)
4722.5 
A tutorial that reads like a mystery novel.

But I liked the twist at the ending :)

Ed
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Stever_uk (STEVER)
4722.6 
Wow..... nice, very nice indeed



Steve
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Mike K4ICY (MAJIKMIKE)
4722.7 
Why thanks, guys!

Me thinks - I might have to make the whole phone now. ;-)
Rotary, of course.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Don (DON_CHEKE)
4722.8 In reply to 4722.7 
Please do - make the phone tutorial, that is. One of the first models I attempted was the old rotary telephone. It was giving me much trouble and I didn't have the phone to get dimensions so I didn't get too far. I have had so little time to play with MoI for many months now but I still have my desire to master it.
Image Attachments:
Size: 95.7 KB, Downloaded: 46 times, Dimensions: 611x574px
Size: 58.1 KB, Downloaded: 75 times, Dimensions: 492x292px
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Mike K4ICY (MAJIKMIKE)
4722.9 In reply to 4722.8 
I'd like to!

Most of us, 40 and over, at least had them around as children. It was "the phone". We even had a two-party phone number line until 1980.
I've got to find some better dimensions, then it should be straight forward.

To think, the ubiquitous 1970's style phone is a retro-relic.
In my mind, at the moment I see constructing the body of the phone with maybe first a loft, then the angled face would be trimmed with a simple curved network surface, then a bit of filleting.
But without one in front of me, or some good plans, I'd only be able to conjure a stylistic version.

Maybe sometime next week.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Marc (TELLIER)
4722.10 In reply to 4722.9 
Great tutorial Mike!

Marc
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  SurlyBird
4722.11 
Thanks for writing this, Majik. Never know when you have to model something like this and these kind of tutorials are invaluable when those occasions happen.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  fleetfoot
4722.12 
Hi Mike,

I tried to follow your demonstration, and it went well, except at the final step my cord shape result has weird twists in it.
It looks like the end parts of the cord change to become the flats and then back again.
Any idea what I did wrong?

Thanks for all your tutorials. I'm finding them helpful in understanding MoI.

Cheers!
fleetfoot



  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4722.13 In reply to 4722.12 
Hi fleetfoot - it looks like you may need to use a few more sections so that the sweep profiles are just a little bit denser.

It looks like you've got just enough space between each one that the profile twists enough until it hit the next one that it gets confused about how to match up the segments between profile. It tries to connect up segments between profiles to minimize distance between them.

Your problem is that right now you've got the wrong segments being matched up. But if you had a bit more profiles there would not be as much rotation happening for each one as it traveled along the path and then tried to match segments so it should help with the segment matching.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  fleetfoot
4722.14 In reply to 4722.13 
Thanks Michael,

I shortened the pitch and increased the turns of the helix and that did the trick. Now I know what to look for if a sweep does not seem to give a result I'm looking for.

Cheers!
fleetfoot
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Mike K4ICY (MAJIKMIKE)
4722.15 
> It looks like you've got just enough space between each one that the profile twists enough until it hit the next one that it gets confused about how to match up the segments between profile. It tries to connect up segments between profiles to minimize distance between them.

Fleetfoot, Michael is right. I had to add so many extra segments (a set for each quadrant) because the Sweep command wanted to shift the segment start position based on each profile, and it looked like your example.

It appears that you have found an additional and important consideration when making a sweep for this type of object:

If the pitch of the helix increases, so does the "jump" distance between the profiles that Sweep has to negotiate.
Thus, the solution is to either 1) maintain a slower pitch. Or 2) Add additional profiles in the in-between areas to make the "jump" distance smaller for Sweep.
Notice how I made duplicate profiles in the North-West-East-South areas. Adding more copies in tighter areas, like NW-SW-SE-NE will shorten the gap that Sweep has to jump.


Michael, I don't know if this was a coherent enough explanation to exbound on your above statement... I know exactly what is happening, but I don't really know how to describe it. :-/
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  BurrMan
4722.16 In reply to 4722.15 
Dont forget that "autoplace" can be your friend here too... So no need for 100 profiles. This single profile moved off to the side and swept on the helix, adhere's just the same throughout the sweep.....

EDITED: 19 Jun 2012 by BURRMAN

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Mike K4ICY (MAJIKMIKE)
4722.17 In reply to 4722.16 
Yes BurrMan,

Using Autoplace works well, and will provide the fastest solution.
I can't quite remember why I needed the profiles to "match up", but adding the profile copies is what solved whatever it was.

I know that one object I had was to make the cord look more natural, especially in the tight-radius turn areas, where the Autoplace would overlap or collide result geometry.
And I tweaked the position of some of the profiles to get a natural looking placement.

Nice result on the model Burr. :-)




Notice though, even in your example, you can see where Sweep provided that particular result as it tries to negotiate auto-profile to auto-profile.
The thing tends to twist around a lot in the result.
I don't know about your model, but when I tried it, I had a lot of this creasing stuff where a corner would become a top and a side would become a corner and so forth - with lots of uneven creasing going on.

If a cord like this looks clean in the final render, then Autoplace is the way to go. Would a UV texture unwrapper do a good job with this. (not sure).
But with this point being made, it's nice to have multiple options to accomplish a task.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4722.18 In reply to 4722.17 
Autoplace just takes a profile curve that's flat on the cplane and moves and rotates it so that it's perpendicular to the start tangent of the rail. Then after that it's the same thing as doing a sweep with just one profile at the start of the rail.

Then the main thing that will govern a long sweep that uses just 1 profile is the twist behavior for how the profile rotates as it travels along the rail.

The default freeform twist gradually banks the profile as it travels along the path. If you set twist = flat you can then set a direction and the profile will be constrained to only rotate around that particular direction as it travels along the path instead of banking more freely.

If neither of those gives you the kind of banking behavior that you need, then you may need to fill in a bunch of profiles like this to more specifically control it. I guess in this case you would want a similar kind of constraint as the twist=flat but instead of it being in just one constant direction it would be constrained to the tangent of the centerline curve.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
4722.19 In reply to 4722.16 
Hi Burr - are you also using sweep on the 3D curve there or only doing a sweep on the straight one and then a Flow to put that onto the curved one?

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  BurrMan
4722.20 In reply to 4722.19 
Hi,
No, I did the sweep with the profile on the helix, with a flat setting, then I would flow it to the 3d curve. If I left the original 3d curve cord in, it was untouched by be. My picture is just the helix sweep. But Majik reminded me of his original thread that prompted him to control it with multiple, exact placed profiles... I didnt check the entire sweep for those other errors, so I assmee'd... :o
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All

 

 
Show messages:  1-20  21-23