Pattern with fixed spacing but variable members extended till reference
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Pattern with fixed spacing but variable members extended till reference
Basically I am making grooves for a tiny coil of diameter like 0,5mm on a small cylinder body. I have made my 'groove', and revolved it around the axis of the cylinder and then patterned it using fixed spacing (pitch).
But I have to manually adjust the length of the cylinder body sketch to make sure it doesn't get interrupted.
Let me break it down to two objectives.
- I want the coil groove to be patterned automatically till a fixed reference edge/plane. The pattern cannot be interrupted midway unless it falls with 0.0Xmm of the seed pattern or 'whole'. (In other words, the last pattern cannot be broken or broken by a specified dimension 0,0Xmm. If it is broken then the wire diameter will not fit and that space is wasted.
- If this cannot be fulfilled, then the length of the cylinder is automatically reduced or increased to make that happen for the last pattern to be intersected by the given length 0.0xmm or be 'whole'/'undisturbed'.
I hope it is clear now. What is the best way to go about this? Table? The first objective if fulfilled, I can do the second point manually but it would be great if there is a way to do both.
Area fill pattern? But there is no area per se because my groove sketch revolves around the cylinder 360 degrees.
I don't see a way for the total 'whole' members to be determined automatically with fixed spacing because I have to define total number of members manually.
I am on CREO 10,0.7.0
Solved! Go to Solution.
- Labels:
-
Design Exploration
-
Generative Design
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
PTC_ACTUAL_PAT_MEMBERS is a feature level parameter that belongs to a specific pattern. To insert it into other relations use the [] button in the relations editor, and then look for it by pointing out the pattern feature:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
You can control it through relations. Create measurement before groove, create pattern, then create relations.
YY = (DISTANCE:FID_MEASURE_DISTANCE_1-d5-d4/2)/D14
Y = CEIL(YY)
P15 = Y
Where DISTANCE:FID_MEASURE_DISTANCE_1 is a saved measurement of the cylinder (you could also use the length value of the extrusion), d5 is the offset to first groove, d4 is width of groove d14 is pattern spacing an P15 is number of instances. A manual regeneration is required to update it when a change is made.
There is always more to learn in Creo.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
attaching .prt or .step files is not supported. It's basically a cylinder of two diameters (one bigger than the other) and a ramp between them for the transition. I wanted to have grooves on both surfaces.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Put the part file sin a .zip file and then you can upload them.
Involute Development, LLC
Consulting Engineers
Specialists in Creo Parametric
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Thank you. I want to automate this with the length adjusted in a way that the angle there is always at 75 degrees in the 'boundarycondition' sketch.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Hi @Shumayal
Could you please explain your request?
Do you want the height to be determined by the length of the groove, or will the groove and the number of occurrences determine the height?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Hi,
I want the height to be determined by the groove and the number of occurrences to determine the height.
INPUT:
- Diameter of wire (groove sketch).
- Number of instances on each h1 and h2 heights of cylinder diameter d1 and d2.
- Pitch/spacing automatically calculated based on my groove sketch which I think is a simple 2*&dxxx or 2x0.2670 from here. I can do this one.
OUTPUT:
- It figures out the heights required.
- 'boundarycondition' feature where the angle is fixed at 75 degrees is respected at (n-1th groove) for the bigger diameter cylinder. In my file it is just approximated to 75 degrees because I arrived there at trial and error/calculation.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Start by defining the inputs with relations. The use relations and construction geometry in the sketch.
Here a part with relations and a sketch.
There is always more to learn in Creo.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Thank you for the file. I have made the relations. Now I am stuck at how to define the height based on the patterns n1 and n2.
It has the same name for both patterns with different values?
PTC_ACTUAL_PAT_MEMBERS is used for both patterns. I want to make sure the last pattern always merges with the ramp as shown in picture. To determine the height of cylinder, I need the relation to call out the two patterns separately. But I see them listed as seen above. They may or may not be equal to each other.
In this PTC_ACTUAL_PAT_MEMBERS = 16 and 18.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
PTC_ACTUAL_PAT_MEMBERS is a feature level parameter that belongs to a specific pattern. To insert it into other relations use the [] button in the relations editor, and then look for it by pointing out the pattern feature:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
This solved my pattern problems.
Now I have the problem of fillet. I don't want to add it to the sketch to avoid further complication.
Is there any way that the fillet will automatically select the relevant edges of the grooves according to the pattern without using autoround on everything? If I alter the pattern, I lose the rounds.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Round the first instance and pattern by reference.
There is always more to learn in Creo.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Unfortunately the first instance is 'merged' with the pattern. A different question, Is there anyway to avoid redoing the pattern and so I can just round the first round? The "Seed" has been absorbed.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Have you tried patterning the round (by-reference) ? Often (sometimes?) that works.
Another way you could try is to group the extrusion + round and pattern the group, although in your example, that doesn't quite work as the round seems to 'straddle' the successive pattern instances.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Yes, it is straddling across. that's the challenge. I will explore the round by reference method.,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Perhaps another way to tackle this design is to pattern material-adding elements (triangular-cross-section revolving ridges) - instead of material removing grooves?
That would allow you to apply the round and then pattern by reference:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
The pattern by reference works perfectly in my current situation but I cannot have it 'skip' the first instance that is the seed. so it returns an error. I tried 'disabling' the first instance by selecting the first circle and deactivating it but the first instance I can disable is only the one after the seed. Also can't suppress it because it is also the seed.
I tried a geometry pattern and it worked perfectly, I just had to define the pitch spacing. But now I can't recreate it anymore. I had done something where I clicked the pattern after the round in geometry pattern and it worked without errors. I wish I could undo it to see how I had done it.
I tried putting in the number of instances into another parameter called H1_Members and I tried floor function but continue to get the error that it is not in range even though it is marked as a 'real number'. I thought it was because of 16.0 so I used the below function to make it 16 but it still wouldn't take it into the 'members' of geometry pattern.
H1_MEMBERS = FLOOR(PTC_ACTUAL_PAT_MEMBERS:FID_H1PATTERN)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I can add another revolve feature to take care of this but for that I need to add another sketch after the original revolve but before the pattern. Is there somehow to convert a 'pattern' to 'geometry' pattern or to bring the child outside from an existing pattern?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Unpattern will remove all members from the pattern (making them features with no pattern) but I am not aware of a way to externalize a single patter member.
Involute Development, LLC
Consulting Engineers
Specialists in Creo Parametric
