Community Tip - You can change your system assigned username to something more personal in your community settings. X
To get the components of the drawing view, a component for the simplified representation was obtained using ProSimprepdataitemsVisit.
ProSimprepdataitemsVisit visited with components that are not visible due to the section settings.
This is not good.
Do you have an idea to get the components visible in the drawing view?
Thank you.
Warm Regards,
SeonHo Cha
P.S
I created a case, but I want to share it if you have experience with other users who have resolved issues like me.
Solved! Go to Solution.
@YaroslavSin wrote:
I think, you can use function to get components from a section.
ProXsecGeometryCollect
Returns the geometry of non-empty cross-section components (intersecting their sub-assemblies)
Hello all,
Assuming we are dealing with a simplistic planar x-section of an assembly model with a simplified representation and there are no additional component visibility settings via layers, component display, hidden states and so on...
Assuming it is Creo 4.0 or newer, earlier versions could have some API missing...
This is just an idea:
HIH.
FV.
I think, you can use function to get components from a section.
ProXsecGeometryCollect
Returns the geometry of non-empty cross-section components (intersecting their sub-assemblies) |
Do you know how to convert a ProXsecGeometry array obtained from ProXsecGeometryCollect to a component(ProMdl or ProModelitem)?
Your idea is good, but the range of motion is small.
ProXsecGeometryCollect returns only the components that touch the section.
A better idea is to get an object that is displayed in a cross section.
@YaroslavSin wrote:
I think, you can use function to get components from a section.
ProXsecGeometryCollect
Returns the geometry of non-empty cross-section components (intersecting their sub-assemblies)
Hello all,
Assuming we are dealing with a simplistic planar x-section of an assembly model with a simplified representation and there are no additional component visibility settings via layers, component display, hidden states and so on...
Assuming it is Creo 4.0 or newer, earlier versions could have some API missing...
This is just an idea:
HIH.
FV.
I would use
extern ProError ProDrawingSolidsCollect (
ProDrawing drawing,
ProSolid **solids);
/*
Purpose: Retrieves an array of pointers to the models that belong
to a drawing.
<p>
<b>NOTES: </b>
<p>A model is in a drawing if it has been explicitly added by the
user. For assemblies, only the root assembly appears in the
list.
Input Arguments:
drawing - The drawing.
Output Arguments:
solids - A list of models. The function
allocates the memory for this argument.
To free the memory, call <b>ProArrayFree()</b>.
Return Values:
PRO_TK_NO_ERROR - Success
PRO_TK_BAD_INPUTS - One or more arguments was invalid
PRO_TK_E_NOT_FOUND - No drawing models were found
*/
Please try API ProDrawingViewSolidGet() once.