Files
OCCT/src/ShapeExtend/ShapeExtend.cdl
T
bugmaster b311480ed5 0023024: Update headers of OCCT files
Added appropriate copyright and license information in source files
2012-03-21 19:43:04 +04:00

142 lines
5.6 KiB
Plaintext
Executable File

-- Created on: 1998-07-21
-- Created by: data exchange team
-- Copyright (c) 1998-1999 Matra Datavision
-- Copyright (c) 1999-2012 OPEN CASCADE SAS
--
-- The content of this file is subject to the Open CASCADE Technology Public
-- License Version 6.5 (the "License"). You may not use the content of this file
-- except in compliance with the License. Please obtain a copy of the License
-- at http://www.opencascade.org and read it completely before using this file.
--
-- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
-- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
--
-- The Original Code and all software distributed under the License is
-- distributed on an "AS IS" basis, without warranty of any kind, and the
-- Initial Developer hereby disclaims all such warranties, including without
-- limitation, any warranties of merchantability, fitness for a particular
-- purpose or non-infringement. Please see the License for the specific terms
-- and conditions governing the rights and limitations under the License.
package ShapeExtend
---Purpose: This package provides general tools and data structures common
-- for other packages in SHAPEWORKS and extending CAS.CADE
-- structures.
-- The following items are provided by this package:
-- - enumeration Status used for coding status flags in methods
-- inside the SHAPEWORKS
-- - enumeration Parametrisation used for setting global parametrisation
-- on the composite surface
-- - class CompositeSurface representing a composite surface
-- made of a grid of surface patches
-- - class WireData representing a wire in the form of ordered
-- list of edges
-- - class MsgRegistrator for attaching messages to the objects
-- - tools for exploring the shapes
-- - tools for creating new shapes.
uses
TCollection,
gp,
Geom,
GeomAbs,
TColStd,
TColGeom,
TopAbs,
TopoDS,
TopTools,
Message
is
enumeration Status is
---Purpose: This enumeration is used in
-- ShapeHealing toolkit for representing flags in the
-- return statuses of class methods.
-- The status is a field of the class which is set by one or
-- several methods of that class.
-- It is used for reporting about errors and other situations
-- encountered during execution of the method.
-- There are defined 8 values for DONE and 8 for FAIL flags:
-- ShapeExtend_DONE1 ... ShapeExtend_DONE8,
-- ShapeExtend_FAIL1 ... ShapeExtend_FAIL8
-- and also enumerations for representing combinations of flags:
-- ShapeExtend_OK - no flags at all,
-- ShapeExtend_DONE - any of flags DONEi,
-- ShapeExtend_FAIL - any of flags FAILi.
-- The class that uses statuses provides a method(s) which
-- answers whether the flag corresponding to a given
-- enumerative value is (are) set:
-- Standard_Boolean Status(const ShapeExtend_Status test);
-- Note that status can have several flags set simultaneously.
-- Status(ShapeExtend_OK) gives True when no flags are set.
OK, -- Nothing done, everything OK
DONE1, -- Something was done, case 1
DONE2, -- Something was done, case 2
DONE3, -- Something was done, case 3
DONE4, -- Something was done, case 4
DONE5, -- Something was done, case 5
DONE6, -- Something was done, case 6
DONE7, -- Something was done, case 7
DONE8, -- Something was done, case 8
DONE, -- Something was done (any of DONE#)
FAIL1, -- The method failed, case 1
FAIL2, -- The method failed, case 2
FAIL3, -- The method failed, case 3
FAIL4, -- The method failed, case 4
FAIL5, -- The method failed, case 5
FAIL6, -- The method failed, case 6
FAIL7, -- The method failed, case 7
FAIL8, -- The method failed, case 8
FAIL -- The mathod failed (any of FAIL# occured)
end Status;
enumeration Parametrisation is
---Purpose: Defines kind of global parametrisation on the composite surface
Natural, -- each patch of the 1st row and column adds its range, Ui+1 = Ui + URange(i,1), etc.
Uniform, -- each patch gives range 1.: Ui = i-1, Vj = j-1
Unitary -- uniform parametrisation with global range [0,1]
end Parametrisation;
deferred class ComplexCurve;
class CompositeSurface;
---Purpose: Defines surface composed of grid of connected patches
class WireData;
---Purpose: Defines data structure for work on a wire as a list of edges
class BasicMsgRegistrator;
---Purpose: Abstract class to send messages to the objects
class MsgRegistrator;
---Purpose: Collects messages to be attached messages to the objects
class Explorer;
---Purpose: Exploring of shapes (compounds)
class DataMapOfShapeListOfMsg instantiates DataMap from TCollection
(Shape from TopoDS,
ListOfMsg from Message,
ShapeMapHasher from TopTools);
class DataMapOfTransientListOfMsg instantiates DataMap from TCollection
(Transient,
ListOfMsg from Message,
MapTransientHasher from TColStd);
Init;
---Purpose: Inits using of ShapeExtend.
-- Currently, loads messages output by ShapeHealing algorithms.
EncodeStatus ( status: Status from ShapeExtend ) returns Integer;
---Purpose: Encodes status (enumeration) to a bit flag
DecodeStatus ( flag: Integer; status: Status from ShapeExtend ) returns Boolean;
---Purpose: Tells if a bit flag contains bit corresponding to enumerated status
end ShapeExtend;