Community Tip - Visit the PTCooler (the community lounge) to get to know your fellow community members and check out some of Dale's Friday Humor posts! X
Hello.
i have a pattern of simple holes that are defined as a dimension pattern, where the number of instances is defined by a Parameter.
on top of that holes (after them in the tree) i have a reference-based pattern of cosmetic threads (nr. of instances is the same as nr. of holes).
i would like to suppress/ unsuppress the entire cosm. thread pattern based on a condition (parameter) based on the pro-program (or something else, like relations, if that's available).
i've tried adding "SUPPRESSED" to the add feature <pattern>, but that only suppressed the top pattern (all the threads still remained unsuppressed after rebuild).
i've also tried to add "SUPPRESSED" to the first instance of the cosmetic thread definition, but that only produced a long error screen that the parent feat is suppressed).
any ideas how could i do that? the problem is that # of instances is often changed, so i can't simple add an if to every instance of it.
here is the definition of the pattern and first thread
ADD FEATURE (initial number 88)
INTERNAL FEATURE ID 27018
PARENTS = 13890(#55)
NO. ELEMENT NAME INFO STATUS
--- ------------ ----------- ------
1 Type Reference Defined
LEADER OF A (32 X 1) REF GENERAL PATTERN
MAIN PATTERN DIMENSIONS:
d322 = 20 General_Dims
d323 = 13.5 General_DimsM
END ADD
ADD FEATURE (initial number 89)
INTERNAL FEATURE ID 26335
PARENTS = 200(#8) 13796(#56)
COSMETIC: Thread
NO. ELEMENT NAME INFO STATUS
--- ------------ ----------- ------
1 Thread Surf Defined
2 Start Surf Defined
3 Direction Defined
4 Depth Blind, depth = 20 Defined
5 Major Diam Value = 13.5000 Defined
6 Note Params Defined
MEMBER (1, 1) IN A (32 X 1) REF GENERAL PATTERN
MAIN PATTERN DIMENSIONS:
d322 = 20 General_Dims
d323 = 13.5 General_DimsM
END ADD
(other members of the pattern here)
etc.....
I would like to suppress or unsuppress an entire pattern only, not only specific instances.
if it's suppressed i would like it in the tree anyway (so that it doesn't dissappear).
any ideas?
this is wildfire 3, no idea which M version, but one of the latest.
Solved! Go to Solution.
it will work, but in gui if you right click on that (suppressed) pattern, the only option will be delete (no resume etc).
I would like to have it so that it is completely the same from the point of the user (i.e. resume, delete, rename)
With Pro/Program you can't have it both ways. If a feature (or a group of features) is suppressed by Pro/Program, then the user cannot manually resume them (unless they change the value of the parameter driving the Pro/Program condition.)
If you want to be able to suppress or resume something programmatically but have no restriction on how the user interacts with it, you will need to use one of the other APIs (Toolkit, VB API, J-Link, Web-Link, etc.) With these you are simply issue command - suppress this feature, resume this other feature, etc.
Add an extra "garbage" feature after the pattern (extra datum plane, point, etc.), and then put your conditional IF statements around the entire pattern AND the extra feature. New pattern elements will be inserted between the two, but because the END IF is below the extra feature it should capture them all.
i've found that if you make a new var with "true" or "false" as value (driven by relations) and encapsulate the entire pattern with
if var
add feat....
end if
it will work, but in gui if you right click on that (suppressed) pattern, the only option will be delete (no resume etc).
I would like to have it so that it is completely the same from the point of the user (i.e. resume, delete, rename)
what i am trying to accomplish is basically this (here only 1 feat in pattern to make it smaller in size)
IF VAR
ADD SUPPRESSED FEATURE (initial number 50)
INTERNAL FEATURE ID 27018
PARENTS = 13890(#48)
NO. ELEMENT NAME INFO STATUS
--- ------------ ----------- ------
1 Type Reference Defined
LEADER OF A (1 X 1) REF GENERAL PATTERN
MAIN PATTERN DIMENSIONS:
d322 = 20 General_Dims
d323 = 13.5 General_DimsM
END ADD
ADD SUPPRESSED FEATURE (initial number 51)
INTERNAL FEATURE ID 26335
PARENTS = 200(#8) 13796(#49)
COSMETIC: Thread
NO. ELEMENT NAME INFO STATUS
--- ------------ ----------- ------
1 Thread Surf Defined
2 Start Surf Defined
3 Direction Defined
4 Depth Blind, depth = 20 Defined
5 Major Diam Value = 13.5000 Defined
6 Note Params Defined
MEMBER (1, 1) IN A (1 X 1) REF GENERAL PATTERN
MAIN PATTERN DIMENSIONS:
d322 = 20 General_Dims
d323 = 13.5 General_DimsM
END ADD
ELSE
ADD FEATURE (initial number 50)
INTERNAL FEATURE ID 27018
PARENTS = 13890(#48)
NO. ELEMENT NAME INFO STATUS
--- ------------ ----------- ------
1 Type Reference Defined
LEADER OF A (1 X 1) REF GENERAL PATTERN
MAIN PATTERN DIMENSIONS:
d322 = 20 General_Dims
d323 = 13.5 General_DimsM
END ADD
!*** ERR: Feature with ID 27018 already exists in the model.
ADD FEATURE (initial number 51)
INTERNAL FEATURE ID 26335
PARENTS = 200(#8) 13796(#49)
COSMETIC: Thread
NO. ELEMENT NAME INFO STATUS
--- ------------ ----------- ------
1 Thread Surf Defined
2 Start Surf Defined
3 Direction Defined
4 Depth Blind, depth = 20 Defined
5 Major Diam Value = 13.5000 Defined
6 Note Params Defined
MEMBER (1, 1) IN A (1 X 1) REF GENERAL PATTERN
MAIN PATTERN DIMENSIONS:
d322 = 20 General_Dims
d323 = 13.5 General_DimsM
END ADD
!*** ERR: Feature with ID 26335 already exists in the model.
END IF
but it won't let me have 2 features with the same ID defined
if i try to manually change the ID of the feature i get:
!*** ERR: pattern member should have same condition as leader 27018
any ideas anyone?
nr of elements in a pattern is variable and is referenced from a pattern above it.
MARTIN HANAK do you perhaps know?
it will work, but in gui if you right click on that (suppressed) pattern, the only option will be delete (no resume etc).
I would like to have it so that it is completely the same from the point of the user (i.e. resume, delete, rename)
With Pro/Program you can't have it both ways. If a feature (or a group of features) is suppressed by Pro/Program, then the user cannot manually resume them (unless they change the value of the parameter driving the Pro/Program condition.)
If you want to be able to suppress or resume something programmatically but have no restriction on how the user interacts with it, you will need to use one of the other APIs (Toolkit, VB API, J-Link, Web-Link, etc.) With these you are simply issue command - suppress this feature, resume this other feature, etc.
thanks, i realized that there is no other way yes. also too bad, that P/P only takes boolean values, thus i have to create additional parameters.
do you perhaps know if it's possible to use pro/program to hide the entire feature from the model tree unless it's activated (not suppressed) via params?
You don't have to use Boolean values, but the end result will necessarily have to be Boolean. Keep in mind that you can evaluate multiple parameters at a time. You can also nest the evaluation. For example, all of the following are valid:
IF PARAM_A > 20 & PARAM_B <> 15
IF PARAM_C == 6 | PARAM_D == "Hi Mom" | PARAM_E == NO
IF PARAM_F >= 10
IF PARAM_G <> "HI DAD"
IF PARAM_H < 123.456
The only way I know to hide a suppressed feature from the tree is to change the tree configuration to not show suppressed objects.