mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0032133: Modeling Data - Restriction of access to internal arrays for Poly_Triangulation, revision of API
Removed methods from Poly_Triangulation/Poly_PolygonOnTriangulation giving access to internal arrays of 2d and 3d nodes, triangles and normals.
This commit is contained in:
@@ -198,13 +198,36 @@ ShapePersistent_Poly::Translate(const Handle(Poly_Triangulation)& thePolyTriang,
|
||||
{
|
||||
aPT = new Triangulation;
|
||||
aPT->myPersistent = new pTriangulation;
|
||||
|
||||
// Create an array of nodes
|
||||
TColgp_Array1OfPnt pArrayOfNodes (1, thePolyTriang->NbNodes());
|
||||
for (Standard_Integer i = 1; i <= thePolyTriang->NbNodes(); i++)
|
||||
{
|
||||
pArrayOfNodes.SetValue (i, thePolyTriang->Node (i));
|
||||
}
|
||||
|
||||
// Create an array of triangles
|
||||
Poly_Array1OfTriangle pArrayOfTriangles (1, thePolyTriang->NbTriangles());
|
||||
for (Standard_Integer i = 1; i <= thePolyTriang->NbTriangles(); i++)
|
||||
{
|
||||
pArrayOfTriangles.SetValue (i, thePolyTriang->Triangle (i));
|
||||
}
|
||||
|
||||
aPT->myPersistent->myNodes =
|
||||
StdLPersistent_HArray1::Translate<TColgp_HArray1OfPnt>("PColgp_HArray1OfPnt", thePolyTriang->Nodes());
|
||||
StdLPersistent_HArray1::Translate<TColgp_HArray1OfPnt>("PColgp_HArray1OfPnt", pArrayOfNodes);
|
||||
aPT->myPersistent->myTriangles =
|
||||
StdLPersistent_HArray1::Translate<Poly_HArray1OfTriangle>("PPoly_HArray1OfTriangle", thePolyTriang->Triangles());
|
||||
StdLPersistent_HArray1::Translate<Poly_HArray1OfTriangle>("PPoly_HArray1OfTriangle", pArrayOfTriangles);
|
||||
if (thePolyTriang->HasUVNodes()) {
|
||||
|
||||
// Create an array of UV-nodes
|
||||
TColgp_Array1OfPnt2d pArrayOfUVNodes (1, thePolyTriang->NbNodes());
|
||||
for (Standard_Integer i = 1; i <= thePolyTriang->NbNodes(); i++)
|
||||
{
|
||||
pArrayOfUVNodes.SetValue (i, thePolyTriang->UVNode (i));
|
||||
}
|
||||
|
||||
aPT->myPersistent->myUVNodes =
|
||||
StdLPersistent_HArray1::Translate<TColgp_HArray1OfPnt2d>("PColgp_HArray1OfPnt2d", thePolyTriang->UVNodes());
|
||||
StdLPersistent_HArray1::Translate<TColgp_HArray1OfPnt2d>("PColgp_HArray1OfPnt2d", pArrayOfUVNodes);
|
||||
}
|
||||
theMap.Bind(thePolyTriang, aPT);
|
||||
}
|
||||
|
Reference in New Issue
Block a user