1 -- Created on: 1998-06-03
2 -- Created by: data exchange team
3 -- Copyright (c) 1998-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
25 ---Purpose: This package provides tools
26 -- for splitting and converting shapes by some criteria. It
27 -- provides modifications of the kind when one topological
28 -- object can be converted or splitted to several ones. In
29 -- particular this package contains high level API classes which perform:
30 -- converting geometry of shapes up to given continuity,
31 -- splitting revolutions by U to segments less than given value,
32 -- converting to beziers,
33 -- splitting closed faces.
58 --- Instanciation of generic classes (tools)
64 class ClosedEdgeDivide;
70 class ClosedFaceDivide;
74 class ShapeDivideArea;
76 class ShapeDivideContinuity;
77 ---Purpose: API Tool for converting shapes with C0 geometry into C1 ones
79 class ShapeDivideAngle;
80 ---Purpose: API Class for splitting revolutions to segments less than 90
82 class ShapeConvertToBezier;
83 ---Purpose: API Class for convering curves to beziers.
85 class ShapeDivideClosed;
88 class ShapeDivideClosedEdges;
93 class SplitCurve2dContinuity;
94 class ConvertCurve2dToBezier;
96 class SplitCurve3dContinuity;
97 class ConvertCurve3dToBezier;
100 class SplitSurfaceContinuity;
101 class SplitSurfaceAngle;
102 class ConvertSurfaceToBezierBasis;
103 class SplitSurfaceArea;
106 ---Purpose: Provides access to a sewing algorithms from BRepOffsetAPI
107 class FixSmallCurves;
109 class FixSmallBezierCurves;
112 class RemoveLocations;
113 ---Purpose: Removes all locations sub-shapes of specified shape
115 class RemoveInternalWires;
116 ---Purpose: Removes all internal wires having area less than specified min area
118 class UnifySameDomain;
119 ---Purpose: Unifies same domain faces and edges of specified shape
121 C0BSplineToSequenceOfC1BSplineCurve (BS : BSplineCurve from Geom;
122 seqBS: out HSequenceOfBoundedCurve from TColGeom)
125 C0BSplineToSequenceOfC1BSplineCurve (BS : BSplineCurve from Geom2d;
126 seqBS: out HSequenceOfBoundedCurve from TColGeom2d)
128 --- Purpose: Converts C0 B-Spline curve into sequence of C1 B-Spline curves.
129 -- This method splits B-Spline at the knots with multiplicities
130 -- equal to degree, i.e. unlike method
131 -- GeomConvert::C0BSplineToArrayOfC1BSplineCurve this one does not
132 -- use any tolerance and therefore does not change the geometry of
134 -- Returns True if C0 B-Spline was successfully splitted, else
135 -- returns False (if BS is C1 B-Spline).