In Creo 4.0 I have a base part with an inheritance feature of another part.
In the base part I have default layers to place features on according to their type. So in the base part I have a layer for quilts and a layer for datums. The inherited part also contains features of the type datum and quilt (on the same default layers with the same names as in the base part).
I can show/hide the inheritance feature as a whole with all the features it contains, but I want to be able to show/hide ONLY features of a specific type by using layers. For example I want to be able to separately show/hide the quilts belonging to the inheritance feature and the quilts belonging to the base part by placing them on separate layers.
I have not gotten this to work using layer rules, but I'm certainly not an expert on the subject. So any help on if and how this is possible is appreciated. Many thanks in advance!
There are multiple levels of items at work here and what "level" the thing you are adding to a layer lives on comes into play.
For a datum plane, there's the plane itself with lives inside the datum plane feature. A sketch feature contains multiple sketch entities. The inheritance feature contains dozens of individual entities.
Once you hide an upper level item, nothing inside it can be made visible. The hidden status of the upper level overrides any settings on the lower level items. So, if you hide a sketch feature you cannot make any individual sketch entities. Because of this all my rules put entire features on layers rather than individual entities. (Quilts are an odd case, they are neither parent or child in this scenario. I don't put them on layers, only the surface features themselves.)
With an inheritance, in the source part you may have put the features on layers but once they are inherited into another part they become entities of the inheritance. That makes it difficult to control them, as you've found.
A couple of things that are helpful.
The situation you are dealing with is still challenging and I've spend a lot of time (too much time, frankly) thinking about layers.
Sorry I don't have better news.
Thank you very much for your reply. The tip about features becoming entities of the inheritance feature helps a lot. It's actually quite logical, but I didn't think about it. I think it's probably the reason why I couldn't get rules to work the way I want. I do always put features only on layers, not entities, because that would make layer control much more difficult.
I will try again but this time with filtering based on entities instead of features and let you know if I have found a way.
BTW: The new status in Creo 4 is actually pretty good. It allows to put features on an 'shown' layer in addition to the 'hidden' layer that was present in previous versions of Creo. I do not use it to save as a status for 'finished' parts (I only use clearly named and defined layers), but use it a lot when working on parts. It makes it easy to show just the features I currently need shown to work on the part without other features cluttering my view . The model tree icons also reflect the layer status much better now.
I haven't played with Creo 4 enough to understand the new layer options, does "isolate" still exist in addition to "hidden", "unhidden" and the new "shown"? I'm wondering if shown is isolated renamed or something new.
The 'hidden' and 'shown' layers work as a manual override of the other layer settings. Placing a feature on the 'shown' layer shows it even if it is hidden by another layer. It works kind of similar to the 'isolate' setting. The difference is that 'isolate' shows only the items on the isolated layers, where 'shown' does not change the display status of other layers but in addition to the current layers' statuses shows the items on the layer 'shown'. So it can be used in addition to 'isolate'.
For example when I have a layer for datum planes with hidden status, the datum planes are hidden and the feature icons in the model tree are greyed out. When I select a datum plane feature in the model tree and then select 'show', that datum plane feature is placed on the 'shown' layer and the datum plane shown, overriding the 'hidden' status of the datum plane layer for this feature. The model tree icon is no longer greyed out. I use it to temporary show only the features I need 'in the background' when creating new features.
It took some getting used to but I think it is a really good improvement.
Just an update: I managed to get the basic rules working based on entities instead of features. So far so good!
I'm still struggling with the AND/OR conditions of the rules. It seems that you can't really make decent 'nested' conditions in Creo, which would make it impossible to achieve certain rules the way I would to have them.
For example I can't get Creo to interpret rules setup like "(rule1 OR rule2) AND (rule 3 OR rule 4)" the way I want to, because I can't seem to choose where brackets go. I'm still working on this issue...
I got the AND/OR conditions working and are now working on refining my layer rules. Which bring me to another question. When having an external inheritance from part B in part A, where both parts have the same layer names, all items from a layer on part B are always added to the layer with the same name in part A, regardless of the layer rules in part A. Even when I exclude items from external sources from a layer by a layer rule, the items are still added.
Is there a way to disable or work around this?
My goal is to have separate layers in part A for items belonging to the part A itself and for items in inheritance features (from part B).
Use option add_merge_ent_to_rulbased_layer no
Description: Should merge feature put copied items in target model on layer driven by rule.
It works only for rulbased layer, but it's a begin