Migration to OCCT 7.0

This commit is contained in:
mpa 2016-02-24 16:46:43 +03:00 committed by vsr
parent 004925bca4
commit e77162f42f
20 changed files with 102 additions and 99 deletions

View File

@ -40,6 +40,7 @@
#include <TopoDS_Shape.hxx> #include <TopoDS_Shape.hxx>
#include <TopTools_IndexedDataMapOfShapeListOfShape.hxx> #include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
#include <TopTools_ListOfShape.hxx>
#include <map> #include <map>
#include <list> #include <list>
@ -53,7 +54,6 @@
class SMESH_Gen; class SMESH_Gen;
class SMESHDS_Document; class SMESHDS_Document;
class SMESH_Group; class SMESH_Group;
class TopTools_ListOfShape;
class SMESH_subMesh; class SMESH_subMesh;
class SMESH_HypoFilter; class SMESH_HypoFilter;
class TopoDS_Solid; class TopoDS_Solid;

View File

@ -33,26 +33,13 @@
#include <SMDS_Mesh.hxx> #include <SMDS_Mesh.hxx>
#include <SMDSAbs_ElementType.hxx> #include <SMDSAbs_ElementType.hxx>
IMPLEMENT_STANDARD_HANDLE(SMESHGUI_Filter, VTKViewer_Filter) OCCT_IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_Filter, VTKViewer_Filter)
IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_Filter, VTKViewer_Filter) OCCT_IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_PredicateFilter, SMESHGUI_Filter)
OCCT_IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_QuadrangleFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_HANDLE(SMESHGUI_PredicateFilter, SMESHGUI_Filter) OCCT_IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_TriangleFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_PredicateFilter, SMESHGUI_Filter) OCCT_IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_FacesFilter, SMESHGUI_Filter)
OCCT_IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_VolumesFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_HANDLE(SMESHGUI_QuadrangleFilter, SMESHGUI_Filter) OCCT_IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_VolumeShapeFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_QuadrangleFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_HANDLE(SMESHGUI_TriangleFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_TriangleFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_HANDLE(SMESHGUI_FacesFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_FacesFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_HANDLE(SMESHGUI_VolumesFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_VolumesFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_HANDLE(SMESHGUI_VolumeShapeFilter, SMESHGUI_Filter)
IMPLEMENT_STANDARD_RTTIEXT(SMESHGUI_VolumeShapeFilter, SMESHGUI_Filter)
/* /*
Class : SMESHGUI_PredicateFilter Class : SMESHGUI_PredicateFilter

View File

@ -70,7 +70,7 @@ public:
Standard_EXPORT virtual bool IsObjValid( const int ) const = 0; Standard_EXPORT virtual bool IsObjValid( const int ) const = 0;
public: public:
DEFINE_STANDARD_RTTI(SMESHGUI_Filter) OCCT_DEFINE_STANDARD_RTTIEXT(SMESHGUI_Filter,VTKViewer_Filter)
}; };
/* /*
@ -99,7 +99,7 @@ private:
SMESH::Predicate_var myPred; SMESH::Predicate_var myPred;
public: public:
DEFINE_STANDARD_RTTI(SMESHGUI_PredicateFilter) OCCT_DEFINE_STANDARD_RTTIEXT(SMESHGUI_PredicateFilter,SMESHGUI_Filter)
}; };
/* /*
@ -121,7 +121,7 @@ public:
Standard_EXPORT virtual bool IsNodeFilter() const; Standard_EXPORT virtual bool IsNodeFilter() const;
public: public:
DEFINE_STANDARD_RTTI(SMESHGUI_QuadrangleFilter) OCCT_DEFINE_STANDARD_RTTIEXT(SMESHGUI_QuadrangleFilter,SMESHGUI_Filter)
}; };
/* /*
@ -143,7 +143,7 @@ public:
Standard_EXPORT virtual bool IsNodeFilter() const; Standard_EXPORT virtual bool IsNodeFilter() const;
public: public:
DEFINE_STANDARD_RTTI(SMESHGUI_TriangleFilter) OCCT_DEFINE_STANDARD_RTTIEXT(SMESHGUI_TriangleFilter,SMESHGUI_Filter)
}; };
/* /*
@ -165,7 +165,7 @@ public:
Standard_EXPORT virtual bool IsNodeFilter() const; Standard_EXPORT virtual bool IsNodeFilter() const;
public: public:
DEFINE_STANDARD_RTTI(SMESHGUI_FacesFilter) OCCT_DEFINE_STANDARD_RTTIEXT(SMESHGUI_FacesFilter,SMESHGUI_Filter)
}; };
/* /*
@ -187,7 +187,7 @@ public:
Standard_EXPORT virtual bool IsNodeFilter() const; Standard_EXPORT virtual bool IsNodeFilter() const;
public: public:
DEFINE_STANDARD_RTTI(SMESHGUI_VolumesFilter) OCCT_DEFINE_STANDARD_RTTIEXT(SMESHGUI_VolumesFilter,SMESHGUI_Filter)
}; };
/* /*
@ -211,7 +211,7 @@ public:
Standard_EXPORT static int GetId( SMDSAbs_GeometryType geom ); Standard_EXPORT static int GetId( SMDSAbs_GeometryType geom );
public: public:
DEFINE_STANDARD_RTTI(SMESHGUI_VolumeShapeFilter) OCCT_DEFINE_STANDARD_RTTIEXT(SMESHGUI_VolumeShapeFilter,SMESHGUI_Filter)
}; };
#endif // SMESHGUI_FILTER_H #endif // SMESHGUI_FILTER_H

View File

@ -33,12 +33,14 @@
// SALOME KERNEL includes // SALOME KERNEL includes
#include <SALOMEDSClient_definitions.hxx> #include <SALOMEDSClient_definitions.hxx>
// GUI includes
#include <SALOME_InteractiveObject.hxx>
// IDL includes // IDL includes
#include <SALOMEconfig.h> #include <SALOMEconfig.h>
#include CORBA_SERVER_HEADER(GEOM_Gen) #include CORBA_SERVER_HEADER(GEOM_Gen)
class SALOMEDSClient_SObject; class SALOMEDSClient_SObject;
class Handle_SALOME_InteractiveObject;
class QString; class QString;
namespace SMESH namespace SMESH
@ -53,7 +55,7 @@ namespace SMESH
SMESHGUI_EXPORT GEOM::GEOM_Object_ptr GetSubShape( GEOM::GEOM_Object_ptr, long ); SMESHGUI_EXPORT GEOM::GEOM_Object_ptr GetSubShape( GEOM::GEOM_Object_ptr, long );
SMESHGUI_EXPORT bool GetGeomEntries( Handle_SALOME_InteractiveObject& hypIO, SMESHGUI_EXPORT bool GetGeomEntries( Handle(SALOME_InteractiveObject)& hypIO,
QString& subGeom, QString& meshGeom); QString& subGeom, QString& meshGeom);
} }

View File

@ -26,7 +26,6 @@
#include <SMDS_Mesh.hxx> #include <SMDS_Mesh.hxx>
#include <SVTK_ViewWindow.h> #include <SVTK_ViewWindow.h>
#include <TColStd_MapOfInteger.hxx>
#include <TColStd_MapIteratorOfMapOfInteger.hxx> #include <TColStd_MapIteratorOfMapOfInteger.hxx>
#include <vtkActor2D.h> #include <vtkActor2D.h>

View File

@ -28,12 +28,13 @@
#include <list> #include <list>
#include <vector> #include <vector>
#include <TColStd_MapOfInteger.hxx>
#include <gp_XYZ.hxx> #include <gp_XYZ.hxx>
class SALOME_Actor; class SALOME_Actor;
class SMDS_Mesh; class SMDS_Mesh;
class SVTK_ViewWindow; class SVTK_ViewWindow;
class TColStd_MapOfInteger;
class vtkActor2D; class vtkActor2D;
class vtkLabeledDataMapper; class vtkLabeledDataMapper;
class vtkMaskPoints; class vtkMaskPoints;

View File

@ -54,7 +54,6 @@
#include <SALOME_ListIO.hxx> #include <SALOME_ListIO.hxx>
// OCCT includes // OCCT includes
#include <TColStd_MapOfInteger.hxx>
#include <TColStd_MapIteratorOfMapOfInteger.hxx> #include <TColStd_MapIteratorOfMapOfInteger.hxx>
// IDL includes // IDL includes

View File

@ -35,6 +35,7 @@
// OCCT includes // OCCT includes
#include <gp_XYZ.hxx> #include <gp_XYZ.hxx>
#include <TColStd_MapOfInteger.hxx>
// STL includes // STL includes
#include <list> #include <list>
@ -59,7 +60,6 @@ class SMESHGUI_SpinBox;
class SMESH_Actor; class SMESH_Actor;
class SUIT_SelectionFilter; class SUIT_SelectionFilter;
class SVTK_Selector; class SVTK_Selector;
class TColStd_MapOfInteger;
namespace SMESH namespace SMESH
{ {

View File

@ -40,8 +40,10 @@
#include <SALOMEconfig.h> #include <SALOMEconfig.h>
#include CORBA_SERVER_HEADER(SMESH_Mesh) #include CORBA_SERVER_HEADER(SMESH_Mesh)
// OCCT includes
#include <TColStd_MapOfInteger.hxx>
class SUIT_SelectionFilter; class SUIT_SelectionFilter;
class TColStd_MapOfInteger;
class SVTK_ViewWindow; class SVTK_ViewWindow;
class SVTK_Selector; class SVTK_Selector;
class SMESH_Actor; class SMESH_Actor;

View File

@ -72,7 +72,6 @@
#include <vtkUnstructuredGrid.h> #include <vtkUnstructuredGrid.h>
// OCCT includes // OCCT includes
#include <TColStd_IndexedMapOfInteger.hxx>
#include <Standard_ErrorHandler.hxx> #include <Standard_ErrorHandler.hxx>
namespace SMESH namespace SMESH

View File

@ -40,7 +40,8 @@
#include <SALOME_InteractiveObject.hxx> #include <SALOME_InteractiveObject.hxx>
#include <VTKViewer_Filter.h> #include <VTKViewer_Filter.h>
class TColStd_IndexedMapOfInteger; // OCCT includes
#include <TColStd_IndexedMapOfInteger.hxx>
class SALOMEDSClient_Study; class SALOMEDSClient_Study;

View File

@ -584,7 +584,7 @@ bool SMESH_ElementSearcherImpl::getIntersParamOnLine(const gp_Lin& lin
{ {
GC_MakeSegment edge( SMESH_TNodeXYZ( face->GetNode( i )), GC_MakeSegment edge( SMESH_TNodeXYZ( face->GetNode( i )),
SMESH_TNodeXYZ( face->GetNode( (i+1)%nbNodes) )); SMESH_TNodeXYZ( face->GetNode( (i+1)%nbNodes) ));
anExtCC.Init( lineCurve, edge); anExtCC.Init( lineCurve, edge.Value() );
if ( anExtCC.NbExtrema() > 0 && anExtCC.LowerDistance() <= tol) if ( anExtCC.NbExtrema() > 0 && anExtCC.LowerDistance() <= tol)
{ {
Quantity_Parameter pl, pe; Quantity_Parameter pl, pe;

View File

@ -50,38 +50,22 @@
#include <unistd.h> #include <unistd.h>
#endif #endif
OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyObject ,Standard_Transient);
IMPLEMENT_STANDARD_HANDLE (_pyObject ,Standard_Transient); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyCommand ,Standard_Transient);
IMPLEMENT_STANDARD_HANDLE (_pyCommand ,Standard_Transient); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyHypothesisReader,Standard_Transient);
IMPLEMENT_STANDARD_HANDLE (_pyHypothesisReader,Standard_Transient); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyGen ,_pyObject);
IMPLEMENT_STANDARD_HANDLE (_pyGen ,_pyObject); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyMesh ,_pyObject);
IMPLEMENT_STANDARD_HANDLE (_pyMesh ,_pyObject); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pySubMesh ,_pyObject);
IMPLEMENT_STANDARD_HANDLE (_pySubMesh ,_pyObject); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyMeshEditor ,_pyObject);
IMPLEMENT_STANDARD_HANDLE (_pyMeshEditor ,_pyObject); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyHypothesis ,_pyObject);
IMPLEMENT_STANDARD_HANDLE (_pyHypothesis ,_pyObject); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pySelfEraser ,_pyObject);
IMPLEMENT_STANDARD_HANDLE (_pySelfEraser ,_pyObject); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyGroup ,_pyObject);
IMPLEMENT_STANDARD_HANDLE (_pyGroup ,_pyObject); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyFilter ,_pyObject);
IMPLEMENT_STANDARD_HANDLE (_pyFilter ,_pyObject); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyAlgorithm ,_pyHypothesis);
IMPLEMENT_STANDARD_HANDLE (_pyAlgorithm ,_pyHypothesis); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyComplexParamHypo,_pyHypothesis);
IMPLEMENT_STANDARD_HANDLE (_pyComplexParamHypo,_pyHypothesis); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyNumberOfSegmentsHyp,_pyHypothesis);
IMPLEMENT_STANDARD_HANDLE (_pyNumberOfSegmentsHyp,_pyHypothesis); OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pyLayerDistributionHypo,_pyHypothesis);
OCCT_IMPLEMENT_STANDARD_RTTIEXT(_pySegmentLengthAroundVertexHyp,_pyHypothesis);
IMPLEMENT_STANDARD_RTTIEXT(_pyObject ,Standard_Transient);
IMPLEMENT_STANDARD_RTTIEXT(_pyCommand ,Standard_Transient);
IMPLEMENT_STANDARD_RTTIEXT(_pyHypothesisReader,Standard_Transient);
IMPLEMENT_STANDARD_RTTIEXT(_pyGen ,_pyObject);
IMPLEMENT_STANDARD_RTTIEXT(_pyMesh ,_pyObject);
IMPLEMENT_STANDARD_RTTIEXT(_pySubMesh ,_pyObject);
IMPLEMENT_STANDARD_RTTIEXT(_pyMeshEditor ,_pyObject);
IMPLEMENT_STANDARD_RTTIEXT(_pyHypothesis ,_pyObject);
IMPLEMENT_STANDARD_RTTIEXT(_pySelfEraser ,_pyObject);
IMPLEMENT_STANDARD_RTTIEXT(_pyGroup ,_pyObject);
IMPLEMENT_STANDARD_RTTIEXT(_pyFilter ,_pyObject);
IMPLEMENT_STANDARD_RTTIEXT(_pyAlgorithm ,_pyHypothesis);
IMPLEMENT_STANDARD_RTTIEXT(_pyComplexParamHypo,_pyHypothesis);
IMPLEMENT_STANDARD_RTTIEXT(_pyNumberOfSegmentsHyp,_pyHypothesis);
IMPLEMENT_STANDARD_RTTIEXT(_pyLayerDistributionHypo,_pyHypothesis);
IMPLEMENT_STANDARD_RTTIEXT(_pySegmentLengthAroundVertexHyp,_pyHypothesis);
using namespace std; using namespace std;
using SMESH::TPythonDump; using SMESH::TPythonDump;
@ -1529,9 +1513,10 @@ _pyID _pyGen::GenerateNewID( const _pyID& theID )
} }
while ( myObjectNames.IsBound( aNewID ) ); while ( myObjectNames.IsBound( aNewID ) );
myObjectNames.Bind( aNewID, myObjectNames.IsBound( theID ) if ( myObjectNames.IsBound( theID ) )
? (myObjectNames.Find( theID ) + _pyID( "_" ) + _pyID( index-1 )) myObjectNames.Bind( aNewID, ( myObjectNames.Find( theID ) + _pyID( "_" ) + _pyID( index-1 ) ) );
: _pyID( "A" ) + aNewID ); else
myObjectNames.Bind( aNewID, ( _pyID( "A" ) + aNewID ) );
return aNewID; return aNewID;
} }
@ -1577,8 +1562,11 @@ void _pyGen::CheckObjectIsReCreated( Handle(_pyObject)& theObj )
return; return;
const bool isHyp = theObj->IsKind( STANDARD_TYPE( _pyHypothesis )); const bool isHyp = theObj->IsKind( STANDARD_TYPE( _pyHypothesis ));
Handle(_pyObject) existing = Handle(_pyObject) existing;
isHyp ? FindHyp( theObj->GetID() ) : FindObject( theObj->GetID() ); if( isHyp )
existing = Handle(_pyObject)::DownCast( FindHyp( theObj->GetID() ) );
else
existing = FindObject( theObj->GetID() );
if ( !existing.IsNull() && existing != theObj ) if ( !existing.IsNull() && existing != theObj )
{ {
existing->SetRemovedFromStudy( true ); existing->SetRemovedFromStudy( true );
@ -1636,7 +1624,7 @@ Handle(_pyObject) _pyGen::FindObject( const _pyID& theObjID ) const
{ {
map< _pyID, Handle(_pyMesh) >::const_iterator id_obj = myMeshes.find( theObjID ); map< _pyID, Handle(_pyMesh) >::const_iterator id_obj = myMeshes.find( theObjID );
if ( id_obj != myMeshes.end() ) if ( id_obj != myMeshes.end() )
return id_obj->second; return Handle(_pyObject)::DownCast( id_obj->second );
} }
// { // {
// map< _pyID, Handle(_pyMeshEditor) >::const_iterator id_obj = myMeshEditors.find( theObjID ); // map< _pyID, Handle(_pyMeshEditor) >::const_iterator id_obj = myMeshEditors.find( theObjID );

View File

@ -33,12 +33,15 @@
#include <TCollection_AsciiString.hxx> #include <TCollection_AsciiString.hxx>
#include <TColStd_SequenceOfAsciiString.hxx> #include <TColStd_SequenceOfAsciiString.hxx>
#include <TColStd_SequenceOfInteger.hxx> #include <TColStd_SequenceOfInteger.hxx>
#include <Resource_DataMapOfAsciiStringAsciiString.hxx>
#include <list> #include <list>
#include <map> #include <map>
#include <vector> #include <vector>
#include <set> #include <set>
#include <Basics_OCCTVersion.hxx>
#include <SALOMEconfig.h> #include <SALOMEconfig.h>
#include CORBA_CLIENT_HEADER(SALOMEDS) #include CORBA_CLIENT_HEADER(SALOMEDS)
@ -58,8 +61,6 @@
*/ */
// =========================================================================================== // ===========================================================================================
class Resource_DataMapOfAsciiStringAsciiString;
// =========================================================================================== // ===========================================================================================
// ===================== // =====================
// INTERNAL STUFF // INTERNAL STUFF
@ -159,7 +160,7 @@ public:
bool AddAccessorMethod( _pyID theObjectID, const char* theAcsMethod ); bool AddAccessorMethod( _pyID theObjectID, const char* theAcsMethod );
DEFINE_STANDARD_RTTI (_pyCommand) OCCT_DEFINE_STANDARD_RTTIEXT(_pyCommand,Standard_Transient)
}; };
// ------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------
@ -199,7 +200,7 @@ public:
virtual void ClearCommands(); virtual void ClearCommands();
virtual void Free() {} virtual void Free() {}
DEFINE_STANDARD_RTTI (_pyObject) OCCT_DEFINE_STANDARD_RTTIEXT(_pyObject,Standard_Transient)
}; };
// ------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------
@ -330,7 +331,7 @@ private:
std::map< _AString, ExportedMeshData > myFile2ExportedMesh; std::map< _AString, ExportedMeshData > myFile2ExportedMesh;
Handle( _pyHypothesisReader ) myHypReader; Handle( _pyHypothesisReader ) myHypReader;
DEFINE_STANDARD_RTTI (_pyGen) OCCT_DEFINE_STANDARD_RTTIEXT(_pyGen,_pyObject)
}; };
// ------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------
@ -371,7 +372,7 @@ private:
static void AddMeshAccess( const Handle(_pyCommand)& theCommand ) static void AddMeshAccess( const Handle(_pyCommand)& theCommand )
{ theCommand->SetObject( theCommand->GetObject() + "." _pyMesh_ACCESS_METHOD ); } { theCommand->SetObject( theCommand->GetObject() + "." _pyMesh_ACCESS_METHOD ); }
DEFINE_STANDARD_RTTI (_pyMesh) OCCT_DEFINE_STANDARD_RTTIEXT(_pyMesh,_pyObject)
}; };
#undef _pyMesh_ACCESS_METHOD #undef _pyMesh_ACCESS_METHOD
@ -391,7 +392,7 @@ public:
virtual void Flush() {} virtual void Flush() {}
virtual bool CanClear(); virtual bool CanClear();
DEFINE_STANDARD_RTTI (_pyMesh) OCCT_DEFINE_STANDARD_RTTIEXT(_pyMesh,_pyObject)
}; };
// ------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------
@ -475,7 +476,7 @@ public:
//void ComputeSaved ( const Handle(_pyCommand)& theComputeCommand ); //void ComputeSaved ( const Handle(_pyCommand)& theComputeCommand );
DEFINE_STANDARD_RTTI (_pyHypothesis) OCCT_DEFINE_STANDARD_RTTIEXT(_pyHypothesis,_pyObject)
}; };
// ------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------
@ -492,7 +493,7 @@ public:
virtual const char* AccessorMethod() const { return "GetAlgorithm()"; } virtual const char* AccessorMethod() const { return "GetAlgorithm()"; }
virtual bool IsWrappable(const _pyID& theMesh) { return !myIsWrapped; } virtual bool IsWrappable(const _pyID& theMesh) { return !myIsWrapped; }
DEFINE_STANDARD_RTTI (_pyAlgorithm) OCCT_DEFINE_STANDARD_RTTIEXT(_pyAlgorithm,_pyHypothesis)
}; };
// ------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------
@ -507,7 +508,7 @@ public:
virtual void Process( const Handle(_pyCommand)& theCommand); virtual void Process( const Handle(_pyCommand)& theCommand);
virtual void Flush(); virtual void Flush();
DEFINE_STANDARD_RTTI (_pyComplexParamHypo) OCCT_DEFINE_STANDARD_RTTIEXT(_pyComplexParamHypo,_pyHypothesis)
}; };
DEFINE_STANDARD_HANDLE (_pyComplexParamHypo, _pyHypothesis); DEFINE_STANDARD_HANDLE (_pyComplexParamHypo, _pyHypothesis);
@ -529,7 +530,7 @@ public:
const _pyID& theMesh); const _pyID& theMesh);
virtual void Free() { my1dHyp.Nullify(); } virtual void Free() { my1dHyp.Nullify(); }
DEFINE_STANDARD_RTTI (_pyLayerDistributionHypo) OCCT_DEFINE_STANDARD_RTTIEXT(_pyLayerDistributionHypo,_pyHypothesis)
}; };
DEFINE_STANDARD_HANDLE (_pyLayerDistributionHypo, _pyHypothesis); DEFINE_STANDARD_HANDLE (_pyLayerDistributionHypo, _pyHypothesis);
@ -546,7 +547,7 @@ public:
const _pyID& theMesh); const _pyID& theMesh);
void Flush(); void Flush();
DEFINE_STANDARD_RTTI (_pyNumberOfSegmentsHyp) OCCT_DEFINE_STANDARD_RTTIEXT(_pyNumberOfSegmentsHyp,_pyHypothesis)
}; };
DEFINE_STANDARD_HANDLE (_pyNumberOfSegmentsHyp, _pyHypothesis); DEFINE_STANDARD_HANDLE (_pyNumberOfSegmentsHyp, _pyHypothesis);
@ -561,7 +562,7 @@ public:
_pySegmentLengthAroundVertexHyp(const Handle(_pyCommand)& theCrCmd): _pyHypothesis(theCrCmd) {} _pySegmentLengthAroundVertexHyp(const Handle(_pyCommand)& theCrCmd): _pyHypothesis(theCrCmd) {}
virtual bool Addition2Creation( const Handle(_pyCommand)& theAdditionCmd, virtual bool Addition2Creation( const Handle(_pyCommand)& theAdditionCmd,
const _pyID& theMesh); const _pyID& theMesh);
DEFINE_STANDARD_RTTI (_pySegmentLengthAroundVertexHyp) OCCT_DEFINE_STANDARD_RTTIEXT(_pySegmentLengthAroundVertexHyp,_pyHypothesis)
}; };
DEFINE_STANDARD_HANDLE (_pySegmentLengthAroundVertexHyp, _pyHypothesis); DEFINE_STANDARD_HANDLE (_pySegmentLengthAroundVertexHyp, _pyHypothesis);
@ -580,7 +581,7 @@ public:
virtual bool CanClear(); virtual bool CanClear();
static bool IsAliveCmd( const Handle(_pyCommand)& theCmd ); static bool IsAliveCmd( const Handle(_pyCommand)& theCmd );
DEFINE_STANDARD_RTTI (_pySelfEraser) OCCT_DEFINE_STANDARD_RTTIEXT(_pySelfEraser,_pyObject)
}; };
DEFINE_STANDARD_HANDLE (_pySelfEraser, _pyObject); DEFINE_STANDARD_HANDLE (_pySelfEraser, _pyObject);
@ -602,7 +603,7 @@ public:
void SetCreator( const Handle(_pyObject)& theCreator ) { myCreator = theCreator; } void SetCreator( const Handle(_pyObject)& theCreator ) { myCreator = theCreator; }
static bool CanBeArgOfMethod(const _AString& theMethodName); static bool CanBeArgOfMethod(const _AString& theMethodName);
DEFINE_STANDARD_RTTI (_pySubMesh) OCCT_DEFINE_STANDARD_RTTIEXT(_pySubMesh,_pyObject)
}; };
// ------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------
/*! /*!
@ -622,7 +623,7 @@ public:
//virtual void Free() { myUsers.clear(); } //virtual void Free() { myUsers.clear(); }
const _pyID& GetNewID() const { return myNewID; } const _pyID& GetNewID() const { return myNewID; }
DEFINE_STANDARD_RTTI (_pyFilter) OCCT_DEFINE_STANDARD_RTTIEXT(_pyFilter,_pyObject)
}; };
DEFINE_STANDARD_HANDLE (_pyFilter, _pyObject); DEFINE_STANDARD_HANDLE (_pyFilter, _pyObject);
@ -643,7 +644,7 @@ public:
virtual bool CanClear(); virtual bool CanClear();
void RemovedWithContents(); void RemovedWithContents();
DEFINE_STANDARD_RTTI (_pyGroup) OCCT_DEFINE_STANDARD_RTTIEXT(_pyGroup,_pySubMesh)
}; };
// ------------------------------------------------------------------------------------- // -------------------------------------------------------------------------------------
@ -658,7 +659,7 @@ public:
_pyHypothesisReader(); _pyHypothesisReader();
Handle(_pyHypothesis) GetHypothesis(const _AString& hypType, Handle(_pyHypothesis) GetHypothesis(const _AString& hypType,
const Handle(_pyCommand)& creationCmd) const; const Handle(_pyCommand)& creationCmd) const;
DEFINE_STANDARD_RTTI (_pyHypothesisReader) OCCT_DEFINE_STANDARD_RTTIEXT(_pyHypothesisReader,Standard_Transient)
}; };
#endif #endif

View File

@ -40,6 +40,8 @@
#include <SALOMEDS_wrap.hxx> #include <SALOMEDS_wrap.hxx>
#include <GEOM_wrap.hxx> #include <GEOM_wrap.hxx>
#include <Basics_OCCTVersion.hxx>
#include <BRep_Tool.hxx> #include <BRep_Tool.hxx>
#include <Geom_CylindricalSurface.hxx> #include <Geom_CylindricalSurface.hxx>
#include <Geom_Plane.hxx> #include <Geom_Plane.hxx>
@ -3913,6 +3915,7 @@ CORBA::Boolean FilterLibrary_i::Save()
if ( myFileName == 0 || strlen( myFileName ) == 0 ) if ( myFileName == 0 || strlen( myFileName ) == 0 )
return false; return false;
#if OCC_VERSION_MAJOR < 7
FILE* aOutFile = fopen( myFileName, "wt" ); FILE* aOutFile = fopen( myFileName, "wt" );
if ( !aOutFile ) if ( !aOutFile )
return false; return false;
@ -3921,6 +3924,17 @@ CORBA::Boolean FilterLibrary_i::Save()
aWriter.SetIndentation( 2 ); aWriter.SetIndentation( 2 );
aWriter << myDoc; aWriter << myDoc;
fclose( aOutFile ); fclose( aOutFile );
#else
std::filebuf fb;
fb.open( myFileName, std::ios::out );
Standard_OStream os( &fb );
LDOM_XmlWriter aWriter;
aWriter.SetIndentation( 2 );
aWriter.Write( os, myDoc );
fb.close();
#endif
TPythonDump()<<this<<".Save()"; TPythonDump()<<this<<".Save()";
return true; return true;

View File

@ -32,6 +32,7 @@
#include CORBA_SERVER_HEADER(SALOMEDS) #include CORBA_SERVER_HEADER(SALOMEDS)
#include <TCollection_AsciiString.hxx> #include <TCollection_AsciiString.hxx>
#include <Resource_DataMapOfAsciiStringAsciiString.hxx>
#include <sstream> #include <sstream>
#include <vector> #include <vector>
@ -40,7 +41,6 @@
class SMESH_Gen_i; class SMESH_Gen_i;
class SMESH_MeshEditor_i; class SMESH_MeshEditor_i;
class Resource_DataMapOfAsciiStringAsciiString;
// =========================================================================================== // ===========================================================================================
/*! /*!

View File

@ -1369,7 +1369,11 @@ namespace
} }
if ( surf->IsKind( STANDARD_TYPE(Geom_BSplineSurface )) || if ( surf->IsKind( STANDARD_TYPE(Geom_BSplineSurface )) ||
surf->IsKind( STANDARD_TYPE(Geom_BezierSurface ))) surf->IsKind( STANDARD_TYPE(Geom_BezierSurface )))
#if OCC_VERSION_MAJOR < 7
if ( !noSafeTShapes.insert((const Standard_Transient*) _face.TShape() ).second ) if ( !noSafeTShapes.insert((const Standard_Transient*) _face.TShape() ).second )
#else
if ( !noSafeTShapes.insert( _face.TShape().get() ).second )
#endif
isSafe = false; isSafe = false;
double f, l; double f, l;
@ -1409,7 +1413,11 @@ namespace
edgeIsSafe = false; edgeIsSafe = false;
} }
} }
#if OCC_VERSION_MAJOR < 7
if ( !edgeIsSafe && !noSafeTShapes.insert((const Standard_Transient*) e.TShape() ).second ) if ( !edgeIsSafe && !noSafeTShapes.insert((const Standard_Transient*) e.TShape() ).second )
#else
if ( !edgeIsSafe && !noSafeTShapes.insert( _face.TShape().get() ).second )
#endif
isSafe = false; isSafe = false;
} }
return isSafe; return isSafe;

View File

@ -36,6 +36,7 @@
#endif #endif
#include <Standard_Failure.hxx> #include <Standard_Failure.hxx>
#include <Expr_NamedUnknown.hxx>
#ifdef NO_CAS_CATCH #ifdef NO_CAS_CATCH
#include <Standard_ErrorHandler.hxx> #include <Standard_ErrorHandler.hxx>

View File

@ -33,6 +33,8 @@
#include "SMDS_MeshElement.hxx" #include "SMDS_MeshElement.hxx"
#include <TopTools_DataMapOfShapeShape.hxx> #include <TopTools_DataMapOfShapeShape.hxx>
#include <TopTools_IndexedMapOfShape.hxx>
#include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
#include <TopoDS_Edge.hxx> #include <TopoDS_Edge.hxx>
#include <TopoDS_Face.hxx> #include <TopoDS_Face.hxx>
#include <TopoDS_Vertex.hxx> #include <TopoDS_Vertex.hxx>
@ -47,8 +49,6 @@ class SMESH_Algo;
class SMESH_Hypothesis; class SMESH_Hypothesis;
class SMESH_Mesh; class SMESH_Mesh;
class SMESH_subMesh; class SMESH_subMesh;
class TopTools_IndexedDataMapOfShapeListOfShape;
class TopTools_IndexedMapOfShape;
class TopoDS_Shape; class TopoDS_Shape;
/*! /*!

View File

@ -27,13 +27,14 @@
#include "SMESH_ProxyMesh.hxx" #include "SMESH_ProxyMesh.hxx"
#include <TColgp_Array1OfPnt.hxx>
#include <TColgp_Array1OfVec.hxx>
class SMESH_Mesh; class SMESH_Mesh;
class SMESH_ElementSearcher; class SMESH_ElementSearcher;
class SMDS_MeshElement; class SMDS_MeshElement;
class SMDS_MeshNode; class SMDS_MeshNode;
class SMDS_MeshFace; class SMDS_MeshFace;
class TColgp_Array1OfPnt;
class TColgp_Array1OfVec;
class gp_Pnt; class gp_Pnt;
class gp_Vec; class gp_Vec;