X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FNETGENPlugin%2FNETGENPlugin_NETGEN_2D_ONLY.hxx;h=3ab8c92373415e0367a14bf208bd938afb7a7d14;hb=9cc5a6ab79532546b070d302f297237914b923fc;hp=f77a3d988efcd7c57b40c24de52d9ffd0dc91e44;hpb=40bc6ed7626de9ad8b941dc0b844ef9829c81842;p=plugins%2Fnetgenplugin.git diff --git a/src/NETGENPlugin/NETGENPlugin_NETGEN_2D_ONLY.hxx b/src/NETGENPlugin/NETGENPlugin_NETGEN_2D_ONLY.hxx index f77a3d9..3ab8c92 100644 --- a/src/NETGENPlugin/NETGENPlugin_NETGEN_2D_ONLY.hxx +++ b/src/NETGENPlugin/NETGENPlugin_NETGEN_2D_ONLY.hxx @@ -1,12 +1,11 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS, L3S, LJLL, MENSI +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either -// version 2.1 of the License. +// version 2.1 of the License, or (at your option) any later version. // -// This library is distributed in the hope that it will be useful +// This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. @@ -17,35 +16,20 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // + // File : NETGENPlugin_NETGEN_2D_ONLY.hxx // Project : SALOME // Author : Edward AGAPOV (OCC) - +// #ifndef _NETGENPlugin_NETGEN_2D_ONLY_HXX_ #define _NETGENPlugin_NETGEN_2D_ONLY_HXX_ -#include "SMESH_2D_Algo.hxx" -#include "SMESH_Mesh.hxx" - -/*#define OCCGEOMETRY -#include -#include //amv*/ +#include +#include class StdMeshers_MaxElementArea; class StdMeshers_LengthFromEdges; -class StdMeshers_QuadranglePreference; -//class NETGENPlugin_Hypothesis; - -/*namespace netgen { - class OCCGeometry; -}*/ -/*namespace netgen { - class OCCGeometry; - extern int OCCGenerateMesh (OCCGeometry&, Mesh*&, int, int, char*); - extern MeshingParameters mparam; -}*/ - -//using namespace netgen; +class NETGENPlugin_Hypothesis_2D; /*! * \brief Mesher generating 2D elements on a geometrical face taking @@ -58,7 +42,7 @@ class StdMeshers_QuadranglePreference; class NETGENPlugin_NETGEN_2D_ONLY: public SMESH_2D_Algo { public: - NETGENPlugin_NETGEN_2D_ONLY(int hypId, int studyId, SMESH_Gen* gen); + NETGENPlugin_NETGEN_2D_ONLY(int hypId, SMESH_Gen* gen); virtual ~NETGENPlugin_NETGEN_2D_ONLY(); virtual bool CheckHypothesis(SMESH_Mesh& aMesh, @@ -68,17 +52,20 @@ public: virtual bool Compute(SMESH_Mesh& aMesh, const TopoDS_Shape& aShape); - /*static TError AddSegmentsToMesh(netgen::Mesh& ngMesh, - OCCGeometry& geom, - const TSideVector& wires, - SMESH_MesherHelper& helper, - vector< const SMDS_MeshNode* > & nodeVec); //amv*/ + virtual void CancelCompute(); + + virtual double GetProgress() const; + + virtual bool Evaluate(SMESH_Mesh& aMesh, const TopoDS_Shape& aShape, + MapShapeNbElems& aResMap); protected: const StdMeshers_MaxElementArea* _hypMaxElementArea; const StdMeshers_LengthFromEdges* _hypLengthFromEdges; - const StdMeshers_QuadranglePreference* _hypQuadranglePreference; - // const NETGENPlugin_Hypothesis* _hypothesis; + const SMESHDS_Hypothesis* _hypQuadranglePreference; + const NETGENPlugin_Hypothesis_2D* _hypParameters; + + double _progressByTic; }; #endif