Porting to OCCT 7.4 dev

This commit is contained in:
mnt 2019-02-19 14:49:24 +03:00 committed by vsr
parent 29ca56ad9f
commit b9b6785c00
2 changed files with 16 additions and 0 deletions

View File

@ -32,6 +32,8 @@
#include <BRepAdaptor_Surface.hxx> #include <BRepAdaptor_Surface.hxx>
#include <BRepMesh_Delaun.hxx> #include <BRepMesh_Delaun.hxx>
#include <Basics_OCCTVersion.hxx>
//================================================================================ //================================================================================
/*! /*!
* \brief Construct a Delaunay triangulation of given boundary nodes * \brief Construct a Delaunay triangulation of given boundary nodes
@ -82,7 +84,11 @@ SMESH_Delaunay::SMESH_Delaunay(const std::vector< const UVPtStructVec* > & bound
_bndNodes.resize( nbP ); _bndNodes.resize( nbP );
// fill boundary points // fill boundary points
#if OCC_VERSION_LARGE <= 0x07030000
BRepMesh::Array1OfVertexOfDelaun bndVert( 1, 1 + nbP ); BRepMesh::Array1OfVertexOfDelaun bndVert( 1, 1 + nbP );
#else
IMeshData::Array1OfVertexOfDelaun bndVert( 1, 1 + nbP );
#endif
BRepMesh_Vertex v( 0, 0, BRepMesh_Frontier ); BRepMesh_Vertex v( 0, 0, BRepMesh_Frontier );
for ( size_t iW = 0; iW < boundaryNodes.size(); ++iW ) for ( size_t iW = 0; iW < boundaryNodes.size(); ++iW )
{ {
@ -218,7 +224,11 @@ const BRepMesh_Triangle* SMESH_Delaunay::FindTriangle( const gp_XY&
gp_XY seg = uv - gc; gp_XY seg = uv - gc;
tria->Edges( linkIDs, ori ); tria->Edges( linkIDs, ori );
#if OCC_VERSION_LARGE <= 0x07030000
int triaID = _triaDS->IndexOf( *tria ); int triaID = _triaDS->IndexOf( *tria );
#else
int triaID = tria - & ( _triaDS->GetElement( 0 ));
#endif
tria = 0; tria = 0;
for ( int i = 0; i < 3; ++i ) for ( int i = 0; i < 3; ++i )
@ -262,8 +272,13 @@ const BRepMesh_Triangle* SMESH_Delaunay::GetTriangleNear( int iBndNode )
{ {
int nodeIDs[3]; int nodeIDs[3];
int nbNbNodes = _bndNodes.size(); int nbNbNodes = _bndNodes.size();
#if OCC_VERSION_LARGE <= 0x07030000
const BRepMesh::ListOfInteger & linkIds = _triaDS->LinksConnectedTo( iBndNode + 1 ); const BRepMesh::ListOfInteger & linkIds = _triaDS->LinksConnectedTo( iBndNode + 1 );
BRepMesh::ListOfInteger::const_iterator iLink = linkIds.cbegin(); BRepMesh::ListOfInteger::const_iterator iLink = linkIds.cbegin();
#else
const IMeshData::ListOfInteger & linkIds = _triaDS->LinksConnectedTo( iBndNode + 1 );
IMeshData::ListOfInteger::const_iterator iLink = linkIds.cbegin();
#endif
for ( ; iLink != linkIds.cend(); ++iLink ) for ( ; iLink != linkIds.cend(); ++iLink )
{ {
const BRepMesh_PairOfIndex & triaIds = _triaDS->ElementsConnectedTo( *iLink ); const BRepMesh_PairOfIndex & triaIds = _triaDS->ElementsConnectedTo( *iLink );

View File

@ -29,6 +29,7 @@
#include "SMESH_TypeDefs.hxx" #include "SMESH_TypeDefs.hxx"
#include <TopoDS_Face.hxx>
#include <BRepMesh_DataStructureOfDelaun.hxx> #include <BRepMesh_DataStructureOfDelaun.hxx>
/*! /*!