Setting assembly views using saved views within a component in the assembly
I have a part that has numerous auxiliary views defined and saved in the part. This part is a component in an assembly. In assembly mode I want to (not manually) replicate the aux views present in the part in assembly mode so that the assembly has the same view(s) saved and available to orient the model (assembly). The views need not have the same name as those in the part, just the orientation.
PTC has a documented work around for this "problem" in part mode by creating a saved copy start part from a source part to use in a target part to replicate the existing views. This does not work across modes i.e. part mode to assembly mode.
Since the views exist in the assembly (implicitly) via their definition within the component (part) it would be useful to be able to access these orientations using the view manager by activating the component within assembly mode which could then be saved in the assembly. This is not the behavior observed with testing in Creo 3.0.
Is anyone aware of an enhancement request residing with the TCs or PTC for this functionality? If so I would like to possibly add to it with specific use cases. If not are there other users that see value in this functionality being made available?
Has anyone automated this in any way? Does anyone know if the library calls are available in J-Link or Toolkit to query the views in a component (part) in assembly mode and then create views in the assembly to replicate the orientation?
Re: Setting assembly views using saved views within a component in the assembly
I expect the way to work this is to evaluate the view instructions in the part and copy the transformation that it produces and then find the transformation between the part and the default CSYS for the assembly the part is in and append the part-view transformation to the assembly -> part transformation.
It will be complicated because there will be a change in view-zoom/scaling between the two contexts.
I would not expect this process to be an API or other built-in library function.
It's my understanding that the views are evaluated in a parametric fashion, so that if the references change the view transformations will also change. This is why there can be frozen views due to failed view instructions. So, an alternative would be to create a new view with new references that copies the structure of the existing part view, but substitutes assembly level pointers to the part level features.
I would be surprised if J-Link had the access necessary to duplicate the references, but it should do the first method.