Skip to main content
10-Marble
December 14, 2015
Question

Layer rules for ASM w/o changing the submodels

  • December 14, 2015
  • 3 replies
  • 6002 views

Hi there,

is there a way to enable assembly layers with the option "include submodels" and actually get a result for the assembled components?
I mean, the "Preview Results" window shows results, but when hiding this rule based layer (associative, rules enabled, independent) nothing happens. The message reads "Rules cannot be evaluated for submodels of a Layer model."

We have been working with default layers instead of rules until now. However, we've started experiencing problems in assemblies with wrongly set layer options in assembled sub models, since these are "released" in our pdm system and cannot be changed without further ado.

So, I would like to set the layers by rules in an assembly discounting the submodels.

I found the ppt "Take time to obey the rules" here and started experimenting with rule driven layers. But the problem remains: When enabling "include submodels" all I get is "Rules cannot be evaluated for submodels of a Layer model."


I have to "expand" them, but then each model has to be changed, which is exactly what I am trying to avoid.

Any suggestions?

TIA

Andreas


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.

3 replies

1-Visitor
December 14, 2015

Not sure, but maybe using the config.pro option: save_display_status_in_submodel set to NO would allow you to override and save the display status of sub-components in the top-level assembly.

10-Marble
December 14, 2015

Thanks for your input. I gave it a try, but unfortunately it doesn't work. When "propagating the status" without "save status in submodels" (btw there is a checkbox for that in the layer settings), the rule driven layers still get written into the submodels totally ignorant of whether they are set to show or hide.

Wow this is stupid: Even if I change the setting within the submodel, nothing changes in the assembly. The stuff has to be expanded, otherwise no use.

Patriot_1776
22-Sapphire II
December 14, 2015

What I've done is suppress all the models in the assembly, then you can insert that in a temp assy, and propagate the rules to that assembly, then exit out of that temp assy, and save the lower assy, then resume the parts..

10-Marble
December 14, 2015

Thanks for the tip, I tried it as you suggested (hope so).

The temp assy already had the rule based layers, so this is what I did:

- suppressed the components

- inserted the assy in the temp assy

- "extended rules"

- saved the assy, erased the temp,

- resumed components.

This is a way to copy the rule based layers to another assembly, but hiding those created assy layers has no impact on the visiblity of the features of components since there is no submodel information to hide or show in these layers.

How do you actually "propagate" if not by "extending"?  Am I missing something?

I think if it's really not possible to manage the visiblity of features within an assembly without changing released sub components, this is a major defect in the software based on pre-pdm-philosophy.

Patriot_1776
22-Sapphire II
December 14, 2015

Extending the rules is the only way I know.  I haven't found a way yet to simply "copy" the rules.

Did I answer the question? 

21-Topaz II
December 14, 2015

Do I understand that you want to control the visibility of component level items at the assembly level?  In other words, add datum planes, points, curves, etc. from a component to an assy layer and hide them inside that assy without adding them to a layer in the component (part or assy). This is not possible, that's not how layers work.  You can only add items native to that assy to an assy layer. To control items at the component level, they must be on a component level layer.

10-Marble
December 14, 2015

Yes, that is exactly what I'd like to do.

On the one hand I understand it when you say it's not possible, for I have come to the same conclusion so far and I guess it might be a performance issue as well, if the components don't report their layers and features to the assembly but the assembly has to regather it everytime.

On the other hand, I ask myself

  • "why not?", since the search function is given and the results are actually shown in the prewiew window even without extending the rule, so what's the problem of storing these information in the assembly?
  • how do others handle this problem? And as I wrote above, pdm-philosophy-wise I figure this a need for some improvement.

Do you think a product idea regarding this would be of use, or is ptc's reaction most likely to be: "Yeah, well, no, sorry no way."

StephenW
23-Emerald III
December 15, 2015

I was sure there was a product idea on this already but I couldn't find it. I hate to say it but layer control has always been this way. You can not control the visibility of sub-models layers without changing the sub-model.

I believe a product idea is your only option.

What is exactly the reason you want to control your sub-model layers from within a top level assembly? I can think of a few, but not too many. Maybe there is another solution to your specific problem.