Version: 8.3.0
Main Page
Related Pages
Packages
Data Structures
Files
File List
Globals
StdMeshers_AutomaticLength.hxx
Go to the documentation of this file.
1
// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
2
//
3
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5
//
6
// This library is free software; you can redistribute it and/or
7
// modify it under the terms of the GNU Lesser General Public
8
// License as published by the Free Software Foundation; either
9
// version 2.1 of the License, or (at your option) any later version.
10
//
11
// This library is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
// Lesser General Public License for more details.
15
//
16
// You should have received a copy of the GNU Lesser General Public
17
// License along with this library; if not, write to the Free Software
18
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
//
20
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21
//
22
23
// SMESH SMESH : implementaion of SMESH idl descriptions
24
// File : StdMeshers_AutomaticLength.hxx
25
// Author : Edward AGAPOV, OCC
26
// Module : SMESH
27
//
28
#ifndef _SMESH_AutomaticLength_HXX_
29
#define _SMESH_AutomaticLength_HXX_
30
31
#include "
SMESH_StdMeshers.hxx
"
32
33
#include "
SMESH_Hypothesis.hxx
"
34
#include "Utils_SALOME_Exception.hxx"
35
36
#include <map>
37
38
class
SMESH_Mesh
;
39
class
TopoDS_Shape;
40
class
TopoDS_TShape;
41
49
class
STDMESHERS_EXPORT
StdMeshers_AutomaticLength
:
public
SMESH_Hypothesis
50
{
51
public
:
52
StdMeshers_AutomaticLength
(
int
hypId,
int
studyId,
SMESH_Gen
* gen);
53
virtual
~
StdMeshers_AutomaticLength
();
54
58
double
GetLength(
const
SMESH_Mesh
* aMesh,
const
TopoDS_Shape& anEdge)
59
throw
(SALOME_Exception);
60
64
double
GetLength(
const
SMESH_Mesh
* aMesh,
const
double
edgeLength)
65
throw
(SALOME_Exception);
66
77
void
SetFineness(
double
theFineness)
78
throw
(SALOME_Exception);
79
84
double
GetFineness
()
const
{
return
_fineness; }
85
86
virtual
std::ostream &
SaveTo
(std::ostream & save);
87
virtual
std::istream &
LoadFrom
(std::istream & load);
88
friend
std::ostream &
operator <<
(std::ostream & save,
StdMeshers_AutomaticLength
& hyp);
89
friend
std::istream &
operator >>
(std::istream & load,
StdMeshers_AutomaticLength
& hyp);
90
97
virtual
bool
SetParametersByMesh
(
const
SMESH_Mesh
* theMesh,
const
TopoDS_Shape& theShape);
98
103
virtual
bool
SetParametersByDefaults
(
const
TDefaults& dflts,
const
SMESH_Mesh
* theMesh=0);
104
105
protected
:
106
std::map<const TopoDS_TShape*, double>
_TShapeToLength
;
107
const
SMESH_Mesh
*
_mesh
;
108
double
_fineness,
_S0
, _minLen;
109
};
110
111
#endif
src
StdMeshers
StdMeshers_AutomaticLength.hxx
Copyright © 2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS