Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

** Community Tip** - Your Friends List is a way to easily have access to the community members that you interact with the most!
X

- Community
- Creo (Previous to May 2018)
- Creo Modeling Questions
- make spiral hexagon

Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

Jul 24, 2014
09:18 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 24, 2014
09:18 AM

make spiral hexagon

do any one help me to make hexagonal spiral profile with use of equation or any other method.

42 REPLIES 42

Jul 24, 2014
12:49 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 24, 2014
12:49 PM

Do you mean something like this?

I used a curve driven by a cylindrical equation and a swept blend. There are other ways... for instance you could use the trajpar variable to perform a variable section sweep while rotating the hex shape.

In fact, I like that second way better (it's more flexible and robust)... but no one ever uses a Swept Blend so I figured I'd dust it off for this example. I've attached a file to play with (Creo 2 format).

Thanks..

-Brian

PS: Edit the curve equation. By changing the value in red in the line that says: theta = t * 360 * **1** you can add more turns. For example, change the line to** theta = t * 360 *5** to add 5 turns.

Jul 25, 2014
03:11 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
03:11 AM

brian I need to make a spring like given below

Jul 25, 2014
03:34 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
03:34 AM

Hi,

I guess you have to generate the hexagonal trajectory outside of Creo into so called IBL file. Then you will be able to create a curve in Creo using this IBL file.

Inside attached TXT file you will find a link to web page containing info about IBL.

Martin Hanak

Martin Hanák

Jul 25, 2014
05:26 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
05:26 AM

Hi, a simple method would be to extrude an hexagonal surface, & wrap a line around it, & use this as a trajectory for a sweep. Not very scientific, but simple, & seems to work. Good luck.

John

Jul 25, 2014
08:17 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
08:17 AM

john i made it. but after sweeping the profile the extrude surface as remain which was made it in begining, so how do I remove it.

Jul 25, 2014
08:23 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
08:23 AM

You can't remove it, you hide it, so it is no longer visible in the model. Do this by layer, or simply select in model tree, RMB, hide.

John

Jul 28, 2014
07:40 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 28, 2014
07:40 AM

thank you john..i also got it

Jul 26, 2014
03:15 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 26, 2014
03:15 PM

Is it important that it is parametric?

Is it important that the verticies are sharp?

Is it important that the segments between the verticies are straight?

Is this to represent the actual formed wire?

Jul 25, 2014
08:19 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
08:19 AM

martin I am first time heard about IBL do u tell me how do i create profile using IBL

Jul 25, 2014
08:57 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
08:57 AM

I would not go with an IBL, this entire thing can be done in Creo. John's suggestion is good. Amy of Vladimir Palffy's work with trajpar and variable section sweeps is also applicable. I'm on the road at the moment but I will link to some pertinent threads when I get to my computer.

Thanks,

Brian

Jul 25, 2014
04:31 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
04:31 PM

Ah... like I said... go to Vladimir Palffy's blog. You can pretty much make anything into a spring using his technique. It's a bit of what John Pryal suggested with the addition of a straight curve. The technique uses a variable section sweep and the trajpar variable to create a complex curve...

http://communities.ptc.com/blogs/vpalffy/2011/02/09/user-defined-springs

All the credit goes to Vladimir... he's quite the Creo genius.

Thanks...

-Brian

Jul 25, 2014
04:51 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
04:51 PM

Some care must be taken when defining non-round springs as the slope is not consistent if you intersect a revolve surface with the profile. John's wrap takes this into account.

Somewhere I have also seen a sheetmetal video on defining the trajectory on a flattened sheetmetal profile. I can't find that one.

Jul 25, 2014
08:12 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
08:12 PM

Seems to me we should be able to define a cylindrical equation for an n-sided polgyon that provides a clean curve with no crazy wraps or intersections.

A quick glance on google shows several techniques for doing this. I'd imagine the floor command would be used to generate the straight edges.

We can generate the cylindrical equation of a circle using the default suggestions:

r = 1

theta = t * 360

z = 0

To convert this to a hex, we need the radius to be precisely 1 at each 60 degree inteval and "some lesser value" at the points in between. The "apothem" of the hexagon is the distance from the center point to the midpoint of one of the straight sides. We can calculate this using the following equation:

apothem = r cos (180 / n)

In that equation, 'n' is the number of sides. Of course, we're using a hexagon so that number is 6. Therefore...

apothem = r cos (30)

So then we need to vary the radius r everywhere *except* at exactly 60 degree intervals (60, 120, 180, 240, etc). The radius value will fall between 1 (because in this example I used r = 1) and the apothem. At 60, 120, 180, 240, and 300, the radius will equal 1 precisely. At 30, 90, 150, 210, 270, and 330 the radius will be the apothem value. The value will oscillate, like a sin wave, between those two values.

This is getting very close to an equation for r. It seems to me we if we just flesh out this final equation, we'll actually have the equation for a hexagon that can then be varied over 'z' to provide a spring trajectory.

For whatever reason, this is just not coming to me tonight- perhaps its the impending Windchill migration. But it seems totally solvable without resorting to wraps or intersecting curves.

Thanks!

-Brian

Jul 25, 2014
08:27 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
08:27 PM

Funny thing is, when I tried John's method, I got a good wrap, but the sweep fails to generate. Of course, the wire needs some radius so building the swept round feature would be outside the guide curve.

I like your thinking though, Brian We miss you around here!

Jul 25, 2014
11:25 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
11:25 PM

From Help:

Note: | You cannot use the following statements in an equation that defines a datum curve: abs,ceil, floor, else, extract, if, endif, itos, and search. |

Perhaps Fourier will help in transforming a summation of a sufficient number of sine terms into a hex.

Jul 25, 2014
11:54 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 25, 2014
11:54 PM

OUCH!

Jul 27, 2014
03:52 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 27, 2014
03:52 PM

After further examination, you do * not* need to use

One statement that * is allowed* is

Most of the online discussions I found for creating an equation of a hex were written for other programs... or were provided for theoretical discourse. We have a very special situation and a non-typical type of equation builder in Creo. I've successfully created all sorts of strange shapes using equations. It seems to me that if someone could figure this out, the same basic equation could be used for all n-sided polygons.

Jul 27, 2014
04:29 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 27, 2014
04:29 PM

This one reads pretty straight forward to Creo, but I don't know what the %% does...

Replace a couple of statements with respect to "t". The key element is "r".

What do MOD and BOUND do?

Jul 27, 2014
08:30 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 27, 2014
08:30 PM

IN R, the "%%" operator stands for Modulus, binary (takes two arguments, not a bitwise modulus)

In PTC relations:

mod(x,y) is the remainder function, that is x–int(x/y)*y, where int() is “integer part of”. The sign of the result is always the same as the sign of x.

bound(x,lo,hi) Limits x between the ‘lo’ and the ‘hi’ values. If x < lo; the result of the function is lo; if x > hi, the result is hi; for all other values of x, the result of the function is x. The ‘lo’ value must be smaller than the ‘hi’ value.

It's odd if they support mod and bound, but not ceil; they all interfere with determining derivatives; second derivative particularly at places that move from one side to the other of the point they trigger.

Jul 27, 2014
08:45 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 27, 2014
08:45 PM

I could have looked for eons in the PTC help and never got that much information.

Thanks for that, David!

Jul 27, 2014
10:57 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 27, 2014
10:57 PM

Hi Antonius...

That information is available in the help files under "Functions Used in Relations". Here's a link to the page for Creo 3 containing all that information...

Here's an example showing that **mod** is, indeed, supported.

This link goes to the page where the restrictions on ceil, floor, abs, etc are mentioned.

All we need now is for someone with time on their hands to work out the equation for 'r' and we're all set!

Thanks,

-Brian

Jul 28, 2014
12:46 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 28, 2014
12:46 AM

He already showed you the equation.

Jul 28, 2014
09:49 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 28, 2014
09:49 AM

Although it was fairly easy to translate the above R code into a CREO curve from equation, at least for one "turn" of the spring, the results are not satisfactory. Examine the image and notice that the generated curve is a spline and using it for sweeps leads to errors related to model accuracy.

Jul 28, 2014
12:13 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 28, 2014
12:13 PM

Nice work, Paul!

I think the site specifically noted using a polar coordinate curve (cylindrical).

It should end up being the same.

This is my result...

Is the error in Creo or in the formula?

Jul 28, 2014
12:49 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 28, 2014
12:49 PM

If the operation is done correctly there is infinite curvature at the corners and zero curvature everywhere else.

As I wrote before "It's odd if they support mod and bound, but not ceil; they all interfere with determining derivatives; second derivative particularly at places that move from one side to the other of the point they trigger"

When there is an instantaneous change in direction, the slope changes from one value to another without intermediates. dy/dx on the first section goes to a new value of dy/dx on the second section. Being instanteous the interval is zero resulting in d(dy/dx)/0, which equals infinity.

I'd say that PTC has done a fair job of producing the curve.

Jul 28, 2014
12:54 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Jul 28, 2014
12:54 PM

Makes sense. I do know that accuracy settings greatly affect equation curves.

It is certainly better than a fatal hard crash

Aug 05, 2014
06:18 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Aug 05, 2014
06:18 PM

I missed part of the conversation and didn't notice you'd already translated the equation into polar coordinates. Nice work!

Aug 05, 2014
06:51 PM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Aug 05, 2014
06:51 PM

Actually, Paul did that... but in the end, Creo will not make sharp corners. I tried using a pure curve *6 in a evalgraph sketch and even then, Creo would round the ends although the original curve was perfect.

Aug 01, 2014
10:49 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator

Aug 01, 2014
10:49 AM

True. Although I think the shape you get intersecting a hexagon surface with a spiral is more what you would get in the actual production of a hexagon spring, because you'd be winding a wire around a mandrel, and the machine would be spinning the wire at a constant rate as the mandrel spins at a constant rate.