1 // Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License, or (at your option) any later version.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
19 // File : SMESHGUI_Operations.h
20 // Author : IVAN MECHETIN, Open CASCADE S.A.S. (ivan.mechetin@opencascade.com)
22 #ifndef SMESHGUI_OPERATIONS_H
23 #define SMESHGUI_OPERATIONS_H
27 // Tools --------------------------//--------------------------------
28 OpDelete = 1000, // DELETE
29 OpSelectFiltersLibrary = 1010, // MENU TOOLS - SELECTION FILTERS LIBRARY
30 OpReset = 1020, // RESET
31 OpScalarBarProperties = 1021, // SCALAR BAR PROPERTIES
32 OpShowScalarBar = 1022, // SHOW SCALAR BAR
33 OpSaveDistribution = 1030, // SAVE DISTRIBUTION
34 OpShowDistribution = 1031, // SHOW DISTRIBUTION
35 OpPlotDistribution = 1032, // PLOT DISTRIBUTION
36 OpFileInformation = 1040, // POPUP MENU - FILE INFORMATION
37 // Import -------------------------//--------------------------------
38 OpImportDAT = 1100, // MENU FILE - IMPORT - DAT FILE
39 OpImportUNV = 1101, // MENU FILE - IMPORT - UNV FILE
40 OpImportMED = 1102, // MENU FILE - IMPORT - MED FILE
41 OpImportSTL = 1103, // MENU FILE - IMPORT - STL FILE
42 OpImportCGNS = 1104, // MENU FILE - IMPORT - CGNS FILE
43 OpImportGMF = 1106, // MENU FILE - IMPORT - GMF FILE
44 OpPopupImportDAT = 1120, // POPUP MENU - IMPORT - DAT FILE
45 OpPopupImportUNV = 1121, // POPUP MENU - IMPORT - UNV FILE
46 OpPopupImportMED = 1122, // POPUP MENU - IMPORT - MED FILE
47 OpPopupImportSTL = 1123, // POPUP MENU - IMPORT - STL FILE
48 OpPopupImportCGNS = 1124, // POPUP MENU - IMPORT - CGNS FILE
49 OpPopupImportGMF = 1126, // POPUP MENU - IMPORT - GMF FILE
50 // Export -------------------------//--------------------------------
51 OpExportDAT = 1200, // MENU FILE - EXPORT - DAT FILE
52 OpExportMED = 1201, // MENU FILE - EXPORT - MED FILE
53 OpExportUNV = 1202, // MENU FILE - EXPORT - UNV FILE
54 OpExportSTL = 1203, // MENU FILE - EXPORT - STL FILE
55 OpExportCGNS = 1204, // MENU FILE - EXPORT - CGNS FILE
56 OpExportGMF = 1206, // MENU FILE - EXPORT - GMF FILE
57 OpPopupExportDAT = 1210, // POPUP MENU - EXPORT - DAT FILE
58 OpPopupExportMED = 1211, // POPUP MENU - EXPORT - MED FILE
59 OpPopupExportUNV = 1212, // POPUP MENU - EXPORT - UNV FILE
60 OpPopupExportSTL = 1213, // POPUP MENU - EXPORT - STL FILE
61 OpPopupExportCGNS = 1214, // POPUP MENU - EXPORT - CGNS FILE
62 OpPopupExportGMF = 1216, // POPUP MENU - EXPORT - GMF FILE
63 // Mesh ---------------------------//--------------------------------
64 OpCreateMesh = 2030, // MENU MESH - CREATE MESH
65 OpCreateSubMesh = 2031, // MENU MESH - CREATE SUBMESH
66 OpEditMeshOrSubMesh = 2032, // MENU MESH - EDIT MESH/SUBMESH
67 OpEditMesh = 2033, // POPUP - EDIT MESH
68 OpEditSubMesh = 2034, // POPUP - EDIT SUBMESH
69 OpBuildCompoundMesh = 2035, // MENU MESH - BUILD COMPOUND
70 OpCopyMesh = 2036, // MENU MESH - COPY MESH
71 OpCompute = 2040, // MENU MESH - COMPUTE
72 OpComputeSubMesh = 2041, // POPUP - COMPUTE SUBMESH
73 OpPreCompute = 2042, // MENU MESH - PREVIEW
74 OpEvaluate = 2043, // MENU MESH - EVALUATE
75 OpMeshOrder = 2044, // MENU MESH - CHANGE SUBMESH PRIORITY
76 OpRecompute = 2045, // MENU MESH - Clear + COMPUTE
77 OpShowErrors = 2046, // MENU MESH - Show compute errors
78 OpCreateGroup = 2050, // MENU MESH - CREATE GROUP
79 OpCreateGeometryGroup = 2051, // MENU MESH - CREATE GROUPS FROM GEOMETRY
80 OpConstructGroup = 2052, // MENU MESH - CONSTRUCT GROUP
81 OpEditGroup = 2053, // MENU MESH - EDIT GROUP
82 OpEditGeomGroupAsGroup = 2054, // MENU MESH - EDIT GROUP AS STANDALONE
83 OpUnionGroups = 2060, // MENU MESH - UNION GROUPS
84 OpIntersectGroups = 2061, // MENU MESH - INTERSECT GROUPS
85 OpCutGroups = 2062, // MENU MESH - CUT GROUPS
86 OpGroupUnderlyingElem = 2070, // MENU MESH - GROUP OF UNDERLYING ENTITIES
87 OpFaceGroupsByEdges = 2071, // MENU MESH - FACE GROUPS SEPARATED by EDGES
88 OpEditGroupPopup = 2080, // POPUP MENU - EDIT GROUP
89 OpAddElemGroupPopup = 2081, // POPUP MENU - ADD ELEMENTS TO GROUP
90 OpRemoveElemGroupPopup = 2082, // POPUP MENU - REMOVE ELEMENTS FROM GROUP
91 OpMeshInformation = 2100, // MENU MESH - MESH INFORMATION
92 OpWhatIs = 2101, // MENU MESH - MESH ELEMENT INFORMATION
93 OpStdInfo = 2102, // MENU MESH - MESH STANDARD INFORMATION
94 OpFindElementByPoint = 2103, // MENU MESH - FIND ELEMENT BY POINT
95 OpUpdate = 2200, // POPUP MENU - UPDATE
96 // Controls -----------------------//--------------------------------
97 OpFreeNode = 3000, // MENU CONTROLS - FREE NODES
98 OpEqualNode = 3001, // MENU CONTROLS - DOUBLE NODES
99 OpNodeConnectivityNb = 3002, // MENU CONTROLS - NODE CONNECTIVITY NUMBER
100 OpFreeEdge = 3100, // MENU CONTROLS - FREE EDGES
101 OpFreeBorder = 3101, // MENU CONTROLS - FREE BORDERS
102 OpLength = 3102, // MENU CONTROLS - LENGTH
103 OpConnection = 3103, // MENU CONTROLS - DOUBLE NODES
104 OpEqualEdge = 3104, // MENU CONTROLS - BORDERS AT MULTICONNECTION
105 OpFreeFace = 3200, // MENU CONTROLS - FREE FACES
106 OpBareBorderFace = 3201, // MENU CONTROLS - FACES WITH BARE BORDER
107 OpOverConstrainedFace = 3202, // MENU CONTROLS - OVERCONSTRAINED FACES
108 OpLength2D = 3203, // MENU CONTROLS - LENGTH 2D
109 OpConnection2D = 3204, // MENU CONTROLS - BORDERS ON MULTICONNECTION 2D
110 OpArea = 3205, // MENU CONTROLS - AREA
111 OpTaper = 3206, // MENU CONTROLS - TAPER
112 OpAspectRatio = 3207, // MENU CONTROLS - ASPECT RATIO
113 OpMinimumAngle = 3208, // MENU CONTROLS - MINIMUM ANGLE
114 OpWarpingAngle = 3209, // MENU CONTROLS - WARPING ANGLE
115 OpSkew = 3210, // MENU CONTROLS - SKEW
116 OpMaxElementLength2D = 3211, // MENU CONTROLS - ELEMENT DIAMETER 2D
117 OpEqualFace = 3212, // MENU CONTROLS - DOUBLE FACES
118 OpDeflection2D = 3213, // MENU CONTROLS - DEFLECTION 2D
119 OpAspectRatio3D = 3300, // MENU CONTROLS - ASPECT RATIO 3D
120 OpVolume = 3301, // MENU CONTROLS - VOLUME
121 OpMaxElementLength3D = 3302, // MENU CONTROLS - ELEMENT DIAMETER 3D
122 OpBareBorderVolume = 3303, // MENU CONTROLS - VOLUMES WITH BARE BORDER
123 OpOverConstrainedVolume = 3304, // MENU CONTROLS - OVERCONSTRAINED VOLUMES
124 OpEqualVolume = 3305, // MENU CONTROLS - DOUBLE VOLUMES
125 OpOverallMeshQuality = 3400, // MENU CONTROLS - OVERALL MESH QUALITY
126 // Modification -------------------//--------------------------------
127 OpNode = 4000, // MENU MODIFICATION - ADD - NODE
128 OpElem0D = 4001, // MENU MODIFICATION - ADD - 0D ELEMENT
129 OpElem0DOnElemNodes = 4002, // MENU MODIFICATION - ADD - 0D ELEMENTS ON ELEMENT NODES
130 OpBall = 4003, // MENU MODIFICATION - ADD - BALL
131 OpEdge = 4004, // MENU MODIFICATION - ADD - EDGE
132 OpTriangle = 4005, // MENU MODIFICATION - ADD - TRIANGLE
133 OpQuadrangle = 4006, // MENU MODIFICATION - ADD - QUADRANGLE
134 OpPolygon = 4007, // MENU MODIFICATION - ADD - POLYGON
135 OpTetrahedron = 4008, // MENU MODIFICATION - ADD - TETRAHEDRON
136 OpHexahedron = 4009, // MENU MODIFICATION - ADD - HEXAHEDRON
137 OpPentahedron = 4010, // MENU MODIFICATION - ADD - PENTAHEDRON
138 OpPyramid = 4011, // MENU MODIFICATION - ADD - PYRAMID
139 OpHexagonalPrism = 4012, // MENU MODIFICATION - ADD - HEXAGONAL PRISM
140 OpPolyhedron = 4013, // MENU MODIFICATION - ADD - POLYHEDRON
141 OpQuadraticEdge = 4100, // MENU MODIFICATION - ADD - QUADRATIC EDGE
142 OpQuadraticTriangle = 4101, // MENU MODIFICATION - ADD - QUADRATIC TRIANGLE
143 OpBiQuadraticTriangle = 4102, // MENU MODIFICATION - ADD - BIQUADRATIC TRIANGLE
144 OpQuadraticQuadrangle = 4103, // MENU MODIFICATION - ADD - QUADRATIC QUADRANGLE
145 OpBiQuadraticQuadrangle = 4104, // MENU MODIFICATION - ADD - BIQUADRATIC QUADRANGLE
146 OpQuadraticTetrahedron = 4105, // MENU MODIFICATION - ADD - QUADRATIC TETRAHEDRON
147 OpQuadraticPyramid = 4106, // MENU MODIFICATION - ADD - QUADRATIC PYRAMID
148 OpQuadraticPentahedron = 4107, // MENU MODIFICATION - ADD - QUADRATIC PENTAHEDRON
149 OpBiQuadraticPentahedron = 4108, // MENU MODIFICATION - ADD - BIQUADRATIC PENTAHEDRON
150 OpQuadraticHexahedron = 4110, // MENU MODIFICATION - ADD - QUADRATIC HEXAHEDRON
151 OpTriQuadraticHexahedron = 4111, // MENU MODIFICATION - ADD - TRIQUADRATIC HEXAHEDRON
152 OpQuadraticPolygon = 4112, // MENU MODIFICATION - ADD - QUADRATIC POLYGON
153 OpRemoveNodes = 4200, // MENU MODIFICATION - REMOVE - NODE
154 OpRemoveElements = 4201, // MENU MODIFICATION - REMOVE - ELEMENTS
155 OpRemoveOrphanNodes = 4202, // MENU MODIFICATION - REMOVE - ORPHAN NODES
156 OpRemoveNodeWithReconn = 4203, // MENU MODIFICATION - REMOVE - NODE, WITH RECONNECTION
157 OpDeleteGroup = 4210, // MENU MODIFICATION - REMOVE - DELETE GROUPS WITH CONTENTS
158 OpClearMesh = 4220, // MENU MODIFICATION - REMOVE - CLEAR MESH DATA
159 OpRenumberingNodes = 4300, // MENU MODIFICATION - RENUMBERING - NODES
160 OpRenumberingElements = 4301, // MENU MODIFICATION - RENUMBERING - ELEMENTS
161 OpTranslation = 4400, // MENU MODIFICATION - TRANSFORMATION - TRANSLATION
162 OpRotation = 4401, // MENU MODIFICATION - TRANSFORMATION - ROTATION
163 OpSymmetry = 4402, // MENU MODIFICATION - TRANSFORMATION - SYMMETRY
164 OpScale = 4403, // MENU MODIFICATION - TRANSFORMATION - SCALE TRANSFORM
165 OpSewing = 4404, // MENU MODIFICATION - TRANSFORMATION - SEWING
166 OpMergeNodes = 4405, // MENU MODIFICATION - TRANSFORMATION - MERGE NODES
167 OpMergeElements = 4406, // MENU MODIFICATION - TRANSFORMATION - MERGE ELEMENTS
168 OpDuplicateNodes = 4407, // MENU MODIFICATION - TRANSFORMATION - DUPLICATE NODES OR/AND ELEMENTS
169 OpOffset = 4408, // MENU MODIFICATION - TRANSFORMATION - OFFSET
170 OpMoveNode = 4500, // MENU MODIFICATION - MOVE NODE
171 OpDiagonalInversion = 4501, // MENU MODIFICATION - DIAGONAL INVERSION
172 OpUnionOfTwoTriangle = 4502, // MENU MODIFICATION - UNION OF TWO TRIANGLE
173 OpOrientation = 4503, // MENU MODIFICATION - ORIENTATION
174 OpReorientFaces = 4504, // MENU MODIFICATION - REORIENT FACES BY VECTOR
175 OpUnionOfTriangles = 4505, // MENU MODIFICATION - UNION OF TRIANGLES
176 OpCuttingOfQuadrangles = 4506, // MENU MODIFICATION - CUTTING OF QUADRANGLES
177 OpSplitVolumes = 4507, // MENU MODIFICATION - SPLIT VOLUMES
178 OpSmoothing = 4508, // MENU MODIFICATION - SMOOTHING
179 OpExtrusion = 4509, // MENU MODIFICATION - EXTRUSION
180 OpExtrusionAlongAPath = 4510, // MENU MODIFICATION - EXTRUSION ALONG A PATH
181 OpRevolution = 4511, // MENU MODIFICATION - REVOLUTION
182 OpPatternMapping = 4512, // MENU MODIFICATION - PATTERN MAPPING
183 OpConvertMeshToQuadratic = 4513, // MENU MODIFICATION - CONVERT TO/FROM QUADRATIC
184 OpCreateBoundaryElements = 4514, // MENU MODIFICATION - CREATE BOUNDARY ELEMENTS
185 OpSplitBiQuadratic = 4515, // MENU MODIFICATION - SPLIT BI-QUADRATIC TO LINEAR
186 OpMoveNodeInteractive = 4516, // MENU MODIFICATION - MOVE NODE INTERACTIVE
187 OpSplitEdgeInteract = 4517, // MENU MODIFICATION - INTERACTIVE ADD NODE ON EDGE
188 OpSplitFaceInteract = 4518, // MENU MODIFICATION - INTERACTIVE ADD NODE ON FACE
189 // Adaptation ---------------------//--------------------------------
190 OpMGAdapt = 8020, // MENU ADAPTATION - MG-ADAPT
191 OpHomardAdapt = 8021, // MENU ADAPTATION - HOMARD-ADAPT
192 // Measurements -------------------//--------------------------------
193 OpPropertiesLength = 5000, // MENU MEASUREMENTS - BASIC PROPERTIES - LENGTH
194 OpPropertiesArea = 5001, // MENU MEASUREMENTS - BASIC PROPERTIES - AREA
195 OpPropertiesVolume = 5002, // MENU MEASUREMENTS - BASIC PROPERTIES - VOLUME
196 OpMinimumDistance = 5003, // MENU MEASUREMENTS - MINIMUM DISTANCE
197 OpBoundingBox = 5004, // MENU MEASUREMENTS - BOUNDING BOX
198 OpAngle = 5005, // MENU MEASUREMENTS - ANGLE
199 // Hypothesis ---------------------//--------------------------------
200 OpEditHypothesis = 6000, // POPUP MENU - EDIT HYPOTHESIS
201 OpUnassign = 6001, // POPUP MENU - UNASSIGN
202 // Numbering ----------------------//--------------------------------
203 OpNumberingNodes = 6010, // POPUP MENU - NUMBERING - DISPLAY NODES
204 OpNumberingElements = 6011, // POPUP MENU - NUMBERING - DISPLAY ELEMENTS
205 // AutoColor ----------------------//--------------------------------
206 OpAutoColor = 6020, // POPUP MENU - AUTO COLOR
207 OpDisableAutoColor = 6021, // POPUP MENU - DISABLE AUTO COLOR
208 // DisplayMode --------------------//--------------------------------
209 OpDMWireframe = 6030, // POPUP MENU - DISPLAY MODE - WIREFRAME
210 OpDMShading = 6031, // POPUP MENU - DISPLAY MODE - SHADING
211 OpDMNodes = 6032, // POPUP MENU - DISPLAY MODE - NODES
212 OpDMShrink = 6033, // POPUP MENU - DISPLAY MODE - SHRINK
213 // DisplayEntity ------------------//--------------------------------
214 OpDE0DElements = 6040, // POPUP MENU - DISPLAY ENTITY - 0D ELEMENTS
215 OpDEEdges = 6041, // POPUP MENU - DISPLAY ENTITY - EDGES
216 OpDEFaces = 6042, // POPUP MENU - DISPLAY ENTITY - FACES
217 OpDEVolumes = 6043, // POPUP MENU - DISPLAY ENTITY - VOLUMES
218 OpDEBalls = 6044, // POPUP MENU - DISPLAY ENTITY - BALLS
219 OpDEAllEntity = 6045, // POPUP MENU - DISPLAY ENTITY - ALL ENTITIES
220 OpDEChoose = 6046, // POPUP MENU - DISPLAY ENTITY - CHOOSE ENTITIES
221 // Representation -----------------//--------------------------------
222 OpRepresentationLines = 6050, // POPUP MENU - 2D QUADRATIC - LINES
223 OpRepresentationArcs = 6051, // POPUP MENU - 2D QUADRATIC - ARCS
224 // OrientationOnFaces -------------//--------------------------------
225 OpOrientationOnFaces = 6060, // POPUP MENU - ORIENTATION ON FACES
226 // PropertiesGUI ------------------//--------------------------------
227 OpProperties = 6070, // POPUP MENU - PROPERTIES
228 // Transparency -------------------//--------------------------------
229 OpTransparency = 6080, // POPUP MENU - TRANSPARENCY
230 // Display ------------------------//--------------------------------
231 OpShow = 6090, // POPUP MENU - SHOW
232 OpHide = 6091, // POPUP MENU - HIDE
233 OpShowOnly = 6092, // POPUP MENU - SHOW ONLY
234 // Clipping -----------------------//--------------------------------
235 OpClipping = 6100, // POPUP MENU - CLIPPING
236 // SortChild ----------------------//--------------------------------
237 OpSortChild = 6110, // POPUP MENU - SORT CHILDREN
238 // Break link with Shaper object --//--------------------------------
239 OpBreakLink = 6120, // POPUP MENU - Break link with Shaper
240 // Advanced -----------------------//--------------------------------
241 OpAdvancedNoOp = 10000, // NO OPERATION (advanced operations base)
242 //@@ insert new functions before this line @@ do not remove this line @@//
243 OpLastOperationID = 20000 // DO NOT USE OPERATION IDs MORE THAN 20000 !!!
247 #endif // SMESHGUI_OPERATIONS_H