0024023: Revamp the OCCT Handle -- ambiguity
[occt.git] / src / AppParCurves / AppParCurves_MultiPoint.cdl
CommitLineData
b311480e 1-- Created on: 1991-12-02
2-- Created by: Laurent PAINNOT
3-- Copyright (c) 1991-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
17class MultiPoint from AppParCurves
18 ---Purpose: This class describes Points composing a MultiPoint.
19 -- These points can be 2D or 3D. The user must first give the
20 -- 3D Points and then the 2D Points.
21 -- They are Poles of a Bezier Curve.
22 -- This class is used either to define data input or
23 -- results when performing the approximation of several lines in parallel.
24
25
26uses Pnt from gp,
27 Pnt2d from gp,
28 Vec from gp,
29 Vec2d from gp,
30 Array1OfPnt from TColgp,
31 Array1OfPnt2d from TColgp,
32 HArray1OfPnt from TColgp,
33 HArray1OfPnt2d from TColgp,
34 OStream from Standard,
35 TShared from MMgt
36
37raises OutOfRange from Standard,
38 DimensionError from Standard
39
40is
41
42 Create returns MultiPoint;
43 ---Purpose: creates an indefinite MultiPoint.
44
45
46 Create(NbPoints, NbPoints2d: Integer)
47 ---Purpose: constructs a set of Points used to approximate a
48 -- Multiline.
49 -- These Points can be of 2 or 3 dimensions.
50 -- Points will be initialized with SetPoint and SetPoint2d.
51 -- NbPoints is the number of 3D Points.
52 -- NbPoints2d is the number of 2D Points.
53
54 returns MultiPoint from AppParCurves;
55
56
57 Create(tabP: Array1OfPnt)
58 ---Purpose: creates a MultiPoint only composed of 3D points.
59
60 returns MultiPoint from AppParCurves;
61
62
63 Create(tabP2d: Array1OfPnt2d)
64 ---Purpose: creates a MultiPoint only composed of 2D points.
65
66 returns MultiPoint from AppParCurves;
67
68
69 Create(tabP: Array1OfPnt; tabP2d: Array1OfPnt2d)
70 ---Purpose: constructs a set of Points used to approximate a
71 -- Multiline.
72 -- These Points can be of 2 or 3 dimensions.
73 -- Points will be initialized with SetPoint and SetPoint2d.
74 -- NbPoints is the total number of Points.
75
76 returns MultiPoint from AppParCurves;
6da30ff1 77
78 ---C++: alias " Standard_EXPORT virtual ~AppParCurves_MultiPoint();"
7fd59977 79
80 SetPoint(me: in out; Index: Integer; Point: Pnt)
81 ---Purpose: the 3d Point of range Index of this MultiPoint is
82 -- set to <Point>.
83 -- An exception is raised if Index < 0 or
84 -- Index > number of 3d Points.
85
86 raises OutOfRange from Standard
87 is static;
88
89
90
91 Point(me; Index: Integer)
92 ---Purpose: returns the 3d Point of range Index.
93 -- An exception is raised if Index < 0 or
94 -- Index < number of 3d Points.
95 ---C++: return const&
96
97 returns Pnt from gp
98 raises OutOfRange from Standard
99 is static;
100
101
102 SetPoint2d(me: in out; Index: Integer; Point: Pnt2d)
103 ---Purpose: The 2d Point of range Index is set to <Point>.
104 -- An exception is raised if Index > 3d Points or
105 -- Index > total number of Points.
106
107 raises OutOfRange from Standard,
108 DimensionError from Standard
109 is static;
110
111
112 Point2d(me; Index: Integer)
113 ---Purpose: returns the 2d Point of range Index.
114 -- An exception is raised if index <= number of
115 -- 3d Points or Index > total number of Points.
116 ---C++: return const&
117
118 returns Pnt2d from gp
119 raises OutOfRange from Standard
120 is static;
121
122
123
124 Dimension(me; Index: Integer)
125 ---Purpose: returns the dimension of the point of range Index.
126 -- An exception is raised if Index <0 or Index > NbCurves.
127 ---C++: inline
128
129 returns Integer
130 raises OutOfRange from Standard
131 is static;
132
133
134 NbPoints(me)
135 ---Purpose: returns the number of points of dimension 3D.
136 ---C++: inline
137
138 returns Integer
139 is static;
140
141
142 NbPoints2d(me)
143 ---Purpose: returns the number of points of dimension 2D.
144 ---C++: inline
145
146 returns Integer
147 is static;
148
149
150 Transform(me: in out; CuIndex: Integer; x, dx, y, dy, z, dz: Real)
151 ---Purpose: Applies a transformation to the curve of range
152 -- <CuIndex>.
153 -- newx = x + dx*oldx
154 -- newy = y + dy*oldy for all points of the curve.
155 -- newz = z + dz*oldz
156
157 raises OutOfRange from Standard
158 is static;
159
160
161 Transform2d(me: in out; CuIndex: Integer; x, dx, y, dy: Real)
162 ---Purpose: Applies a transformation to the Curve of range
163 -- <CuIndex>.
164 -- newx = x + dx*oldx
165 -- newy = y + dy*oldy for all points of the curve.
166
167 raises OutOfRange from Standard
168 is static;
169
170
171 Dump(me; o: in out OStream)
172 ---Purpose: Prints on the stream o information on the current
173 -- state of the object.
174 -- Is used to redefine the operator <<.
175 is virtual;
176
177fields
178
179ttabPoint : TShared from MMgt is protected;
180ttabPoint2d: TShared from MMgt is protected;
181nbP : Integer is protected;
182nbP2d : Integer is protected;
183
184end MultiPoint;
185