mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-01-26 20:20:34 +05:00
Replaced NMTTools map with NCollection map for removing dependencies from GEOM module.
This commit is contained in:
parent
3e906035e4
commit
ab6b16e673
38
src/SMESH/SMESH_IndexedDataMapOfShapeIndexedMapOfShape.hxx
Normal file
38
src/SMESH/SMESH_IndexedDataMapOfShapeIndexedMapOfShape.hxx
Normal file
@ -0,0 +1,38 @@
|
||||
// File: SMESH_IndexedDataMapOfShapeIndexedMapOfShape.hxx
|
||||
// Created: 20.09.05 09:51:12
|
||||
// Author: Sergey KUUL
|
||||
// Copyright: Open CASCADE 2005
|
||||
|
||||
|
||||
#ifndef SMESH_IndexedMapOfShape_HeaderFile
|
||||
#define SMESH_IndexedMapOfShape_HeaderFile
|
||||
|
||||
#include <NCollection_DefineIndexedMap.hxx>
|
||||
|
||||
#include <TopoDS_Shape.hxx>
|
||||
|
||||
inline Standard_Boolean IsEqual(const TopoDS_Shape& S1,
|
||||
const TopoDS_Shape& S2)
|
||||
{
|
||||
return S1.IsSame(S2);
|
||||
}
|
||||
|
||||
/// Class SMESH_IndexedMapOfShape
|
||||
|
||||
DEFINE_BASECOLLECTION (SMESH_BaseCollectionShape, TopoDS_Shape)
|
||||
DEFINE_INDEXEDMAP (SMESH_IndexedMapOfShape, SMESH_BaseCollectionShape, TopoDS_Shape)
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef SMESH_IndexedDataMapOfShapeIndexedMapOfShape_HeaderFile
|
||||
#define SMESH_IndexedDataMapOfShapeIndexedMapOfShape_HeaderFile
|
||||
|
||||
#include <NCollection_DefineIndexedDataMap.hxx>
|
||||
|
||||
/// Class SMESH_IndexedDataMapOfShapeIndexedMapOfShape
|
||||
|
||||
DEFINE_BASECOLLECTION (SMESH_BaseCollectionIndexedMapOfShape, SMESH_IndexedMapOfShape)
|
||||
DEFINE_INDEXEDDATAMAP (SMESH_IndexedDataMapOfShapeIndexedMapOfShape,
|
||||
SMESH_BaseCollectionIndexedMapOfShape, TopoDS_Shape,
|
||||
SMESH_IndexedMapOfShape)
|
||||
#endif
|
@ -1106,7 +1106,8 @@ bool SMESH_Mesh::IsPropagatedHypothesis (const TopoDS_Shape& theEdge,
|
||||
{
|
||||
int nbChains = _mapPropagationChains.Extent();
|
||||
for (int i = 1; i <= nbChains; i++) {
|
||||
const TopTools_IndexedMapOfShape& aChain = _mapPropagationChains.FindFromIndex(i);
|
||||
//const TopTools_IndexedMapOfShape& aChain = _mapPropagationChains.FindFromIndex(i);
|
||||
const SMESH_IndexedMapOfShape& aChain = _mapPropagationChains.FindFromIndex(i);
|
||||
if (aChain.Contains(theEdge)) {
|
||||
theMainEdge = _mapPropagationChains.FindKey(i);
|
||||
return true;
|
||||
@ -1127,7 +1128,7 @@ bool SMESH_Mesh::IsReversedInChain (const TopoDS_Shape& theEdge,
|
||||
if ( !theMainEdge.IsNull() && !theEdge.IsNull() &&
|
||||
_mapPropagationChains.Contains( theMainEdge ))
|
||||
{
|
||||
const TopTools_IndexedMapOfShape& aChain =
|
||||
const SMESH_IndexedMapOfShape& aChain =
|
||||
_mapPropagationChains.FindFromKey( theMainEdge );
|
||||
int index = aChain.FindIndex( theEdge );
|
||||
if ( index )
|
||||
@ -1143,7 +1144,7 @@ bool SMESH_Mesh::IsReversedInChain (const TopoDS_Shape& theEdge,
|
||||
//=============================================================================
|
||||
void SMESH_Mesh::CleanMeshOnPropagationChain (const TopoDS_Shape& theMainEdge)
|
||||
{
|
||||
const TopTools_IndexedMapOfShape& aChain = _mapPropagationChains.FindFromKey(theMainEdge);
|
||||
const SMESH_IndexedMapOfShape& aChain = _mapPropagationChains.FindFromKey(theMainEdge);
|
||||
int i, nbEdges = aChain.Extent();
|
||||
for (i = 1; i <= nbEdges; i++) {
|
||||
TopoDS_Shape anEdge = aChain.FindKey(i);
|
||||
@ -1210,7 +1211,7 @@ bool SMESH_Mesh::RemovePropagationChain (const TopoDS_Shape& theMainEdge)
|
||||
TopoDS_Vertex anEmptyShape;
|
||||
BRep_Builder BB;
|
||||
BB.MakeVertex(anEmptyShape, gp_Pnt(0,0,0), 0.1);
|
||||
TopTools_IndexedMapOfShape anEmptyMap;
|
||||
SMESH_IndexedMapOfShape anEmptyMap;
|
||||
_mapPropagationChains.Substitute(i, anEmptyShape, anEmptyMap);
|
||||
}
|
||||
|
||||
@ -1228,7 +1229,7 @@ bool SMESH_Mesh::BuildPropagationChain (const TopoDS_Shape& theMainEdge)
|
||||
|
||||
// Add new chain, if there is no
|
||||
if (!_mapPropagationChains.Contains(theMainEdge)) {
|
||||
TopTools_IndexedMapOfShape aNewChain;
|
||||
SMESH_IndexedMapOfShape aNewChain;
|
||||
_mapPropagationChains.Add(theMainEdge, aNewChain);
|
||||
}
|
||||
|
||||
@ -1240,7 +1241,7 @@ bool SMESH_Mesh::BuildPropagationChain (const TopoDS_Shape& theMainEdge)
|
||||
}
|
||||
|
||||
// Edges, on which the 1D hypothesis will be propagated from <theMainEdge>
|
||||
TopTools_IndexedMapOfShape& aChain = _mapPropagationChains.ChangeFromKey(theMainEdge);
|
||||
SMESH_IndexedMapOfShape& aChain = _mapPropagationChains.ChangeFromKey(theMainEdge);
|
||||
if (aChain.Extent() > 0) {
|
||||
CleanMeshOnPropagationChain(theMainEdge);
|
||||
aChain.Clear();
|
||||
|
@ -37,7 +37,8 @@
|
||||
#include "SMESHDS_Command.hxx"
|
||||
#include "SMDSAbs_ElementType.hxx"
|
||||
|
||||
#include "NMTTools_IndexedDataMapOfShapeIndexedMapOfShape.hxx"
|
||||
//#include "NMTTools_IndexedDataMapOfShapeIndexedMapOfShape.hxx"
|
||||
#include "SMESH_IndexedDataMapOfShapeIndexedMapOfShape.hxx"
|
||||
|
||||
#include "Utils_SALOME_Exception.hxx"
|
||||
|
||||
@ -70,7 +71,8 @@ class TopTools_ListOfShape;
|
||||
class SMESH_subMesh;
|
||||
class SMESH_HypoFilter;
|
||||
|
||||
typedef NMTTools_IndexedDataMapOfShapeIndexedMapOfShape IndexedMapOfChain;
|
||||
//typedef NMTTools_IndexedDataMapOfShapeIndexedMapOfShape IndexedMapOfChain;
|
||||
typedef SMESH_IndexedDataMapOfShapeIndexedMapOfShape IndexedMapOfChain;
|
||||
|
||||
class SMESH_Mesh
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user