mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-09 13:22:24 +03:00
0029958: Visualization - add method Graphic3d_ArrayOfPrimitives::AddEdges() taking up to 4 edges
This commit is contained in:
@@ -55,12 +55,8 @@ namespace
|
|||||||
theTris->AddVertex (gp_Pnt (theXLeft + theSizeX, theYBottom, 0.0), theColorBottom);
|
theTris->AddVertex (gp_Pnt (theXLeft + theSizeX, theYBottom, 0.0), theColorBottom);
|
||||||
theTris->AddVertex (gp_Pnt (theXLeft, theYBottom + theSizeY, 0.0), theColorTop);
|
theTris->AddVertex (gp_Pnt (theXLeft, theYBottom + theSizeY, 0.0), theColorTop);
|
||||||
theTris->AddVertex (gp_Pnt (theXLeft + theSizeX, theYBottom + theSizeY, 0.0), theColorTop);
|
theTris->AddVertex (gp_Pnt (theXLeft + theSizeX, theYBottom + theSizeY, 0.0), theColorTop);
|
||||||
theTris->AddEdge (aVertIndex);
|
theTris->AddEdges (aVertIndex, aVertIndex + 1, aVertIndex + 2);
|
||||||
theTris->AddEdge (aVertIndex + 1);
|
theTris->AddEdges (aVertIndex + 1, aVertIndex + 2, aVertIndex + 3);
|
||||||
theTris->AddEdge (aVertIndex + 2);
|
|
||||||
theTris->AddEdge (aVertIndex + 1);
|
|
||||||
theTris->AddEdge (aVertIndex + 2);
|
|
||||||
theTris->AddEdge (aVertIndex + 3);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//! Compute hue angle from specified value.
|
//! Compute hue angle from specified value.
|
||||||
|
@@ -631,6 +631,39 @@ public: //! @name optional array of Indices/Edges for using shared Vertex data
|
|||||||
//! @return the actual edges number
|
//! @return the actual edges number
|
||||||
Standard_EXPORT Standard_Integer AddEdge (const Standard_Integer theVertexIndex);
|
Standard_EXPORT Standard_Integer AddEdge (const Standard_Integer theVertexIndex);
|
||||||
|
|
||||||
|
//! Convenience method, adds two vertex indices (a segment) in the range [1,VertexNumber()] in the array.
|
||||||
|
//! @return the actual edges number
|
||||||
|
Standard_Integer AddEdges (Standard_Integer theVertexIndex1,
|
||||||
|
Standard_Integer theVertexIndex2)
|
||||||
|
{
|
||||||
|
AddEdge (theVertexIndex1);
|
||||||
|
return AddEdge (theVertexIndex2);
|
||||||
|
}
|
||||||
|
|
||||||
|
//! Convenience method, adds three vertex indices (a triangle) in the range [1,VertexNumber()] in the array.
|
||||||
|
//! @return the actual edges number
|
||||||
|
Standard_Integer AddEdges (Standard_Integer theVertexIndex1,
|
||||||
|
Standard_Integer theVertexIndex2,
|
||||||
|
Standard_Integer theVertexIndex3)
|
||||||
|
{
|
||||||
|
AddEdge (theVertexIndex1);
|
||||||
|
AddEdge (theVertexIndex2);
|
||||||
|
return AddEdge (theVertexIndex3);
|
||||||
|
}
|
||||||
|
|
||||||
|
//! Convenience method, adds four vertex indices (a quad) in the range [1,VertexNumber()] in the array.
|
||||||
|
//! @return the actual edges number
|
||||||
|
Standard_Integer AddEdges (Standard_Integer theVertexIndex1,
|
||||||
|
Standard_Integer theVertexIndex2,
|
||||||
|
Standard_Integer theVertexIndex3,
|
||||||
|
Standard_Integer theVertexIndex4)
|
||||||
|
{
|
||||||
|
AddEdge (theVertexIndex1);
|
||||||
|
AddEdge (theVertexIndex2);
|
||||||
|
AddEdge (theVertexIndex3);
|
||||||
|
return AddEdge (theVertexIndex4);
|
||||||
|
}
|
||||||
|
|
||||||
public: //! @name optional array of Bounds/Subgroups within primitive array (e.g. restarting primitives / assigning colors)
|
public: //! @name optional array of Bounds/Subgroups within primitive array (e.g. restarting primitives / assigning colors)
|
||||||
|
|
||||||
//! Returns optional bounds buffer.
|
//! Returns optional bounds buffer.
|
||||||
|
@@ -268,9 +268,9 @@ namespace
|
|||||||
aV1.Cross (aV2);
|
aV1.Cross (aV2);
|
||||||
if (aV1.SquareMagnitude() > aPreci)
|
if (aV1.SquareMagnitude() > aPreci)
|
||||||
{
|
{
|
||||||
anArray->AddEdge (anIndex[0] + aDecal);
|
anArray->AddEdges (anIndex[0] + aDecal,
|
||||||
anArray->AddEdge (anIndex[1] + aDecal);
|
anIndex[1] + aDecal,
|
||||||
anArray->AddEdge (anIndex[2] + aDecal);
|
anIndex[2] + aDecal);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user