27 #ifndef _SMESH_CartesianParameters3D_HXX_
28 #define _SMESH_CartesianParameters3D_HXX_
33 #include "Utils_SALOME_Exception.hxx"
57 void SetGrid(std::vector<double>& xNodes,
int axis)
throw ( SALOME_Exception );
61 void GetGrid(std::vector<double>& xNodes,
int axis)
const throw ( SALOME_Exception );
71 void SetGridSpacing(std::vector<std::string>& spaceFunctions,
72 std::vector<double>& internalPoints,
73 const int axis)
throw ( SALOME_Exception );
75 void GetGridSpacing(std::vector<std::string>& spaceFunctions,
76 std::vector<double>& internalPoints,
77 const int axis)
const throw ( SALOME_Exception );
79 bool IsGridBySpacing(
const int axis)
const throw ( SALOME_Exception );
85 void SetFixedPoint(
const double p[3],
bool toUnset);
86 bool GetFixedPoint(
double p[3])
const;
96 static void ComputeCoordinates(
const double x0,
98 std::vector<std::string>& spaceFuns,
99 std::vector<double>& points,
100 std::vector<double>& coords,
101 const std::string& axis,
102 const double* xForced=0)
throw (SALOME_Exception);
107 void GetCoordinates(std::vector<double>& xNodes,
108 std::vector<double>& yNodes,
109 std::vector<double>& zNodes,
110 const Bnd_Box& bndBox)
const throw ( SALOME_Exception );
115 void SetAxisDirs(
const double* the9DirComps)
throw ( SALOME_Exception );
120 static void ComputeOptimalAxesDirs(
const TopoDS_Shape& shape,
121 const bool isOrthogonal,
122 double dirCoords[9]);
128 void SetSizeThreshold(
const double threshold)
throw ( SALOME_Exception );
132 double GetSizeThreshold()
const;
139 void SetToAddEdges(
bool toAdd);
140 bool GetToAddEdges()
const;
145 bool IsDefined()
const;
150 virtual std::ostream &
SaveTo(std::ostream & save);
151 virtual std::istream &
LoadFrom(std::istream & load);
165 std::vector<double> _coords[3];
166 std::vector<std::string> _spaceFunctions[3];
167 std::vector<double> _internalPoints[3];
169 double _axisDirs [9];
170 double _fixedPoint[3];