Version: 9.12.0
GEOMImpl_ITransformOperations.hxx
Go to the documentation of this file.
1 // Copyright (C) 2007-2023 CEA, EDF, OPEN CASCADE
2 //
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 //
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License, or (at your option) any later version.
10 //
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
15 //
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 //
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 //
22 
23 #ifndef _GEOMImpl_ITransformOperations_HXX_
24 #define _GEOMImpl_ITransformOperations_HXX_
25 
26 #include "Utils_SALOME_Exception.hxx"
27 #include "GEOM_IOperations.hxx"
28 #include "GEOM_Engine.hxx"
29 #include "GEOM_Object.hxx"
30 
31 #include <TDocStd_Document.hxx>
32 #include <TopoDS_Shape.hxx>
33 
35 class GEOMImpl_IRotate;
36 
38 {
39  public:
40  Standard_EXPORT GEOMImpl_ITransformOperations(GEOM_Engine* theEngine);
41  Standard_EXPORT ~GEOMImpl_ITransformOperations();
42 
43  Standard_EXPORT Handle(GEOM_Object) TranslateTwoPoints (Handle(GEOM_Object) theObject,
44  Handle(GEOM_Object) thePoint1,
45  Handle(GEOM_Object) thePoint2);
46 
47  Standard_EXPORT Handle(GEOM_Object) TranslateTwoPointsCopy (Handle(GEOM_Object) theObject,
48  Handle(GEOM_Object) thePoint1,
49  Handle(GEOM_Object) thePoint2);
50 
51  Standard_EXPORT Handle(GEOM_Object) TranslateDXDYDZ (Handle(GEOM_Object) theObject,
52  double theX, double theY, double theZ);
53 
54  Standard_EXPORT Handle(GEOM_Object) TranslateDXDYDZCopy (Handle(GEOM_Object) theObject,
55  double theX, double theY, double theZ);
56 
57  Standard_EXPORT Handle(GEOM_Object) TranslateVector (Handle(GEOM_Object) theObject,
58  Handle(GEOM_Object) theVector);
59 
60  Standard_EXPORT Handle(GEOM_Object) TranslateVectorCopy (Handle(GEOM_Object) theObject,
61  Handle(GEOM_Object) theVector);
62 
63  Standard_EXPORT Handle(GEOM_Object) TranslateVectorDistance (Handle(GEOM_Object) theObject,
64  Handle(GEOM_Object) theVector,
65  double theDistance,
66  bool theCopy);
67 
68  Standard_EXPORT Handle(GEOM_Object) Translate1D (Handle(GEOM_Object) theObject,
69  Handle(GEOM_Object) theVector,
70  double theStep,
71  Standard_Integer theNbTimes);
72 
73  Standard_EXPORT Handle(GEOM_Object) Translate2D (Handle(GEOM_Object) theObject,
74  Handle(GEOM_Object) theVector,
75  double theStep1,
76  Standard_Integer theNbTimes1,
77  Handle(GEOM_Object) theVector2,
78  double theStep2,
79  Standard_Integer theNbTimes2);
80 
81  /*
82  Standard_EXPORT static TopoDS_Shape TranslateShape1D (const TopoDS_Shape& theShape,
83  GEOMImpl_ITranslate* theTI);
84 
85  Standard_EXPORT static TopoDS_Shape TranslateShape2D (const TopoDS_Shape& theShape,
86  GEOMImpl_ITranslate* theTI);
87  */
88 
89  Standard_EXPORT Handle(GEOM_Object) MirrorPlane (Handle(GEOM_Object) theObject,
90  Handle(GEOM_Object) thePlane);
91 
92  Standard_EXPORT Handle(GEOM_Object) MirrorPlaneCopy (Handle(GEOM_Object) theObject,
93  Handle(GEOM_Object) thePlane);
94 
95  Standard_EXPORT Handle(GEOM_Object) MirrorAxis (Handle(GEOM_Object) theObject,
96  Handle(GEOM_Object) theAxis);
97 
98  Standard_EXPORT Handle(GEOM_Object) MirrorAxisCopy (Handle(GEOM_Object) theObject,
99  Handle(GEOM_Object) theAxis);
100 
101  Standard_EXPORT Handle(GEOM_Object) MirrorPoint (Handle(GEOM_Object) theObject,
102  Handle(GEOM_Object) thePoint);
103 
104  Standard_EXPORT Handle(GEOM_Object) MirrorPointCopy (Handle(GEOM_Object) theObject,
105  Handle(GEOM_Object) thePoint);
106 
107  Standard_EXPORT Handle(GEOM_Object) OffsetShape (Handle(GEOM_Object) theObject,
108  double theOffset,
110 
111  Standard_EXPORT Handle(GEOM_Object) OffsetShapeCopy (Handle(GEOM_Object) theObject,
112  double theOffset,
113  bool theJoinByPipes);
114 
115  Standard_EXPORT Handle(GEOM_Object) ProjectShapeCopy (Handle(GEOM_Object) theSource,
116  Handle(GEOM_Object) theTarget);
117 
118  Standard_EXPORT Standard_Real ProjectPointOnWire
119  (Handle(GEOM_Object) thePoint,
120  Handle(GEOM_Object) theWire,
121  Handle(GEOM_Object) &thePointOnEdge,
122  Standard_Integer &theEdgeInWireIndex);
123 
124  Standard_EXPORT Handle(GEOM_Object) ScaleShape (Handle(GEOM_Object) theObject,
125  Handle(GEOM_Object) thePoint,
126  double theFactor);
127 
128  Standard_EXPORT Handle(GEOM_Object) ScaleShapeCopy (Handle(GEOM_Object) theObject,
129  Handle(GEOM_Object) thePoint,
130  double theFactor);
131 
132  Standard_EXPORT Handle(GEOM_Object) ScaleShapeAlongAxes (Handle(GEOM_Object) theObject,
133  Handle(GEOM_Object) thePoint,
134  double theFactorX,
135  double theFactorY,
136  double theFactorZ,
137  bool doCopy);
138 
139  Standard_EXPORT Handle(GEOM_Object) PositionShape (Handle(GEOM_Object) theObject,
140  Handle(GEOM_Object) theStartLCS,
141  Handle(GEOM_Object) theEndLCS);
142 
143  Standard_EXPORT Handle(GEOM_Object) PositionShapeCopy (Handle(GEOM_Object) theObject,
144  Handle(GEOM_Object) theStartLCS,
145  Handle(GEOM_Object) theEndLCS);
146 
147  Standard_EXPORT Handle(GEOM_Object) PositionAlongPath (Handle(GEOM_Object) theObject,
148  Handle(GEOM_Object) thePath,
149  double theDistance,
150  bool theCopy,
151  bool theReverse);
152 
153  Standard_EXPORT Handle(GEOM_Object) Rotate (Handle(GEOM_Object) theObject,
154  Handle(GEOM_Object) theAxis,
155  double theAngle);
156 
157  Standard_EXPORT Handle(GEOM_Object) RotateCopy (Handle(GEOM_Object) theObject,
158  Handle(GEOM_Object) theAxis,
159  double theAngle);
160 
161  Standard_EXPORT Handle(GEOM_Object) Rotate1D (Handle(GEOM_Object) theObject,
162  Handle(GEOM_Object) theAxis,
163  Standard_Integer theNbTimes);
164 
165  Standard_EXPORT Handle(GEOM_Object) Rotate1D (Handle(GEOM_Object) theObject,
166  Handle(GEOM_Object) theAxis,
167  double theAngleStep,
168  Standard_Integer theNbSteps);
169 
170  Standard_EXPORT Handle(GEOM_Object) Rotate2D (Handle(GEOM_Object) theObject,
171  Handle(GEOM_Object) theAxis,
172  Standard_Integer theNbObjects,
174  Standard_Integer theNbSteps);
175 
176  Standard_EXPORT Handle(GEOM_Object) Rotate2D (Handle(GEOM_Object) theObject,
177  Handle(GEOM_Object) theAxis,
178  double theAngle,
179  Standard_Integer theNbTimes1,
180  double theStep,
181  Standard_Integer theNbTimes2);
182 
183  Standard_EXPORT Handle(GEOM_Object) RotateThreePoints (Handle(GEOM_Object) theObject,
184  Handle(GEOM_Object) theCentPoint,
185  Handle(GEOM_Object) thePoint1,
186  Handle(GEOM_Object) thePoint2);
187 
188  Standard_EXPORT Handle(GEOM_Object) RotateThreePointsCopy (Handle(GEOM_Object) theObject,
189  Handle(GEOM_Object) theCentPoint,
190  Handle(GEOM_Object) thePoint1,
191  Handle(GEOM_Object) thePoint2);
192 
193  Standard_EXPORT Handle(GEOM_Object) TransformLikeOtherCopy (Handle(GEOM_Object) theObject,
194  Handle(GEOM_Object) theSample);
195 
196  Standard_EXPORT Handle(GEOM_Object) MakeProjectionOnCylinder
197  (const Handle(GEOM_Object) &theObject,
198  const Standard_Real theRadius,
199  const Standard_Real theStartAngle,
200  const Standard_Real theAngleLength,
201  const Standard_Real theAngleRotation);
202 
203 };
204 
205 #endif
Definition: GEOMImpl_IRotate.hxx:43
Definition: GEOMImpl_ITransformOperations.hxx:38
Standard_EXPORT double bool bool theReverse
Definition: GEOMImpl_ITransformOperations.hxx:151
Standard_EXPORT Standard_Integer double theRadialStep
Definition: GEOMImpl_ITransformOperations.hxx:173
Standard_EXPORT const Standard_Real const Standard_Real const Standard_Real const Standard_Real theAngleRotation
Definition: GEOMImpl_ITransformOperations.hxx:201
Standard_EXPORT double Standard_Integer theNbTimes
Definition: GEOMImpl_ITransformOperations.hxx:71
Standard_EXPORT Handle(GEOM_Object) MakeProjectionOnCylinder(const Handle(GEOM_Object) &theObject
Standard_EXPORT double Standard_Integer Handle(GEOM_Object) theVector2
Standard_EXPORT double theFactorX
Definition: GEOMImpl_ITransformOperations.hxx:134
Standard_EXPORT Handle(GEOM_Object) TranslateDXDYDZCopy(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) MirrorAxisCopy(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) theEndLCS)
Standard_EXPORT Handle(GEOM_Object) theVector)
Standard_EXPORT Handle(GEOM_Object) thePoint1
Standard_EXPORT Handle(GEOM_Object) theSample)
Standard_EXPORT Handle(GEOM_Object) thePath
Standard_EXPORT Handle(GEOM_Object) thePoint
Standard_EXPORT Handle(GEOM_Object) PositionAlongPath(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) TranslateTwoPoints(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) theAxis
Standard_EXPORT double theFactor
Definition: GEOMImpl_ITransformOperations.hxx:126
Standard_EXPORT Handle(GEOM_Object) TransformLikeOtherCopy(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) thePoint2)
Standard_EXPORT Handle(GEOM_Object) MirrorAxis(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) theTarget)
Standard_EXPORT Handle(GEOM_Object) theStartLCS
Standard_EXPORT double bool theJoinByPipes
Definition: GEOMImpl_ITransformOperations.hxx:109
Standard_EXPORT Handle(GEOM_Object) OffsetShape(Handle(GEOM_Object) theObject
Standard_EXPORT Standard_Real ProjectPointOnWire(Handle(GEOM_Object) thePoint, Handle(GEOM_Object) theWire, Handle(GEOM_Object) &thePointOnEdge, Standard_Integer &theEdgeInWireIndex)
Definition: GEOMImpl_ITransformOperations.cxx:1223
Standard_EXPORT Handle(GEOM_Object) Translate2D(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) thePoint)
Standard_EXPORT Handle(GEOM_Object) ScaleShape(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) TranslateVector(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) TranslateVectorDistance(Handle(GEOM_Object) theObject
Standard_EXPORT double theAngle
Definition: GEOMImpl_ITransformOperations.hxx:155
Standard_EXPORT const Standard_Real const Standard_Real const Standard_Real theAngleLength
Definition: GEOMImpl_ITransformOperations.hxx:200
Standard_EXPORT double Standard_Integer double theStep2
Definition: GEOMImpl_ITransformOperations.hxx:78
Standard_EXPORT Handle(GEOM_Object) TranslateVectorCopy(Handle(GEOM_Object) theObject
Standard_EXPORT double bool theCopy
Definition: GEOMImpl_ITransformOperations.hxx:66
Standard_EXPORT GEOMImpl_ITransformOperations(GEOM_Engine *theEngine)
Definition: GEOMImpl_ITransformOperations.cxx:77
Standard_EXPORT double double theFactorY
Definition: GEOMImpl_ITransformOperations.hxx:135
Standard_EXPORT double theDistance
Definition: GEOMImpl_ITransformOperations.hxx:65
Standard_EXPORT Handle(GEOM_Object) RotateThreePoints(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) PositionShapeCopy(Handle(GEOM_Object) theObject
Standard_EXPORT Standard_Integer theNbObjects
Definition: GEOMImpl_ITransformOperations.hxx:172
Standard_EXPORT Handle(GEOM_Object) ProjectShapeCopy(Handle(GEOM_Object) theSource
Standard_EXPORT double theAngleStep
Definition: GEOMImpl_ITransformOperations.hxx:167
Standard_EXPORT double theStep1
Definition: GEOMImpl_ITransformOperations.hxx:75
Standard_EXPORT Handle(GEOM_Object) theVector
Standard_EXPORT double theStep
Definition: GEOMImpl_ITransformOperations.hxx:70
Standard_EXPORT Handle(GEOM_Object) ScaleShapeAlongAxes(Handle(GEOM_Object) theObject
Standard_EXPORT double double theY
Definition: GEOMImpl_ITransformOperations.hxx:52
Standard_EXPORT Handle(GEOM_Object) PositionShape(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) MirrorPointCopy(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) MirrorPlaneCopy(Handle(GEOM_Object) theObject
Standard_EXPORT double theOffset
Definition: GEOMImpl_ITransformOperations.hxx:108
Standard_EXPORT Handle(GEOM_Object) MirrorPoint(Handle(GEOM_Object) theObject
Standard_EXPORT double theX
Definition: GEOMImpl_ITransformOperations.hxx:52
Standard_EXPORT double double double theFactorZ
Definition: GEOMImpl_ITransformOperations.hxx:136
Standard_EXPORT Handle(GEOM_Object) MirrorPlane(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) TranslateTwoPointsCopy(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) Rotate1D(Handle(GEOM_Object) theObject
Standard_EXPORT double Standard_Integer theNbSteps
Definition: GEOMImpl_ITransformOperations.hxx:168
Standard_EXPORT Handle(GEOM_Object) OffsetShapeCopy(Handle(GEOM_Object) theObject
Standard_EXPORT const Standard_Real theRadius
Definition: GEOMImpl_ITransformOperations.hxx:198
Standard_EXPORT double Standard_Integer theNbTimes1
Definition: GEOMImpl_ITransformOperations.hxx:76
Standard_EXPORT Handle(GEOM_Object) RotateThreePointsCopy(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) Translate1D(Handle(GEOM_Object) theObject
Standard_EXPORT double Standard_Integer double Standard_Integer theNbTimes2
Definition: GEOMImpl_ITransformOperations.hxx:79
Standard_EXPORT Handle(GEOM_Object) ScaleShapeCopy(Handle(GEOM_Object) theObject
Standard_EXPORT double double double theZ
Definition: GEOMImpl_ITransformOperations.hxx:52
Standard_EXPORT Handle(GEOM_Object) Rotate(Handle(GEOM_Object) theObject
Standard_EXPORT ~GEOMImpl_ITransformOperations()
Definition: GEOMImpl_ITransformOperations.cxx:89
Standard_EXPORT Handle(GEOM_Object) theAxis)
Standard_EXPORT Handle(GEOM_Object) thePlane)
Standard_EXPORT Handle(GEOM_Object) TranslateDXDYDZ(Handle(GEOM_Object) theObject
Standard_EXPORT const Standard_Real const Standard_Real theStartAngle
Definition: GEOMImpl_ITransformOperations.hxx:199
Standard_EXPORT Handle(GEOM_Object) theCentPoint
Standard_EXPORT double double double bool doCopy
Definition: GEOMImpl_ITransformOperations.hxx:137
Standard_EXPORT Handle(GEOM_Object) Rotate2D(Handle(GEOM_Object) theObject
Standard_EXPORT Handle(GEOM_Object) RotateCopy(Handle(GEOM_Object) theObject
Definition: GEOMImpl_ITranslate.hxx:42
Definition: GEOM_Engine.hxx:91
Definition: GEOM_IOperations.hxx:40