cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

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

Allowable dimension values?

JoshH
12-Amethyst

Allowable dimension values?

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


This thread is inactive and closed by the PTC Community Management Team. If you would like to provide a reply and re-open this thread, please notify the moderator and reference the thread. You may also use "Start a topic" button to ask a new question. Please be sure to include what version of the PTC product you are using so another community member knowledgeable about your version may be able to assist.
6 REPLIES 6
TomD.inPDX
17-Peridot
(To:JoshH)

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.

JoshH
12-Amethyst
(To:TomD.inPDX)

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

TomD.inPDX
17-Peridot
(To:JoshH)

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.

TomD.inPDX
17-Peridot
(To:JoshH)

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_limiting.JPG

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:

Video Link : 3894

Why is dragging so important? Most people deal with this in family tables if I'm not mistaken.

JoshH
12-Amethyst
(To:TomD.inPDX)

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.

Announcements
NEW Creo+ Topics: Real-time Collaboration


Top Tags