Community Tip - Did you get called away in the middle of writing a post? Don't worry you can find your unfinished post later in the Drafts section of your profile page. X
Hi folks,
I'm stumped on a question from a co-worker.
Is there a way to limit a dimension value to increments of 1, e.g., 5.62, 6.62, 7.62..., etc.?
User wants to select a drag handle and it snaps to the next available dimension value.
-Josh
There are a few ways to limit values. The method is application dependent.
The 1st that comes to mind is dragging components that have assembly constraints. These will have degrees of freedom within their specified constraint limits.
Second is the ability to use "if" statements in relations where you can have set allowable or ranges of valid values.
If you have an "if/then" type of evaluation, you can use a graph feature drive your relation. If X=n then Y=value of graph.
If you have a better idea of exactly your coworker is trying to accomplish, we can dive deeper into any of these.
The application is a simple part extrusion.
This is basically what I'm after, but don't know how to write the logic without Creo spitting it back.
IF(D367>=9) AND IF(D367<=10)
D367=9.84
ENDIF
IF(D367>=10) AND IF(D367<=11)
D367=10.84
ENDIF
if statements are nested.
if d367<=9
if d367>=10
d367=9.84
endif
endif
... then the same for the second test.
You also need an else statement if neither work.
I am not at the system at the moment or I would get the exact syntax
See if the comments below the initial post helps with your syntax:
Architectural Dimension Converter: Creo 2.0 + references
It is very dependent on nested if else statement.
Since a driven dimension cannot be dragged, you need another piece of geometry to drag.
This is the reference I built. It is as you defined but if neither parameters are met, it revert to "1".
Dim d0 is the length of a line in the sketch. It can be dragged as desired.
d1 set the length of the extrusion. This references the "state" of d0 to analyze the intended length.
If in fact you only want the two length, then all you need is a division at <=10
If you have a lot of steps, you might even use the graph to manage acceptable length. Much easier and more logical in my view. X would be applied to d0 and Y... a step graph, would be applied to d1. I posted more info on using graphs here: Using Datum Graphs in Relations
This is a quick video of what the above illustration does when dragged:
Why is dragging so important? Most people deal with this in family tables if I'm not mistaken.
Thanks! That's a nice work around!
Locking out the driven dimension is really the thing that bungles up the operation the user is after.
Honestly, I don't know what the end-user is after. We're getting a lot of converts from Inventor and other MCAD tools, so maybe there's something out there with similar functionality.