Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations LittleInch on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Conditional Expressions and Part Families in NX7.5

Status
Not open for further replies.

triheadwolf

Mining
Joined
Jul 2, 2013
Messages
1
Location
SE
Hi,

New to this forum, please be patient with me.
I did use search before asking, found some help but ended up with more questions.

As NX7.5 does not have 'Extended Text Editor' this problem and assumed solution might get workaround later when company I work for will update to NX8,
but at the moment I'm stuck with this one.

I'm creating a family part (medium complex I would say), and would like to have as less chosen variables into family members as possible.

Now I've sketched with Expressions and tried to keep expression count as low as possible but there are still some expression values that are logical and thus avoidable in part families.
Main driving dimension is Part OD.

To clarify situation, this is what I were able to do (mostly thanks to this forum!):
So, I have i.e. o-ring groove that all it's dimensions can be calculated from o-ring d2 and part OD, with three o-ring_d2 variables based on part OD.
I can put up a logic conditional expression for o-ring groove width as so:

IF(Gland_o_ring_d2=2.62)(3.6)ELSE(IF(Gland_o_ring_d2=3.53)(4.8)ELSE(7.1))

But, coming into my problem, How do I get this done:

When OD=30 then id=26
When OD=40 then id=30
When OD=50 then id=25 OR 35
When OD=60 then id=40
When OD=80 then id=40 OR 50
When OD=100 then id=50 OR 60
...and so on.

In other words, the driving dimension OD can narrow down the id variables to one OR two

Is it possible to do somehow with conditionals or in part families?
Part families is also yet to study properly so it might be the answer...

Thank You for Your help!
 
You put the logic in the master part file and use only the single OD expression, plus whatever criteria if needed to resolve the 'either/or' situations, to define which family member is which.

BTW, starting with NX 8.0 it will be possible to replace your multiple 'IF' statements with something called a 'LIST' statement, which is a sort of 'flat' database, along with an 'nth' statement, which allows you to extract the appropriate value from a 'LIST'.

John R. Baker, P.E.
Product 'Evangelist'
Product Engineering Software
Siemens PLM Software Inc.
Industry Sector
Cypress, CA
Siemens PLM:
UG/NX Museum:

To an Engineer, the glass is twice as big as it needs to be.
 
Thanks John Baker for all your posts.....

I was trying to find the "LIST" statement in the docs but was unable find it. Is it under expressions or something else, or could you provide an example? Conditionals can be a pickle some times and this sounds interesting.

 
OK, attached is a sort of 'family part' (just not using Family Tables) where I've modeled a standard catalogue item, in this case a handwheel with and without a handle. The model really shows off several features added in NX 8.0 including the new Attributes and some of the enhancements we made to the Expression system.

So to see how this mode behaves, after Opening the part file, go to...

File -> Properties -> Attributes

...scroll down to the attribute 'category' labeled 'User_Entry' and there you can select the 'Handwheel_Size' that you want (this shows how you can now have a pre-defined set of values for an Attribute) as well as whether to include a 'Handle' or not (this shows the use of a Boolean Attribute which can be either 'True' or 'False'). Once you've made your selecions, just hit the OK button and the Handwheel will update to the one that you specified.

Now if you open the expression editor you can see how I passed the Attribute values for the Size and whether there was a Handle or not to the expressions and how I then used the 'Size' to find which sets of data I needed to read from the various 'lists' using the 'nth' function. Note that I imbedded my 'lists' inside the 'nth' expressions but they could just as easily have been separate 'list' expressions simply referenced inside the 'nth' expressions.

Anyway, I hope this helps you see how you can use these new capabilities to imbed data sets inside your part using 'list' expressions and then reading the relevant values from this 'data-base' using the 'nth' function.

John R. Baker, P.E.
Product 'Evangelist'
Product Engineering Software
Siemens PLM Software Inc.
Industry Sector
Cypress, CA
Siemens PLM:
UG/NX Museum:

To an Engineer, the glass is twice as big as it needs to be.
 
 http://files.engineering.com/getfile.aspx?folder=64cb6039-90c7-46e2-b5ea-c177537f17f9&file=Handwheel_Demo.prt
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top