1 // Created on: 1992-01-24 2 // Created by: Remi LEQUETTE 3 // Copyright (c) 1992-1999 Matra Datavision 4 // Copyright (c) 1999-2014 OPEN CASCADE SAS 5 // 6 // This file is part of Open CASCADE Technology software library. 7 // 8 // This library is free software; you can redistribute it and/or modify it under 9 // the terms of the GNU Lesser General Public License version 2.1 as published 10 // by the Free Software Foundation, with special exception defined in the file 11 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 12 // distribution for complete text of the license and disclaimer of any warranty. 13 // 14 // Alternatively, this file may be used under the terms of Open CASCADE 15 // commercial license or contractual agreement. 16 17 #ifndef _TopAbs_ShapeEnum_HeaderFile 18 #define _TopAbs_ShapeEnum_HeaderFile 19 20 //! Identifies various topological shapes. This 21 //! enumeration allows you to use dynamic typing of shapes. 22 //! The values are listed in order of complexity, from the 23 //! most complex to the most simple i.e. 24 //! COMPOUND > COMPSOLID > SOLID > .... > VERTEX > SHAPE. 25 //! Any shape can contain simpler shapes in its definition. 26 //! Abstract topological data structure describes a basic 27 //! entity, the shape (present in this enumeration as the 28 //! SHAPE value), which can be divided into the following 29 //! component topologies: 30 //! - COMPOUND: A group of any of the shapes below. 31 //! - COMPSOLID: A set of solids connected by their 32 //! faces. This expands the notions of WIRE and SHELL to solids. 33 //! - SOLID: A part of 3D space bounded by shells. 34 //! - SHELL: A set of faces connected by some of the 35 //! edges of their wire boundaries. A shell can be open or closed. 36 //! - FACE: Part of a plane (in 2D geometry) or a surface 37 //! (in 3D geometry) bounded by a closed wire. Its 38 //! geometry is constrained (trimmed) by contours. 39 //! - WIRE: A sequence of edges connected by their 40 //! vertices. It can be open or closed depending on 41 //! whether the edges are linked or not. 42 //! - EDGE: A single dimensional shape corresponding 43 //! to a curve, and bound by a vertex at each extremity. 44 //! - VERTEX: A zero-dimensional shape corresponding to a point in geometry. 45 enum TopAbs_ShapeEnum 46 { 47 TopAbs_COMPOUND, 48 TopAbs_COMPSOLID, 49 TopAbs_SOLID, 50 TopAbs_SHELL, 51 TopAbs_FACE, 52 TopAbs_WIRE, 53 TopAbs_EDGE, 54 TopAbs_VERTEX, 55 TopAbs_SHAPE 56 }; 57 58 #endif // _TopAbs_ShapeEnum_HeaderFile 59