1 #ifndef __Document_idl__
2 #define __Document_idl__
4 \defgroup EXAMPLES SALOME EXAMPLES components
6 #include "SALOME_Exception.idl"
7 #include "SALOME_GenericObj.idl"
9 // #include "GEOM_Gen.idl"
13 This package contains the interface HEXABLOCK_ORB used
14 for %HEXABLOCK component as an example in %SALOME application.
28 interface CrossElements;
31 interface Propagation;
33 typedef sequence<Quad> Quads;
35 interface Document : SALOME::GenericObj
38 raises (SALOME::SALOME_Exception);
42 raises (SALOME::SALOME_Exception);
44 void setFile( in string fileName )
45 raises (SALOME::SALOME_Exception);
48 raises (SALOME::SALOME_Exception);
51 long saveFile() //CS_NOT_SPEC
52 raises (SALOME::SALOME_Exception);
54 long saveVtk( in string fname );//CS_NOT_SPEC
58 void setTolerance( in double tol ) raises (SALOME::SALOME_Exception);
59 double getTolerance() raises (SALOME::SALOME_Exception);
64 Vertex addVertex( in double x, in double y, in double z )
65 raises (SALOME::SALOME_Exception);
68 raises (SALOME::SALOME_Exception);
70 Vertex getVertex( in long i )
71 raises (SALOME::SALOME_Exception);
73 Vertex findVertex( in double x, in double y, in double z )
74 raises (SALOME::SALOME_Exception);
80 Edge addEdge( in Vertex v0, in Vertex v1 )
81 raises (SALOME::SALOME_Exception);
84 raises (SALOME::SALOME_Exception);
86 Edge getEdge( in long i )
87 raises (SALOME::SALOME_Exception);
89 Edge findEdge( in Vertex p1, in Vertex p2 )
90 raises (SALOME::SALOME_Exception);
96 Quad addQuad( in Edge e0, in Edge e1, in Edge e2, in Edge e3 )
97 raises (SALOME::SALOME_Exception);
99 Quad addQuadVertices( in Vertex v0, in Vertex v1, in Vertex v2, in Vertex v3 )
100 raises (SALOME::SALOME_Exception);
103 raises (SALOME::SALOME_Exception);
105 Quad getQuad( in long i )
106 raises (SALOME::SALOME_Exception);
108 Quad findQuad( in Vertex v1, in Vertex v2 )
109 raises (SALOME::SALOME_Exception);
116 Hexa addHexa( in Quad q0, in Quad q1, in Quad q2, in Quad q3, in Quad q4, in Quad q5 )
117 raises (SALOME::SALOME_Exception);
119 Hexa addHexaVertices( in Vertex v1, in Vertex v2, in Vertex v3, in Vertex v4,
120 in Vertex v5, in Vertex v6, in Vertex v7, in Vertex v8 )
121 raises (SALOME::SALOME_Exception);
124 raises (SALOME::SALOME_Exception);
126 Hexa getHexa( in long i )
127 raises (SALOME::SALOME_Exception);
129 Hexa findHexa( in Vertex p1, in Vertex p2 )
130 raises (SALOME::SALOME_Exception);
137 Vector addVector( in double dx, in double dy, in double dz )
138 raises (SALOME::SALOME_Exception);
140 Vector addVectorVertices( in Vertex v1, in Vertex v2 )
141 raises (SALOME::SALOME_Exception);
143 // long countVector()
144 // raises (SALOME::SALOME_Exception);
146 // Vector getVector( in long i )
147 // raises (SALOME::SALOME_Exception);
153 Cylinder addCylinder( in Vertex base, in Vector direction, in double radius, in double height )
154 raises (SALOME::SALOME_Exception);
156 // long countCylinder()
157 // raises (SALOME::SALOME_Exception);
159 // Cylinder getCylinder( in long i )
160 // raises (SALOME::SALOME_Exception);
166 Pipe addPipe( in Vertex base, in Vector direction,
167 in double int_radius, in double ext_radius,
169 raises (SALOME::SALOME_Exception);
172 // raises (SALOME::SALOME_Exception);
174 // Pipe getPipe( in long i )
175 // raises (SALOME::SALOME_Exception);
181 boolean removeHexa( in Hexa h )
182 raises (SALOME::SALOME_Exception);
184 boolean removeConnectedHexa( in Hexa h )
185 raises (SALOME::SALOME_Exception);
190 Elements makeCartesian( in Vertex pt,
191 in Vector vx, in Vector vy, in Vector vz,
192 in long nx, in long ny, in long nz)
193 raises (SALOME::SALOME_Exception);
195 Elements makeCartesian1( in Vertex v,
197 in long px, in long py, in long pz,
198 in long mx, in long my, in long mz )
199 raises (SALOME::SALOME_Exception);
204 Elements makeCylindrical( in Vertex pt,
205 in Vector vex, in Vector vez,
206 in double dr, in double da, in double dl,
207 in long nr, in long na, in long nl,
209 raises (SALOME::SALOME_Exception);
214 // Elements makeSpherical( in Vertex pt,
219 // raises (SALOME::SALOME_Exception); //CS_TODO
221 Elements makeSpherical( in Vertex pt,
225 raises (SALOME::SALOME_Exception); //CS_TO_DEL
229 Cylindre découpé en blocs
231 // Elements makeCylinder( in Cylinder cyl, in long nr, in long na, in long nl )
232 // raises (SALOME::SALOME_Exception);//CS_TODO
233 Elements makeCylinder( in Cylinder cyl, in Vector vr, in long nr, in long na, in long nl )
234 raises (SALOME::SALOME_Exception);//CS_NEW CS_NOT_SPEC
238 Tuyau découpé en blocs
240 // Elements makePipe( in Pipe p, in long nr, in long na, in long nl )
241 // raises (SALOME::SALOME_Exception);
245 2 Cylindres en T découpés en blocs
247 CrossElements makeCylinders( in Cylinder c1, in Cylinder c2 )
248 raises (SALOME::SALOME_Exception);//CS_NEW CS_NOT_SPEC
251 2 Tuyau découpé en intersection découpés en blocs
253 // Elements makePipes( in Pipe p1, in long n1r, in long n1a, in long n1l,
254 // in Pipe p2, in long n2r, in long n2a, in long n2l )
255 // raises (SALOME::SALOME_Exception);
258 Prismer des quadrangles
260 Elements prismQuad( in Quad qd, in Vector v, in long nb )
261 raises (SALOME::SALOME_Exception);
263 Elements prismQuads( in Quads qds, in Vector v, in long nb )
264 raises (SALOME::SALOME_Exception); //CS_NEW
266 Elements joinQuad( in Quad qa, in Quad qb,
267 in Vertex va1, in Vertex vb1,
268 in Vertex va2, in Vertex vb2,
270 raises (SALOME::SALOME_Exception);
272 Elements joinQuads( in Quads qds,
274 in Vertex va1, in Vertex vb1,
275 in Vertex va2, in Vertex vb2,
277 raises (SALOME::SALOME_Exception);
281 // Fusionner 2 éléments de même nature //CS_NOT_SPEC
284 // Elements mergeQuads( in Quad qa, in Quad qb,
285 // in Vertex va1, in Vertex vb1,
286 // in Vertex va2, in Vertex vb2 )
287 // raises (SALOME::SALOME_Exception);
289 long mergeQuads( in Quad qa, in Quad qb,
290 in Vertex va1, in Vertex vb1,
291 in Vertex va2, in Vertex vb2 )
292 raises (SALOME::SALOME_Exception);//CS_NOT_SPEC //CS_NEW
295 // Elements mergeEdges( in Edge e1, in Edge e2,
296 // in Vertex v1, in Vertex v2 )
297 // raises (SALOME::SALOME_Exception);
299 long mergeEdges( in Edge e1, in Edge e2,
300 in Vertex v1, in Vertex v2 )
301 raises (SALOME::SALOME_Exception);//CS_NOT_SPEC //CS_NEW
303 // Elements mergeVertices( in Vertex v1, in Vertex v2 )
304 // raises (SALOME::SALOME_Exception);
305 long mergeVertices( in Vertex v1, in Vertex v2 )
306 raises (SALOME::SALOME_Exception);//CS_NOT_SPEC //CS_NEW
310 Déconnecter des éléments du modèle
312 Elements disconnectQuad( in Hexa h, in Quad q ) //CS_NOT_SPEC
313 // long disconnectQuad( in Hexa h, in Quad q )//CS_NOT_SPEC
314 // raises (SALOME::SALOME_Exception);
315 // Quad disconnectQuad( in Hexa h, in Quad q )//CS_NOT_SPEC
316 raises (SALOME::SALOME_Exception);
318 Elements disconnectEdge( in Hexa h, in Edge e )//CS_NOT_SPEC
319 raises (SALOME::SALOME_Exception);
320 // Elements disconnectEdge( in Hexa h, in Edge e )
321 // long disconnectEdge( in Hexa h, in Edge e )
322 // Edge disconnectEdge( in Hexa h, in Edge e ) //CS_NOT_SPEC
323 // raises (SALOME::SALOME_Exception);
325 Elements disconnectVertex( in Hexa h, in Vertex v )//CS_NOT_SPEC
326 // long disconnectVertex( in Hexa h, in Vertex v )
327 // Vertex disconnectVertex( in Hexa h, in Vertex v ) //CS_NOT_SPEC
328 raises (SALOME::SALOME_Exception);
332 Couper des hexaèdres du modèle
334 Elements cut( in Edge e, in long nb_of_cuts )
335 raises (SALOME::SALOME_Exception);
338 Make elements by transforming elements
340 // Elements makeTranslation( in Element e, in Vector vec )
341 // raises (SALOME::SALOME_Exception);
342 Elements makeTranslation( in Elements l, in Vector vec )
343 raises (SALOME::SALOME_Exception);
345 // Elements makeScale( in Vertex e, in Vertex ver, in double k )
346 // raises (SALOME::SALOME_Exception);
348 Elements makeRotation(in Elements l, in Vertex ver, in Vector vec, in double angle)
349 raises (SALOME::SALOME_Exception);
351 // Elements makeSymmetryPoint(in Element e, in Vertex ver)
352 // raises (SALOME::SALOME_Exception);
354 // Elements makeSymmetryLine(in Element e, in Vertex ver, in Vector vec)
355 // raises (SALOME::SALOME_Exception);
357 // Elements makeSymmetryPlane(in Element e, in Vertex ver, in Vector vec)
358 // raises (SALOME::SALOME_Exception);
361 Modify elements by transforming elements
363 // void performTranslation(in Element e, in Vector vec)
364 // raises (SALOME::SALOME_Exception);
366 void performTranslation(in Elements l, in Vector vec)
367 raises (SALOME::SALOME_Exception);
369 // void performScale(in Element e, in Vertex ver, in double k)
370 // raises (SALOME::SALOME_Exception);
372 void performRotation(in Elements l, in Vertex ver, in Vector vec, in double angle)
373 raises (SALOME::SALOME_Exception);
375 // void performSymmetryPoint(in Element e, in Vertex ver)
376 // raises (SALOME::SALOME_Exception);
378 // void performSymmetryLine(in Element e, in Vertex ver, in Vector vec)
379 // raises (SALOME::SALOME_Exception);
381 // void performSymmetryPlane(in Element e, in Vertex ver, in Vector vec)
382 // raises (SALOME::SALOME_Exception);
391 // Créer, éditer et supprimer un groupe
393 // HexaGroup addHexaGroup( in string name )
394 Group addHexaGroup( in string name )
395 raises (SALOME::SALOME_Exception);
397 // QuadGroup addQuadGroup( in string name )
398 Group addQuadGroup( in string name )
399 raises (SALOME::SALOME_Exception);
401 // EdgeGroup addEdgeGroup( in string name )
402 Group addEdgeGroup( in string name )
403 raises (SALOME::SALOME_Exception);
405 // HexaNodeGroup addHexaNodeGroup( in string name )
406 Group addHexaNodeGroup( in string name )
407 raises (SALOME::SALOME_Exception);
409 // QuadNodeGroup addQuadNodeGroup( in string name )
410 Group addQuadNodeGroup( in string name )
411 raises (SALOME::SALOME_Exception);
413 // EdgeNodeGroup addEdgeNodeGroup( in string name )
414 Group addEdgeNodeGroup( in string name )
415 raises (SALOME::SALOME_Exception);
417 // VertexNodeGroup addVertexNodeGroup( in string name )
418 Group addVertexNodeGroup( in string name )
419 raises (SALOME::SALOME_Exception);
421 long removeGroup( in Group g)
422 raises (SALOME::SALOME_Exception);
425 raises (SALOME::SALOME_Exception);
427 Group getGroup( in long i )
428 raises (SALOME::SALOME_Exception);
430 Group findGroup( in string name )
431 raises (SALOME::SALOME_Exception);
436 Définir une loi de discrétisation
438 Law addLaw( in string name, in long nb_nodes )
439 raises (SALOME::SALOME_Exception);
442 raises (SALOME::SALOME_Exception);
444 Law getLaw( in long i )
445 raises (SALOME::SALOME_Exception);
447 void removeLaw( in Law l )
448 raises (SALOME::SALOME_Exception);
450 Law findLaw( in string name )
451 raises (SALOME::SALOME_Exception);
455 Discretization defined on the model of blocks
457 long countPropagation()
458 raises (SALOME::SALOME_Exception);
460 Propagation getPropagation( in long i )
461 raises (SALOME::SALOME_Exception);
463 Propagation findPropagation( in Edge e )
464 raises (SALOME::SALOME_Exception);