b311480e |
1 | -- Created on: 1999-05-21 |
2 | -- Created by: Pavel DURANDIN |
3 | -- Copyright (c) 1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
d5f74e42 |
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 |
973c2be1 |
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. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
17 | class ConvertSurfaceToBezierBasis from ShapeUpgrade inherits SplitSurface from ShapeUpgrade |
18 | |
19 | ---Purpose: Converts a plane, bspline surface, surface of revolution, surface |
20 | -- of extrusion, offset surface to grid of bezier basis surface ( |
21 | -- bezier surface, |
22 | -- surface of revolution based on bezier curve, |
23 | -- offset surface based on any previous type). |
24 | |
25 | uses |
26 | |
27 | CompositeSurface from ShapeExtend |
28 | |
29 | is |
30 | |
6e33d3ce |
31 | Create returns ConvertSurfaceToBezierBasis from ShapeUpgrade; |
7fd59977 |
32 | ---Purpose: Empty constructor. |
33 | |
34 | Build (me: mutable; Segment: Boolean) is redefined; |
35 | ---Purpose: Splits a list of beziers computed by Compute method according |
36 | -- the split values and splitting parameters. |
37 | |
38 | Compute(me: mutable; Segment: Boolean) is redefined; |
39 | ---Purpose: Converts surface into a grid of bezier based surfaces, and |
40 | -- stores this grid. |
41 | |
42 | Segments(me) returns CompositeSurface from ShapeExtend; |
43 | ---Purpose: Returns the grid of bezier based surfaces correspondent to |
44 | -- original surface. |
45 | |
46 | --Methods for handling surface modes |
47 | |
48 | SetPlaneMode(me: mutable; mode: Boolean); |
49 | ---Purpose: Sets mode for conversion Geom_Plane to Bezier |
50 | ---C++: inline |
51 | |
52 | GetPlaneMode(me) returns Boolean; |
53 | ---Purpose: Returns the Geom_Pline conversion mode. |
54 | ---C++: inline |
55 | |
56 | SetRevolutionMode(me: mutable; mode: Boolean); |
57 | ---Purpose: Sets mode for conversion Geom_SurfaceOfRevolution to Bezier |
58 | ---C++: inline |
59 | |
60 | GetRevolutionMode(me) returns Boolean; |
61 | ---Purpose: Returns the Geom_SurfaceOfRevolution conversion mode. |
62 | ---C++: inline |
63 | |
64 | SetExtrusionMode(me: mutable; mode: Boolean); |
65 | ---Purpose: Sets mode for conversion Geom_SurfaceOfLinearExtrusion to Bezier |
66 | ---C++: inline |
67 | |
68 | GetExtrusionMode(me) returns Boolean; |
69 | ---Purpose: Returns the Geom_SurfaceOfLinearExtrusion conversion mode. |
70 | ---C++: inline |
71 | |
72 | SetBSplineMode(me: mutable; mode: Boolean); |
73 | ---Purpose: Sets mode for conversion Geom_BSplineSurface to Bezier |
74 | ---C++: inline |
75 | |
76 | GetBSplineMode(me) returns Boolean; |
77 | ---Purpose: Returns the Geom_BSplineSurface conversion mode. |
78 | ---C++: inline |
79 | |
80 | fields |
81 | |
82 | mySegments : CompositeSurface from ShapeExtend; |
83 | myPlaneMode : Boolean; |
84 | myRevolutionMode: Boolean; |
85 | myExtrusionMode : Boolean; |
86 | myBSplineMode : Boolean; |
87 | |
88 | end ConvertSurfaceToBezierBasis; |