1 -- Created on: 1993-03-08
2 -- Created by: Remi LEQUETTE
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
8 -- This library is free software; you can redistribute it and / or modify it
9 -- under the terms of the GNU Lesser General Public 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.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 -- Update: Frederic Maupas
22 ---Purpose: The package PTopoDS provides persistent classes to
23 -- store Topological Data Structures in Data Base.
25 -- The structure of this persistent topology is
26 -- similar to the transient topology (see its
27 -- documentation for more comprehension of this one).
28 -- But some differences occure:
30 -- * The class Model and derivatives disappear;
32 -- * The "free" information disappears, because a
33 -- TShape stored in the Data Base is always "frozen";
36 -- * The class HShape inherits from ExternShareable from
37 -- ObjMgt, so that an intance of HShape may be
38 -- shared by a TShape even if the HShape is not in the
41 -- * The class Shape1 inherits from Storable from
44 -- Note that the use of this topology is managed by
45 -- the package MgtTopoDS.
47 -- About the question of "Location", see the package
48 -- PTopLoc itself; about naming, referencing and
49 -- using persistent Shapes outsing the topological
50 -- world, see the package TopoDB.
56 TopAbs, -- basic enumerations : ShapeEnum, Orientation
57 PTopLoc, -- Persistent local coordinate systems
63 ---Category: Old version of Shape/TShape.
64 -- ============================
67 ---Purpose: A reference (even outside the same container) to a
68 -- Topological shape with Location, Orientation.
70 deferred class TShape;
71 -- inherits ExternShareable from ObjMgt
72 ---Purpose: A topological shape is a structure made from other
73 -- shapes. This is a deferred class used to support
74 -- topological objects.
76 deferred class TVertex;
77 ---Purpose: A TVertex is a topological point in two or three
81 ---Purpose: A Vertex is a TVertex with a Location and an
86 ---Purpose: A topological part of a curve in 2D or 3D, the
87 -- boundary is a set of oriented Vertices.
90 ---Purpose: A Edge is a TEdge with a Location and an
95 ---Purpose: A set of Edges making a wire structure, it can be
96 -- a wireframe or a composite line.
99 ---Purpose: A Wire is a TWire with a Location and an
101 -- It inherits HShape
104 ---Purpose: A topological part of a surface or of the 2D
105 -- space. The boundary is a set of wires and edges.
108 ---Purpose: A Face is a TFace with a Location and an
110 -- It inherits HShape
113 ---Purpose: A set of Faces or Shells, a topological surface or
114 -- any faces structure.
117 ---Purpose: A Shell is a TShell with a Location and an
119 -- It inherits HShape
122 ---Purpose: A Topological part of 3D space, bounded by Shells
126 ---Purpose: A Solid is a TSolid with a Location and an
128 -- It inherits HShape
131 ---Purpose: A structure of Solids sharing Faces.
134 ---Purpose: A CompSolid is a TCompSolid with a Location and an
136 -- It inherits HShape
139 ---Purpose: A TCompound is an all-purpose set of Shapes.
142 ---Purpose: A Compound is a TCompound with a Location and an
144 -- It inherits HShape
147 class HArray1OfHShape instantiates HArray1 from PCollection
148 (HShape from PTopoDS);
151 ---Category: New version of Shape/TShape.
152 -- ============================
155 ---Purpose: A reference to a Topological TShape with Location,
158 deferred class TShape1;
159 -- inherits ExternShareable from ObjMgt
160 ---Purpose: A topological shape is a structure made from other
161 -- shapes. This is a deferred class used to support
162 -- topological objects.
164 deferred class TVertex1;
165 ---Purpose: A TVertex is a topological point in two or three
168 deferred class TEdge1;
169 ---Purpose: A topological part of a curve in 2D or 3D, the
170 -- boundary is a set of oriented Vertices.
173 ---Purpose: A set of Edges making a wire structure, it can be
174 -- a wireframe or a composite line.
177 ---Purpose: A topological part of a surface or of the 2D
178 -- space. The boundary is a set of wires and edges.
181 ---Purpose: A set of Faces or Shells, a topological surface or
182 -- any faces structure.
185 ---Purpose: A Topological part of 3D space, bounded by Shells
189 ---Purpose: A structure of Solids sharing Faces.
192 ---Purpose: A TCompound is an all-purpose set of Shapes.
195 class HArray1OfShape1 instantiates HArray1 from PCollection
196 (Shape1 from PTopoDS);