1 -- Created on: 2002-11-13
2 -- Created by: Galina KULIKOVA
3 -- Copyright (c) 2002-2012 OPEN CASCADE SAS
5 -- The content of this file is subject to the Open CASCADE Technology Public
6 -- License Version 6.5 (the "License"). You may not use the content of this file
7 -- except in compliance with the License. Please obtain a copy of the License
8 -- at http://www.opencascade.org and read it completely before using this file.
10 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
11 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 -- The Original Code and all software distributed under the License is
14 -- distributed on an "AS IS" basis, without warranty of any kind, and the
15 -- Initial Developer hereby disclaims all such warranties, including without
16 -- limitation, any warranties of merchantability, fitness for a particular
17 -- purpose or non-infringement. Please see the License for the specific terms
18 -- and conditions governing the rights and limitations under the License.
22 class RemoveLocations from ShapeUpgrade inherits TShared from MMgt
24 ---Purpose: Removes all locations sub-shapes of specified shape
27 ShapeEnum from TopAbs,
29 MapOfShape from TopTools,
30 DataMapOfShapeShape from TopTools
32 Create returns RemoveLocations from ShapeUpgrade;
33 ---Purpose:Empy constructor
35 Remove(me : mutable;theShape : Shape from TopoDS) returns Boolean;
36 ---Purpose:Removes all location correspodingly to RemoveLevel.
38 MakeNewShape(me : mutable;theShape , theAncShape: Shape from TopoDS;
39 theNewShape:in out Shape from TopoDS;theRemoveLoc : Boolean)
40 returns Boolean is private;
42 GetResult(me) returns Shape from TopoDS;
43 ---Purpose:Returns shape with removed locatins.
46 SetRemoveLevel(me: mutable; theLevel : ShapeEnum from TopAbs);
47 ---Purpose:sets level starting with that location will be removed,
48 -- by default TopAbs_SHAPE. In this case locations will be kept for specified shape
49 -- and if specified shape is TopAbs_COMPOUND for sub-shapes of first level.
52 RemoveLevel(me) returns ShapeEnum from TopAbs;
53 ---Purpose:sets level starting with that location will be removed.Value of level can be set to
54 -- TopAbs_SHAPE,TopAbs_COMPOUND,TopAbs_SOLID,TopAbs_SHELL,TopAbs_FACE.By default TopAbs_SHAPE.
55 -- In this case location will be removed for all shape types for exception of compound.
59 ModifiedShape (me; theInitShape : Shape from TopoDS) returns Shape from TopoDS;
60 ---Purpose: Returns modified shape obtained from initial shape.
64 myLevelRemoving : ShapeEnum from TopAbs;
65 myShape : Shape from TopoDS;
66 myMapNewShapes : DataMapOfShapeShape from TopTools;