Version: 9.16.0
SMESH_Pattern_i.hxx
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, 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_I : idl implementation based on 'SMESH' unit's classes
24// File : SMESH_Pattern_i.hxx
25// Created : Fri Aug 20 16:03:15 2004
26// Author : Edward AGAPOV (eap)
27// $Header:
28//
29#ifndef SMESH_Pattern_I_HeaderFile
30#define SMESH_Pattern_I_HeaderFile
31
32#include "SMESH.hxx"
33
34#include "SALOMEconfig.h"
35#include CORBA_SERVER_HEADER(SMESH_Pattern)
36#include CORBA_SERVER_HEADER(SMESH_Mesh)
37#include CORBA_CLIENT_HEADER(GEOM_Gen)
38
39#include <TopoDS_Shape.hxx>
40#include "SMESH_Pattern.hxx"
41
42class SMESH_Gen_i;
43class SMESH_Mesh;
44
46 public virtual POA_SMESH::SMESH_Pattern
47{
48 public:
49
50 SMESH_Pattern_i (SMESH_Gen_i* theGen_i);
51
52 CORBA::Boolean LoadFromFile(const char* theFileContents);
53
54 CORBA::Boolean LoadFromFace(SMESH::SMESH_Mesh_ptr theMesh,
55 GEOM::GEOM_Object_ptr theFace,
56 CORBA::Boolean theProject);
57
58 CORBA::Boolean LoadFrom3DBlock(SMESH::SMESH_Mesh_ptr theMesh,
59 GEOM::GEOM_Object_ptr theBlock);
60
61 SMESH::point_array* ApplyToFace(GEOM::GEOM_Object_ptr theFace,
62 GEOM::GEOM_Object_ptr theVertexOnKeyPoint1,
63 CORBA::Boolean theReverse);
64
65 SMESH::point_array* ApplyTo3DBlock(GEOM::GEOM_Object_ptr theBlock,
66 GEOM::GEOM_Object_ptr theVertex000,
67 GEOM::GEOM_Object_ptr theVertex001);
68
69 SMESH::point_array* ApplyToMeshFaces(SMESH::SMESH_Mesh_ptr theMesh,
70 const SMESH::smIdType_array& theFacesIDs,
71 CORBA::Short theNodeIndexOnKeyPoint1,
72 CORBA::Boolean theReverse);
73
74 SMESH::point_array* ApplyToHexahedrons(SMESH::SMESH_Mesh_ptr theMesh,
75 const SMESH::smIdType_array& theVolumesIDs,
76 CORBA::Short theNode000Index,
77 CORBA::Short theNode001Index);
78
79 //for omniORB conflict compilation
80 /*CORBA::Boolean MakeMesh (SMESH::SMESH_Mesh_ptr theMesh,
81 const CORBA::Boolean CreatePolygons,
82 const CORBA::Boolean CreatePolyedrs);*/
83
84 CORBA::Boolean MakeMesh (SMESH::SMESH_Mesh_ptr theMesh,
85 CORBA::Boolean CreatePolygons,
86 CORBA::Boolean CreatePolyedrs);
87
89
90 char* GetString();
91
92 CORBA::Boolean Is2D();
93
94 SMESH::point_array* GetPoints();
95
96 SMESH::long_array* GetKeyPoints();
97
98 SMESH::array_of_long_array* GetElementPoints(CORBA::Boolean applied);
99
100
101 private:
102
103 ::SMESH_Mesh* getMesh( SMESH::SMESH_Mesh_ptr & theMesh );
104
106
108};
109#endif
#define SMESH_I_EXPORT
Definition: SMESH.hxx:39
static SMESHDS_Mesh * getMesh(SMESH::SMESH_IDSource_ptr theSource)
Definition: SMESH_Measurements_i.cxx:146
Definition: SMESH_Gen_i.hxx:99
Definition: SMESH_Mesh.hxx:80
Definition: SMESH_Pattern_i.hxx:47
::SMESH_Pattern myPattern
Definition: SMESH_Pattern_i.hxx:105
SMESH_Gen_i * myGen
Definition: SMESH_Pattern_i.hxx:107
Definition: SMESH_Pattern.hxx:60
ErrorCode
error code of the last of one of above operations
Definition: SMESH_Pattern.idl:126
std::string GetString(TInt theId, TInt theStep, const TString &theString)
Extract a substring from the sequence of the strings.
Definition: MED_Structures.cxx:31
sequence< long_array > array_of_long_array
Definition: SMESH_Mesh.idl:47
sequence< smIdType > smIdType_array
Definition: SMESH_Mesh.idl:45
sequence< SMESH::PointStruct > point_array
Definition: SMESH_Pattern.idl:37
sequence< long > long_array
Definition: SMESH_Mesh.idl:44