X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FStdMeshers_I%2FStdMeshers_CartesianParameters3D_i.hxx;h=74cae16bc9db5301539bc0f022aeb1dff6d6d8e7;hb=9493563cbc59acba2b9b036bb22fb184f5be946d;hp=abdda05f4f7f4aac8fd022aa9e54bda415d19ad5;hpb=f7aba4830d53719b963fdb7fccc98b760fdef2d1;p=modules%2Fsmesh.git diff --git a/src/StdMeshers_I/StdMeshers_CartesianParameters3D_i.hxx b/src/StdMeshers_I/StdMeshers_CartesianParameters3D_i.hxx index abdda05f4..74cae16bc 100644 --- a/src/StdMeshers_I/StdMeshers_CartesianParameters3D_i.hxx +++ b/src/StdMeshers_I/StdMeshers_CartesianParameters3D_i.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // 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, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -83,6 +83,22 @@ class STDMESHERS_I_EXPORT StdMeshers_CartesianParameters3D_i: void GetGridSpacing(SMESH::string_array_out xSpaceFunctions, SMESH::double_array_out xInternalPoints, CORBA::Short axis) throw (SALOME::SALOME_Exception); + /*! + * Set custom direction of axes + */ + void SetAxesDirs(const SMESH::DirStruct& x, + const SMESH::DirStruct& y, + const SMESH::DirStruct& z) throw (SALOME::SALOME_Exception); + void GetAxesDirs(SMESH::DirStruct& x, + SMESH::DirStruct& y, + SMESH::DirStruct& z); + /*! + * Set/unset a fixed point, at which a node will be created provided that grid + * is defined by spacing in all directions + */ + void SetFixedPoint(const ::SMESH::PointStruct& p, CORBA::Boolean toUnset); + CORBA::Boolean GetFixedPoint(::SMESH::PointStruct& p); + /*! * \brief Enables implementation of geometrical edges into the mesh. If this feature @@ -98,6 +114,14 @@ class STDMESHERS_I_EXPORT StdMeshers_CartesianParameters3D_i: */ CORBA::Boolean IsGridBySpacing(CORBA::Short axis); + /*! + * Returns axes at which number of hexahedra is maximal + */ + void ComputeOptimalAxesDirs(GEOM::GEOM_Object_ptr shape, + CORBA::Boolean isOrthogonal, + SMESH::DirStruct& x, + SMESH::DirStruct& y, + SMESH::DirStruct& z) throw (SALOME::SALOME_Exception); /*! * \brief Computes node coordinates by spacing functions * \param x0 - lower coordinate