-// Copyright (C) 2007-2016 CEA/DEN, EDF R&D
+// Copyright (C) 2007-2022 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
class HEXOTICPLUGIN_EXPORT HexoticPlugin_Hexotic: public SMESH_3D_Algo
{
public:
- HexoticPlugin_Hexotic(int hypId, int studyId, SMESH_Gen* gen);
+ HexoticPlugin_Hexotic(int hypId, SMESH_Gen* gen);
virtual ~HexoticPlugin_Hexotic();
#ifdef WITH_BLSURFPLUGIN
std::vector<std::string> writeSizeMapFile(MG_Hexotic_API* mgOutput,
std::string fileName);
- // Functions to get sample point from shapes
- void createControlPoints( const TopoDS_Shape& theShape,
- const double& theSize,
- std::vector< Control_Pnt >& thePoints );
- void createPointsSampleFromEdge( const TopoDS_Shape& aShape,
- const double& theSize,
- std::vector<Control_Pnt>& thePoints );
- void createPointsSampleFromFace( const TopoDS_Shape& aShape,
- const double& theSize,
- std::vector<Control_Pnt>& thePoints );
- void createPointsSampleFromSolid( const TopoDS_Shape& aShape,
- const double& theSize,
- std::vector<Control_Pnt>& thePoints );
-
- // Some functions for surface sampling
- void subdivideTriangle( const gp_Pnt& p1,
- const gp_Pnt& p2,
- const gp_Pnt& p3,
- const double& theSize,
- std::vector<Control_Pnt>& thePoints );
-
- std::vector<gp_Pnt> computePointsForSplitting( const gp_Pnt& p1,
- const gp_Pnt& p2,
- const gp_Pnt& p3 );
- gp_Pnt tangencyPoint(const gp_Pnt& p1,
- const gp_Pnt& p2,
- const gp_Pnt& Center);
-
-
- int _iShape;
- int _nbShape;
- int _hexesMinLevel;
- int _hexesMaxLevel;
- double _hexesMinSize;
- double _hexesMaxSize;
- bool _hexoticIgnoreRidges;
- bool _hexoticInvalidElements;
- bool _hexoticFilesKept;
- int _hexoticSharpAngleThreshold;
- int _hexoticNbProc;
- std::string _hexoticWorkingDirectory;
- int _hexoticVerbosity;
- int _hexoticMaxMemory;
- int _hexoticSdMode;
- std::string _textOptions;
+ int _iShape;
+ int _nbShape;
+ int _hexesMinLevel;
+ int _hexesMaxLevel;
+ double _hexesMinSize;
+ double _hexesMaxSize;
+ double _approxAngle;
+ bool _hexoticIgnoreRidges;
+ bool _hexoticInvalidElements;
+ bool _hexoticFilesKept;
+ int _hexoticSharpAngleThreshold;
+ int _hexoticNbProc;
+ std::string _hexoticWorkingDirectory;
+ int _hexoticVerbosity;
+ int _hexoticMaxMemory;
+ int _hexoticSdMode;
+ std::string _textOptions;
HexoticPlugin_Hypothesis::THexoticSizeMaps _sizeMaps;
- int _nbLayers;
- double _firstLayerSize;
- bool _direction;
- double _growth;
+ int _nbLayers;
+ double _firstLayerSize;
+ bool _direction;
+ double _growth;
std::vector<int> _facesWithLayers;
std::vector<int> _imprintedFaces;
- SMDS_MeshNode** _tabNode;
+ SMDS_MeshNode** _tabNode;
+ bool _keepFiles;
+ bool _removeLogOnSuccess;
+ bool _logInStandardOutput;
#ifdef WITH_BLSURFPLUGIN
const BLSURFPlugin_Hypothesis* _blsurfHypo;
#endif
-
- SALOMEDS::Study_var myStudy;
- SMESH_Gen_i* smeshGen_i;
-
};
#endif