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 OpDeleteGroup = 4210, // MENU MODIFICATION - REMOVE - DELETE GROUPS WITH CONTENTS
157 OpClearMesh = 4220, // MENU MODIFICATION - REMOVE - CLEAR MESH DATA
158 OpRenumberingNodes = 4300, // MENU MODIFICATION - RENUMBERING - NODES
159 OpRenumberingElements = 4301, // MENU MODIFICATION - RENUMBERING - ELEMENTS
160 OpTranslation = 4400, // MENU MODIFICATION - TRANSFORMATION - TRANSLATION
161 OpRotation = 4401, // MENU MODIFICATION - TRANSFORMATION - ROTATION
162 OpSymmetry = 4402, // MENU MODIFICATION - TRANSFORMATION - SYMMETRY
163 OpScale = 4403, // MENU MODIFICATION - TRANSFORMATION - SCALE TRANSFORM
164 OpSewing = 4404, // MENU MODIFICATION - TRANSFORMATION - SEWING
165 OpMergeNodes = 4405, // MENU MODIFICATION - TRANSFORMATION - MERGE NODES
166 OpMergeElements = 4406, // MENU MODIFICATION - TRANSFORMATION - MERGE ELEMENTS
167 OpDuplicateNodes = 4407, // MENU MODIFICATION - TRANSFORMATION - DUPLICATE NODES OR/AND ELEMENTS
168 OpOffset = 4408, // MENU MODIFICATION - TRANSFORMATION - OFFSET
169 OpMoveNode = 4500, // MENU MODIFICATION - MOVE NODE
170 OpDiagonalInversion = 4501, // MENU MODIFICATION - DIAGONAL INVERSION
171 OpUnionOfTwoTriangle = 4502, // MENU MODIFICATION - UNION OF TWO TRIANGLE
172 OpOrientation = 4503, // MENU MODIFICATION - ORIENTATION
173 OpReorientFaces = 4504, // MENU MODIFICATION - REORIENT FACES BY VECTOR
174 OpUnionOfTriangles = 4505, // MENU MODIFICATION - UNION OF TRIANGLES
175 OpCuttingOfQuadrangles = 4506, // MENU MODIFICATION - CUTTING OF QUADRANGLES
176 OpSplitVolumes = 4507, // MENU MODIFICATION - SPLIT VOLUMES
177 OpSmoothing = 4508, // MENU MODIFICATION - SMOOTHING
178 OpExtrusion = 4509, // MENU MODIFICATION - EXTRUSION
179 OpExtrusionAlongAPath = 4510, // MENU MODIFICATION - EXTRUSION ALONG A PATH
180 OpRevolution = 4511, // MENU MODIFICATION - REVOLUTION
181 OpPatternMapping = 4512, // MENU MODIFICATION - PATTERN MAPPING
182 OpConvertMeshToQuadratic = 4513, // MENU MODIFICATION - CONVERT TO/FROM QUADRATIC
183 OpCreateBoundaryElements = 4514, // MENU MODIFICATION - CREATE BOUNDARY ELEMENTS
184 OpSplitBiQuadratic = 4515, // MENU MODIFICATION - SPLIT BI-QUADRATIC TO LINEAR
185 // Adaptation ---------------------//--------------------------------
186 OpMGAdapt = 8020, // MENU ADAPTATION - MG-ADAPT
187 OpHomardAdapt = 8021, // MENU ADAPTATION - HOMARD-ADAPT
188 // Measurements -------------------//--------------------------------
189 OpPropertiesLength = 5000, // MENU MEASUREMENTS - BASIC PROPERTIES - LENGTH
190 OpPropertiesArea = 5001, // MENU MEASUREMENTS - BASIC PROPERTIES - AREA
191 OpPropertiesVolume = 5002, // MENU MEASUREMENTS - BASIC PROPERTIES - VOLUME
192 OpMinimumDistance = 5003, // MENU MEASUREMENTS - MINIMUM DISTANCE
193 OpBoundingBox = 5004, // MENU MEASUREMENTS - BOUNDING BOX
194 OpAngle = 5005, // MENU MEASUREMENTS - ANGLE
195 // Hypothesis ---------------------//--------------------------------
196 OpEditHypothesis = 6000, // POPUP MENU - EDIT HYPOTHESIS
197 OpUnassign = 6001, // POPUP MENU - UNASSIGN
198 // Numbering ----------------------//--------------------------------
199 OpNumberingNodes = 6010, // POPUP MENU - NUMBERING - DISPLAY NODES
200 OpNumberingElements = 6011, // POPUP MENU - NUMBERING - DISPLAY ELEMENTS
201 // AutoColor ----------------------//--------------------------------
202 OpAutoColor = 6020, // POPUP MENU - AUTO COLOR
203 OpDisableAutoColor = 6021, // POPUP MENU - DISABLE AUTO COLOR
204 // DisplayMode --------------------//--------------------------------
205 OpDMWireframe = 6030, // POPUP MENU - DISPLAY MODE - WIREFRAME
206 OpDMShading = 6031, // POPUP MENU - DISPLAY MODE - SHADING
207 OpDMNodes = 6032, // POPUP MENU - DISPLAY MODE - NODES
208 OpDMShrink = 6033, // POPUP MENU - DISPLAY MODE - SHRINK
209 // DisplayEntity ------------------//--------------------------------
210 OpDE0DElements = 6040, // POPUP MENU - DISPLAY ENTITY - 0D ELEMENTS
211 OpDEEdges = 6041, // POPUP MENU - DISPLAY ENTITY - EDGES
212 OpDEFaces = 6042, // POPUP MENU - DISPLAY ENTITY - FACES
213 OpDEVolumes = 6043, // POPUP MENU - DISPLAY ENTITY - VOLUMES
214 OpDEBalls = 6044, // POPUP MENU - DISPLAY ENTITY - BALLS
215 OpDEAllEntity = 6045, // POPUP MENU - DISPLAY ENTITY - ALL ENTITIES
216 OpDEChoose = 6046, // POPUP MENU - DISPLAY ENTITY - CHOOSE ENTITIES
217 // Representation -----------------//--------------------------------
218 OpRepresentationLines = 6050, // POPUP MENU - 2D QUADRATIC - LINES
219 OpRepresentationArcs = 6051, // POPUP MENU - 2D QUADRATIC - ARCS
220 // OrientationOnFaces -------------//--------------------------------
221 OpOrientationOnFaces = 6060, // POPUP MENU - ORIENTATION ON FACES
222 // PropertiesGUI ------------------//--------------------------------
223 OpProperties = 6070, // POPUP MENU - PROPERTIES
224 // Transparency -------------------//--------------------------------
225 OpTransparency = 6080, // POPUP MENU - TRANSPARENCY
226 // Display ------------------------//--------------------------------
227 OpShow = 6090, // POPUP MENU - SHOW
228 OpHide = 6091, // POPUP MENU - HIDE
229 OpShowOnly = 6092, // POPUP MENU - SHOW ONLY
230 // Clipping -----------------------//--------------------------------
231 OpClipping = 6100, // POPUP MENU - CLIPPING
232 // SortChild ----------------------//--------------------------------
233 OpSortChild = 6110, // POPUP MENU - SORT CHILDREN
234 // Break link with Shaper object --//--------------------------------
235 OpBreakLink = 6120, // POPUP MENU - Break link with Shaper
236 // Advanced -----------------------//--------------------------------
237 OpAdvancedNoOp = 10000, // NO OPERATION (advanced operations base)
238 //@@ insert new functions before this line @@ do not remove this line @@//
239 OpLastOperationID = 20000 // DO NOT USE OPERATION IDs MORE THAN 20000 !!!
243 #endif // SMESHGUI_OPERATIONS_H