Community Tip - Stay updated on what is happening on the PTC Community by subscribing to PTC Community Announcements. X
The example here is a simplification of an issue with a complex model. When using the fill pattern with curve grid type I am not able to evenly distribute points along a closed curve.
I have posted a sample model (Creo 4) with two pattern features spaced along the curve symmetrically about a symmetry plane. On the left is a dimension pattern which works fine and is based on the pattern leader being on the symmetry plane.
A measure feature is used to get the curve length and then a relation to calculate the spacing needed for distribution.
Using the fill pattern I can not replicate this desired distribution of points. I have tried alternate start points but it does not yield the desired result. Can anyone offer insight into why? Using a start point in the fill pattern that is on the mirror plane causes the next pattern member after the leader to be placed in the opposite direction of the subsequent members.
I have been able to use the fill pattern curve grid to get the distribution but only by creating two patterns using half the drive curve and then deleting the last pattern member to avoid duplication. This is not ideal and I would like to be able to fill a closed curve with points evenly placed on the curve in a single pattern.
Solved! Go to Solution.
It has taken a while to get an answer from PTC development.
"...the instances of Fill Pattern created along the curve are placed at the given spacing as per the Grid orientation, which is same as default CSYS orientation. We do not allow to change the grid orientation in case if Along the Sketched curve grid template is selected for Fill type of Patterns. It is not correct to expect the equal spacing of instances along any shape of the curve in case of Fill Pattern."
The best workflow in this situation is using Dimension or Curve type of Pattern. In order to get the same result in case of Curve Pattern, user has to switch the Pattern option to Curve, convert the external Sketch to Internal and edit the Sketch to align the start point and location of lead member. Then edit the relation to use the respective spacing dimension id. Refer to the video below for how to use a curve pattern to get the desired result.
There's something weird about that kind of a fill pattern, but it also highlight's the software's limitations in how points along closed sketched curves are defined.
I mean, there is missing UI here as how to allow the user to designate a vertex in the sketch curve chain as the start point - the kind when you edit the sweep cross-section (there you can locate the start point at any vertex by dragging it along the curve)
So if you are trying to form a linear pattern of evenly spaced instances, I think you can only way to get the "right" results with the fill-curve pattern is if the point being patterned is defined as being on an open curve - and at its "other" end. And also, it should be suppressed (omitted) from the pattern!
Also, the relations are more complicated. Anyway, summary of my Pro/WorkAround attached.
That is another workaround method that allows for using the fill pattern. It would seem that the fill pattern curve option was not intended to be used on closed curves but I don't see anything in the help files that deals with this situation.
Try this...
After creating initial curve, select item to pattern but, when you select pattern along curve, re-create the sketch by projection within the pattern. This also will allow you to control the start point along the curve.
Control of the start point in the fill pattern was not a problem in my example. I did try creating an internal sketch for the fill pattern using projection references from the external sketch, it does not yield the desired result.
If you have been able to achieve the desired result using this method, please post the model.
Thx
I have used loop and individual references to define an internal sketch for the fill pattern. Neither of these yields the desired result.
Hello and sorry for my english.
Try this method:
Select sketch with the mouse and copy -> paste with exact or approximate type of curve.
When you are still in the "paste" menu, a cursor appears that if you drag it you can move the starting point of the curve where you want (known point of the curve).
On the new curve you add a point with an offset ratio of 0.
Create a series by dimension having 1/N offset of N occurrences.
This suggestion does not work for me. If you have used this method successfully, please post the model.
Using a copy of the curve and selecting the proper start point does not space the points as desired. The dimension pattern in the part I posted represents the design intent.
The tested process is as follows:
1) Create a copy of the curve using ctrl+c/ctrl+v with the exact option.
2) Select the start point of the curve (1) as a point on the curve and symmetry plane
3) Create a point on copied curve with 0 offset (on start point)
4) Use fill pattern curve grid option to pattern the point. The copied curve is projected using loop in the pattern ref tab for curve.
5) Define relation dividing the curve length by # of instances to get pattern spacing dim
Hi, and sorry again for my English.
I cannot publish.
This is my procedure for closed curves (I hope):
1) I create curve copy using ctrl+c / ctrl+v with exact (or approximate) option. In the copy operation (I still see the "exact" menu) the cursor appears on the curve and I move it where I want.
2) I select the copy of the curve (1) and create a point with offset ratio 0 (I don't select the starting point of the curve).
3) I select point (2) and create the pattern (pattern dimension) with the dimension 1/N having N occurrences (if N = 5 the distance = 0.2).
The original poster wanted the pattern using the "fill curve" option, so your solution does not apply because fill curve function requires a sketch, not a curve.
Hello
sorry, I wanted to suggest an alternative solution with the possibility of changing the starting point.
You can use the suggested method, then project the curve back to a sketch. It's not very elegant, but it's possible. This way you can set the start point, and then just use a normal Curve pattern (not a Fill pattern with the curve option).
EDIT: Actually, just projecting the original sketch solves the problem, since you can edit the start point in an internal sketch of a curve pattern.
Could you explain how you can edit the start point of a drawn or projected closed loop in a sketch?
I'm not seeing this functionality in Creo 4.0. Started sketcher, sketched a closed curve, then divided its segment to produce a point which I would like to be the "start point". Right clicking brings up the generic sketch-tools menu. Selecting the point and then right clicking produces a similar menu:
neither has an option to select the start point...
Is it an internal sketch of a curve pattern? As I mentioned above, it has to be an internal sketch of a feature that uses a start point. Can't do it in an external sketch. I just tried it in Creo 4 and I have it in the RMB menu.
It has taken a while to get an answer from PTC development.
"...the instances of Fill Pattern created along the curve are placed at the given spacing as per the Grid orientation, which is same as default CSYS orientation. We do not allow to change the grid orientation in case if Along the Sketched curve grid template is selected for Fill type of Patterns. It is not correct to expect the equal spacing of instances along any shape of the curve in case of Fill Pattern."
The best workflow in this situation is using Dimension or Curve type of Pattern. In order to get the same result in case of Curve Pattern, user has to switch the Pattern option to Curve, convert the external Sketch to Internal and edit the Sketch to align the start point and location of lead member. Then edit the relation to use the respective spacing dimension id. Refer to the video below for how to use a curve pattern to get the desired result.
Hi tbraxton, try this method:
1) I create a new sketch by projection the existing sketch with "chain" by selecting first the lower right and then left segment (or vice versa) in order to define the starting point between the two segments.
2) select sketch (1) and create point with 0 offset ratio
3) I create a fill pattern deleting the first pattern member to avoid duplication.