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

Re: Creating a layering mapkey on Wildfire 2 - SUMMARY

Re: Creating a layering mapkey on Wildfire 2 - SUMMARY

Alrighty guys heres what I ended up with. I have a master mapkey that calls
all my lower level mapkeys, of which
the example I give here is just one. I got quite a few suggestions to use
the def_layer options in my
which doesnt really help any already existing parts or parts recieved from
external suppliers.

It turns out the RULES functionality is the way to go, although I do want
to be clear that the RULES editor is
a bit clunky to use. If you don't have the settings in the "Look For" and
"Look By" fields set JUST right, the rule can
apparently return some wierd results.

The new RULES interface is nice, but it's still lacking in some
functionality as far as my needs.
If I want to put all the normal axes on one layer, and any named A, B, C, D
etc. NOT.
I have to create a SEPARATE rule for each of the special axes.
It'd be nice if the "is equal to" field allowed multiple specific names to
be check against so that I could more easily customize
layers for specially named features. Another oddball thing, layers created
in an assembly with RULES do not necessarily show
as hidden (black) even when they are. It doesn't happen consistently, but
I've confirmed that it DOES happen.

Note, that this mapkey is NOT exactly what you'd get if you use the mapkey
editor to regenerate the exact same steps. I've gone through and trimmed
out all the extra lines that arent really necessary, such as opening and
closing of menus. (We dont really care in the mapkey whether a certain menu
is opened or closed.
Only what item in the menu is picked as a command.) This results in a
mapkey that is more humanly readable (to me at least) as well as being
QUITE a bit more compact.
PTC could DEFINATELY work on their mapkey syntax a bit, or better yet, come
up with a more robust scripting system all together for those of us without
to Pro/Toolkit. As long as its not VBScript.

This mapkey has only been tested on Wildfire 2 build M070.

This mapkey basically:

1. Creates a new layer. (I've used "DATUM_AXIS" as an example. We actually
have a naming scheme for all our standard layers
which is a bit different. This was a suggestion I recieved, and even though
I already do it, its worth mentioning again, as its a VERY good idea.)

2. Opens the rules tab and creates 2 new rules that find ALL axes, but NOT
axes that are part of cosmetic threads created using the standard
hole feature. (If we include axes that ARE part of those threads, then
blanking this layer blanks the threads as well, which is NOT desirable. If
ptc would reasonably make those axes separate from the threads, they way
they are with normal holes, we wouldnt have to worry about this.)
These rules are configured to ONLY find items in the top level assembly (if
this mapkey is run in an assembly, as opposed to a part. Otherwise
that one pick is ignored.)

mapkey _-DATUM_AXIS ~ Select `main_dlg_cur`
mapkey(continued) ~ Close `main_dlg_cur`
mapkey(continued) ~ Activate `main_dlg_cur` `LayerNew_PushBtn`;\
mapkey(continued) ~ Update `newlayerprops` `LayerNameInput` `DATUM_AXIS`;\
mapkey(continued) ~ Select `newlayerprops` `PropTab`1
mapkey(continued) ~ Activate `newlayerprops` `IndepRulesChk`1 ;\
mapkey(continued) ~ Activate `newlayerprops` `AssocRulesChk`1 ;\
mapkey(continued) ~ Activate `newlayerprops` `EditRulesBtn`;\
mapkey(continued) ~ Select `selspecdlg0` `SelOptionRadio`1 `Feature`;\
mapkey(continued) ~ Select `selspecdlg0` `LookByOptionMenu`1 `Axis`;\
mapkey(continued) ~ Update `selspecdlg0`
`ExtRulesLayout.ExtBasicNameLayout.BasicNameList` `*`;\
mapkey(continued) ~ Activate `selspecdlg0` `SelScopeCheck`0 ;\
mapkey(continued) ~ Activate `selspecdlg0` `CondBuilderCheck`1 ;\
mapkey(continued) ~ Activate `selspecdlg0` `AddRuleBtn`;\
mapkey(continued) ~ Select `selspecdlg0` `SelOptionRadio`1 `Feature`;\
mapkey(continued) ~ Select `selspecdlg0` `LookByOptionMenu`1 `Feature`;\
mapkey(continued) ~ Select `selspecdlg0` `RuleTypes`1 `Type`;\
mapkey(continued) ~ Select `selspecdlg0`
`ExtRulesLayout.ExtTyperuleLayout.TyperuleComp`1 ` \
mapkey(continued) != `;\
mapkey(continued) ~ Select `selspecdlg0`
`ExtRulesLayout.ExtTyperuleLayout.TyperuleCatsList`1 \
mapkey(continued) `Misc`;\
mapkey(continued) ~ Select `selspecdlg0`
`ExtRulesLayout.ExtTyperuleLayout.TyperuleTypesList`1 \
mapkey(continued) `is thread#4, 93`;~ Activate `selspecdlg0`
mapkey(continued) ~ Select `selspecdlg0` `CondBuildTable`2 `0` `oper`;\
mapkey(continued) ~ Select `selspecdlg0` `CondBuildTable_INPUT`1 `and`;\
mapkey(continued) ~ Activate `selspecdlg0` `SelectButton`;\
mapkey(continued) ~ Select `newlayerprops` `PropTab`1 `ContentsLay`;\
mapkey(continued) ~ Activate `newlayerprops` `OkBtn`;

Hopefully that will come across the exploder properly.

Jarrod Miller
LTL Design Concepts
Caterpillar Tool Design

"Jarrod Miller"
<miller_jarrod_l@ <br="/>>
Sent by: To
bounce-model-2209 To
-user. "PTC/USER Model Discussion"
org <->

12/29/2004 02:19

Please respond to Subject
"Jarrod Miller" [model] Creating a layering mapkey
<miller_jarrod_l@ on=" wildfire=" 2=" <br="/>>

Caterpillar: Confidential Green Retain Until: 01/28/2005
Retention Category: G90 -

Hi folks. This is one for all those heavy mapkey authors out there.
We've started looking at moving to Wildfire 2 from 2001 and
I'm fiddling with creating a layering mapkey which will
be run on all my models. I want said mapkey to automatically put all
datum axes on a layer called "DATUM_AXES". This was trivial to do in
older pro/e versions, but the complete reworking of the way items are
selected to be added to the layer has stumped me. Old mapkeys could

But, now in Wildfire 2 that functionality has now apparently been finally
disabled. I can get the "Search.." tool to locate all the axes in the
model just fine, but I'm unable to get a mapkey which will actually SELECT
all of them and move them into the list to be added. The mapkey ends up
being dependant on the features being named certain names (which I cannot
guarantee) in order for them to be selected. There's no SELECT ALL button
the way I would expect in the search results area. If I'm working through
MANUALLY (not running the mapkey) I can just hit ctrl-a, but I cant find
any way of recording that INTO the mapkey.

I can't use "rules" because their are already some features which exist
from our starting template parts/assemblies. I can't make a toolkit app
because I don't have access to Pro/Toolkit (in my dreams eh?).

This mapkey for adding axes is just ONE part of a higher level mapkey that
layers off ALL the features in the model. We want it to continue to be a
single push button job that cleans up everything, and very easy for the
end users. I'll have to do this same thing with CURVES, PLANES, etc.

Any advice?

List name: -

You are currently subscribed to model as: -.
To unsubscribe send a blank e-mail to

For assistance, email us at - or find other contacts

PTC/USER and the PTC/USER logo are registered trademarks of PTC/USER, Inc.
Pro/ENGINEER is a registered trademark of PTC.

Message authors are solely responsible for the content of their posts.

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.