Community Tip - Need to share some code when posting a question or reply? Make sure to use the "Insert code sample" menu option. Learn more! X
I have sketch that where I control a particular angle with a parameter. The angle is between one of the default datum plane and a sketch feature. I am trying to vary the angle from 0 to 210 deg. When I try to update the angle from the initial 0deg, the model doesn't redefine automatically upon regeneration. Initially the angle is measured in anti-clockwise direction, but when I try to update the angle to anything more than 180deg, in addition to the regeneration error, the angle is also measured in clockwise direction, completely throwing off the sketch. I cannot go from 0 to 210 deg in one go. If I increase the angle first to 50deg and the to 100deg and then to 150 deg and then to 200deg, the angle would still be measured in anti-clockwise direction(the way I want it), but if I go from 0 directly to 200 deg, the angle would be measured in the clockwise direction. In teh attached pics, 0deg, 135deg & 200deg are what I require but when I change the angle directly from 0 to 300, it is represented in 300deg, which is not desirable.
Solved! Go to Solution.
Yeah, the way angles are (un)controlled in Creo sketches is actually quite alarming. I guess I've just accepted the need to have work-arounds that basically avoid angular dimensions going through 0 and 180 degree points.
Also, using datum planes offset at an angle seems to lead to a more robust results:
Hi,
to avoid sketch flipping you have to use additional sketch references. I uploaded part created in Creo 9.0.2.0 and video showing geometry corresponding to series of angle values.
Hi Martin,
I did not mention in my original message that I use Creo 8.0.4.0.(Sorry about that). I am not able to open the file you created. Could you possibly post a screenshot of the sketch?
Hi,
I recreated the part in Creo 8.0.4.0.
@MartinHanak wrote:
Hi,
I recreated the part in Creo 8.0.4.0.
Hi,
FYI ... my model does not enable to jump from 0 degrees to 230 degrees directly. This means that the model is not stable enough.
Hi,
another version uploaded.
It remains to invent the relations for angle range from 60 degrees to ~230 degrees.
It seems to me that "relation method" could lead to stable model.
Angles have always been a twitchy thing in Creo and most CAD systems I've used. Notice, for instance that if you are defining a plane at an angle from another plane, entering a negative angle will move the plane to the desired position, but the angle will not be -40.0, for example, but just 40.0. The "sense" of the angle changes, but the dimension is forced to be a positive number. Even a simple sketch of an arrow, a line with a triangular "head", defined in the X,Y positive quadrant, exhibits odd behavior if you change the angle of the arrow from the "X = 0" plane to something like 170 degrees.
How to avoid this nonsense? You could define a Datum->Curve->Curve from Equation. Make the curve Cylindrical, then if you have parameters for the ANGLE and RADIUS, you could have something like the following equations:
R = 3.0 + t * 6.0
Z = 0.0
theta = angle
This curve will behave correctly, Setting an angle of something like 227 degrees gives the correct result. It seems to work because the handling of cylindrical coordinates is more mathematically "rigid" than the typical cartesian coordinates.
Yeah, the way angles are (un)controlled in Creo sketches is actually quite alarming. I guess I've just accepted the need to have work-arounds that basically avoid angular dimensions going through 0 and 180 degree points.
Also, using datum planes offset at an angle seems to lead to a more robust results:
Try using a polar grid in sketcher to create a sketched curve used to "clock" the angle. I am not certain about this but by setting the grid to polar it may alter how the intent manager treats the clocking angle dimension. In Creo 7.09 using this technique supports full 360 degree rotation of the clocking angle without failure. See the video below and the construct of the sketched curve in the picture.
Hi @VV_10659302
This would be a good example for PTC to review, because it does highlight the deficiency here in how the software produces strange results when the angle dimensions "lose" their "sense" and switch from CW to CCW clocking.
However, I do think this particular problem is more related to the sketch scheme and the use of the perimeter+variable angular dimension and the mathematical reality that there are multiple solutions that satisfy the perimeter constraint. For example, 2 solutions that produce 1500 perimeter at angle 200degrees:
As you demonstrated, if you vary the angular dimension and "approach" the intendent solution, you get the "correct" result. But if you jump directly to the "multiple solutions" zone, the system picks the "wrong" result for you.
It would be great if the software could somehow remember and stay with your "intent". Seems like a reasonable request. I recall a product idea that asks for similar thing, but can't locate it right now.
Test this sketch created in 7.09 release. If I understand the limits needed to flex the sketch, it appears it is working (0-210 deg CCW) within sketch mode when using the modify dim dragger. Intent manager is not consistent with mod by dragger vs mod dim value within sketch mode. When using the dragger, I am able to move it through all quadrants and it regenerates.
I did not test it by using parameters to drive the sketch through relations.
It may not behave differently than your original, but it is worth observing to see if it is.