mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-09-03 14:10:33 +03:00
Update MeshVS_PrsBuilder & MeshVS_MeshPrsBuilder.
This commit is contained in:
@@ -158,10 +158,17 @@ void MeshVS_MeshPrsBuilder::BuildNodes ( const Handle(Prs3d_Presentation)& Prs,
|
||||
|
||||
if ( k>0 )
|
||||
{
|
||||
Prs3d_Root::NewGroup ( Prs );
|
||||
Handle (Graphic3d_Group) aNodeGroup = Prs3d_Root::CurrentGroup ( Prs );
|
||||
aNodeGroup->SetPrimitivesAspect ( aNodeMark );
|
||||
aNodeGroup->AddPrimitiveArray (aNodePoints);
|
||||
if (myIsCreateGroup)
|
||||
{
|
||||
Prs3d_Root::NewGroup(Prs);
|
||||
Handle(Graphic3d_Group) aNodeGroup = Prs3d_Root::CurrentGroup(Prs);
|
||||
aNodeGroup->SetPrimitivesAspect(aNodeMark);
|
||||
aNodeGroup->AddPrimitiveArray(aNodePoints);
|
||||
}
|
||||
else
|
||||
{
|
||||
myArrayOfPrimitives = aNodePoints;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -506,8 +513,22 @@ void MeshVS_MeshPrsBuilder::BuildElements( const Handle(Prs3d_Presentation)& Prs
|
||||
// << "Face segs: " << aEdgeSegments->ItemNumber() << " from " << aNbEdgePrimitives << std::endl
|
||||
// << "Link segs: " << aLinkSegments->ItemNumber() << " from " << aNbLinkPrimitives << std::endl;
|
||||
|
||||
DrawArrays ( Prs, aFaceTriangles, aEdgeSegments, aLinkSegments, aVolmTriangles,
|
||||
!showEdges, HasSelectFlag, aFill, aBeam );
|
||||
if (myIsCreateGroup)
|
||||
{
|
||||
DrawArrays ( Prs, aFaceTriangles, aEdgeSegments, aLinkSegments, aVolmTriangles,
|
||||
!showEdges, HasSelectFlag, aFill, aBeam );
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!aFaceTriangles.IsNull())
|
||||
{
|
||||
myArrayOfPrimitives = aFaceTriangles;
|
||||
}
|
||||
else if (!aEdgeSegments.IsNull())
|
||||
{
|
||||
myArrayOfPrimitives = aEdgeSegments;
|
||||
}
|
||||
}
|
||||
|
||||
if ( !aCustomElements.IsEmpty() )
|
||||
CustomBuild ( Prs, aCustomElements, IDsToExclude, DisplayMode );
|
||||
|
@@ -106,6 +106,16 @@ public:
|
||||
|
||||
|
||||
|
||||
void SetIsCreateGroup(const Standard_Boolean theIsCreate)
|
||||
{
|
||||
myIsCreateGroup = theIsCreate;
|
||||
}
|
||||
|
||||
const Handle(Graphic3d_ArrayOfPrimitives)& ArrayOfPrimitives() const
|
||||
{
|
||||
return myArrayOfPrimitives;
|
||||
}
|
||||
|
||||
|
||||
DEFINE_STANDARD_RTTIEXT(MeshVS_PrsBuilder,MMgt_TShared)
|
||||
|
||||
@@ -142,6 +152,9 @@ private:
|
||||
Standard_Integer myPriority;
|
||||
Handle(PrsMgr_PresentationManager3d) myPrsMgr;
|
||||
|
||||
protected:
|
||||
mutable Handle(Graphic3d_ArrayOfPrimitives) myArrayOfPrimitives;
|
||||
Standard_Boolean myIsCreateGroup;
|
||||
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user