Version: 8.3.0
Main Page
Namespaces
Classes
Files
File List
File Members
SALOME Geometry Developer
Namespaces
Classes
Files
File List
idl
src
AdvancedEngine
AdvancedGUI
ARCHIMEDE
BasicGUI
BlockFix
BlocksGUI
BooleanGUI
BREPPlugin
BuildGUI
CurveCreator
DependencyTree
DisplayGUI
DlgRef
EntityGUI
GenerationGUI
GEOM
GEOM_I
GEOM_I_Superv
GEOM_SWIG_WITHIHM
GEOMAlgo
GEOMBase
GEOMClient
GEOMFiltersSelection
GEOMGUI
GEOMImpl
GEOM_GEOMImpl.hxx
GEOMImpl_3DSketcherDriver.cxx
GEOMImpl_3DSketcherDriver.hxx
GEOMImpl_ArcDriver.cxx
GEOMImpl_ArcDriver.hxx
GEOMImpl_ArchimedeDriver.cxx
GEOMImpl_ArchimedeDriver.hxx
GEOMImpl_Block6Explorer.cxx
GEOMImpl_Block6Explorer.hxx
GEOMImpl_BlockDriver.cxx
GEOMImpl_BlockDriver.hxx
GEOMImpl_BooleanDriver.cxx
GEOMImpl_BooleanDriver.hxx
GEOMImpl_BoxDriver.cxx
GEOMImpl_BoxDriver.hxx
GEOMImpl_ChamferDriver.cxx
GEOMImpl_ChamferDriver.hxx
GEOMImpl_CircleDriver.cxx
GEOMImpl_CircleDriver.hxx
GEOMImpl_ConeDriver.cxx
GEOMImpl_ConeDriver.hxx
GEOMImpl_CopyDriver.cxx
GEOMImpl_CopyDriver.hxx
GEOMImpl_CylinderDriver.cxx
GEOMImpl_CylinderDriver.hxx
GEOMImpl_DiskDriver.cxx
GEOMImpl_DiskDriver.hxx
GEOMImpl_EllipseDriver.cxx
GEOMImpl_EllipseDriver.hxx
GEOMImpl_ExportDriver.cxx
GEOMImpl_ExportDriver.hxx
GEOMImpl_FaceDriver.cxx
GEOMImpl_FaceDriver.hxx
GEOMImpl_FieldDriver.cxx
GEOMImpl_FieldDriver.hxx
GEOMImpl_Fillet1d.cxx
GEOMImpl_Fillet1d.hxx
GEOMImpl_Fillet1dDriver.cxx
GEOMImpl_Fillet1dDriver.hxx
GEOMImpl_Fillet2dDriver.cxx
GEOMImpl_Fillet2dDriver.hxx
GEOMImpl_FilletDriver.cxx
GEOMImpl_FilletDriver.hxx
GEOMImpl_FillingDriver.cxx
GEOMImpl_FillingDriver.hxx
GEOMImpl_Gen.cxx
GEOMImpl_Gen.hxx
GEOMImpl_GlueDriver.cxx
GEOMImpl_GlueDriver.hxx
GEOMImpl_HealingDriver.cxx
GEOMImpl_HealingDriver.hxx
GEOMImpl_I3DPrimOperations.cxx
GEOMImpl_I3DPrimOperations.hxx
GEOMImpl_I3DSketcher.hxx
GEOMImpl_IArc.hxx
GEOMImpl_IArchimede.hxx
GEOMImpl_IBaseIEOperations.cxx
GEOMImpl_IBaseIEOperations.hxx
GEOMImpl_IBasicOperations.cxx
GEOMImpl_IBasicOperations.hxx
GEOMImpl_IBlocks.hxx
GEOMImpl_IBlocksOperations.cxx
GEOMImpl_IBlocksOperations.hxx
GEOMImpl_IBlockTrsf.hxx
GEOMImpl_IBoolean.hxx
GEOMImpl_IBooleanOperations.cxx
GEOMImpl_IBooleanOperations.hxx
GEOMImpl_IBox.hxx
GEOMImpl_IChamfer.hxx
GEOMImpl_ICircle.hxx
GEOMImpl_ICone.hxx
GEOMImpl_ICopy.hxx
GEOMImpl_ICurveParametric.hxx
GEOMImpl_ICurvesOperations.cxx
GEOMImpl_ICurvesOperations.hxx
GEOMImpl_ICylinder.hxx
GEOMImpl_IDisk.hxx
GEOMImpl_IECallBack.cxx
GEOMImpl_IECallBack.hxx
GEOMImpl_IEllipse.hxx
GEOMImpl_IExtract.hxx
GEOMImpl_IFace.hxx
GEOMImpl_IFieldOperations.cxx
GEOMImpl_IFieldOperations.hxx
GEOMImpl_IFillet.hxx
GEOMImpl_IFillet1d.hxx
GEOMImpl_IFillet2d.hxx
GEOMImpl_IFilling.hxx
GEOMImpl_IGlue.hxx
GEOMImpl_IGroupOperations.cxx
GEOMImpl_IGroupOperations.hxx
GEOMImpl_IHealing.hxx
GEOMImpl_IHealingOperations.cxx
GEOMImpl_IHealingOperations.hxx
GEOMImpl_IImportExport.hxx
GEOMImpl_IInsertOperations.cxx
GEOMImpl_IInsertOperations.hxx
GEOMImpl_IIsoline.hxx
GEOMImpl_ILine.hxx
GEOMImpl_ILocalOperations.cxx
GEOMImpl_ILocalOperations.hxx
GEOMImpl_IMarker.hxx
GEOMImpl_IMeasure.hxx
GEOMImpl_IMeasureOperations.cxx
GEOMImpl_IMeasureOperations.hxx
GEOMImpl_IMirror.hxx
GEOMImpl_ImportDriver.cxx
GEOMImpl_ImportDriver.hxx
GEOMImpl_IOffset.hxx
GEOMImpl_IPartition.hxx
GEOMImpl_IPipe.hxx
GEOMImpl_IPipeBiNormal.hxx
GEOMImpl_IPipeDiffSect.hxx
GEOMImpl_IPipePath.hxx
GEOMImpl_IPipeShellSect.hxx
GEOMImpl_IPlane.hxx
GEOMImpl_IPoint.hxx
GEOMImpl_IPolyline.hxx
GEOMImpl_IPolyline2D.cxx
GEOMImpl_IPolyline2D.hxx
GEOMImpl_IPosition.hxx
GEOMImpl_IPrism.hxx
GEOMImpl_IProjection.hxx
GEOMImpl_IProjOnCyl.hxx
GEOMImpl_IRevolution.hxx
GEOMImpl_IRotate.hxx
GEOMImpl_IScale.hxx
GEOMImpl_IShapeExtend.hxx
GEOMImpl_IShapes.hxx
GEOMImpl_IShapesOperations.cxx
GEOMImpl_IShapesOperations.hxx
GEOMImpl_ISketcher.hxx
GEOMImpl_ISphere.hxx
GEOMImpl_ISpline.hxx
GEOMImpl_IThruSections.hxx
GEOMImpl_ITorus.hxx
GEOMImpl_ITransferData.cxx
GEOMImpl_ITransferData.hxx
GEOMImpl_ITransformOperations.cxx
GEOMImpl_ITransformOperations.hxx
GEOMImpl_ITranslate.hxx
GEOMImpl_IVector.hxx
GEOMImpl_LineDriver.cxx
GEOMImpl_LineDriver.hxx
GEOMImpl_MarkerDriver.cxx
GEOMImpl_MarkerDriver.hxx
GEOMImpl_MeasureDriver.cxx
GEOMImpl_MeasureDriver.hxx
GEOMImpl_MirrorDriver.cxx
GEOMImpl_MirrorDriver.hxx
GEOMImpl_OffsetDriver.cxx
GEOMImpl_OffsetDriver.hxx
GEOMImpl_PartitionDriver.cxx
GEOMImpl_PartitionDriver.hxx
GEOMImpl_PipeDriver.cxx
GEOMImpl_PipeDriver.hxx
GEOMImpl_PipePathDriver.cxx
GEOMImpl_PipePathDriver.hxx
GEOMImpl_PlaneDriver.cxx
GEOMImpl_PlaneDriver.hxx
GEOMImpl_PointDriver.cxx
GEOMImpl_PointDriver.hxx
GEOMImpl_PolylineDriver.cxx
GEOMImpl_PolylineDriver.hxx
GEOMImpl_PolylineDumper.cxx
GEOMImpl_PolylineDumper.hxx
GEOMImpl_PositionDriver.cxx
GEOMImpl_PositionDriver.hxx
GEOMImpl_PrismDriver.cxx
GEOMImpl_PrismDriver.hxx
GEOMImpl_ProjectionDriver.cxx
GEOMImpl_ProjectionDriver.hxx
GEOMImpl_RevolutionDriver.cxx
GEOMImpl_RevolutionDriver.hxx
GEOMImpl_RotateDriver.cxx
GEOMImpl_RotateDriver.hxx
GEOMImpl_ScaleDriver.cxx
GEOMImpl_ScaleDriver.hxx
GEOMImpl_ShapeDriver.cxx
GEOMImpl_ShapeDriver.hxx
GEOMImpl_SketcherDriver.cxx
GEOMImpl_SketcherDriver.hxx
GEOMImpl_SphereDriver.cxx
GEOMImpl_SphereDriver.hxx
GEOMImpl_SplineDriver.cxx
GEOMImpl_SplineDriver.hxx
GEOMImpl_ThruSectionsDriver.cxx
GEOMImpl_ThruSectionsDriver.hxx
GEOMImpl_TorusDriver.cxx
GEOMImpl_TorusDriver.hxx
GEOMImpl_TranslateDriver.cxx
GEOMImpl_TranslateDriver.hxx
GEOMImpl_Types.hxx
GEOMImpl_VectorDriver.cxx
GEOMImpl_VectorDriver.hxx
GEOMToolsGUI
GEOMUtils
GroupGUI
IGESPlugin
Material
MeasureGUI
OBJECT
OCC2VTK
OperationGUI
PrimitiveGUI
RepairGUI
ShapeRecognition
ShHealOper
SKETCHER
STEPPlugin
STLPlugin
TransformationGUI
VTKPlugin
XAO
XAOPlugin
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
GEOMImpl_IBasicOperations.hxx
Go to the documentation of this file.
1
// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, 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_IBasicOperations_HXX_
24
#define _GEOMImpl_IBasicOperations_HXX_
25
26
#include "Utils_SALOME_Exception.hxx"
27
#include "
GEOM_IOperations.hxx
"
28
#include "
GEOM_Engine.hxx
"
29
#include "
GEOM_Object.hxx
"
30
#include <TDocStd_Document.hxx>
31
32
class
GEOMImpl_IBasicOperations
:
public
GEOM_IOperations
{
33
public
:
34
Standard_EXPORT
GEOMImpl_IBasicOperations
(
GEOM_Engine
* theEngine,
int
theDocID);
35
Standard_EXPORT
~GEOMImpl_IBasicOperations
();
36
37
// Point
38
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointXYZ (
double
theX
,
double
theY
,
double
theZ
);
39
40
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointWithReference (
Handle
(
GEOM_Object
) theReference,
41
double
theX,
double
theY,
double
theZ);
42
43
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointOnCurve
44
(
Handle
(
GEOM_Object
) theCurve,
45
double
theParameter
,
46
bool
takeOrientationIntoAccount
);
47
48
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointOnCurveByLength (
Handle
(
GEOM_Object
) theCurve,
49
double
theLength
,
50
Handle
(
GEOM_Object
) theStartPoint);
51
52
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointOnCurveByCoord (
Handle
(
GEOM_Object
) theCurve,
53
double
theXParam
,
54
double
theYParam
,
55
double
theZParam
);
56
57
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointOnLinesIntersection
58
(
Handle
(
GEOM_Object
) theLine1,
Handle
(
GEOM_Object
) theLine2);
59
60
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointOnSurface (
Handle
(
GEOM_Object
) theSurface,
61
double
theUParameter
,
62
double
theVParameter
);
63
64
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointOnSurfaceByCoord (
Handle
(
GEOM_Object
) theSurface,
65
double
theXParam,
66
double
theYParam,
67
double
theZParam);
68
69
Standard_EXPORT
Handle
(
GEOM_Object
) MakePointOnFace (
Handle
(
GEOM_Object
) theFace);
70
71
// Vector
72
Standard_EXPORT
Handle
(
GEOM_Object
) MakeVectorDXDYDZ (
double
theDX,
double
theDY
,
double
theDZ
);
73
74
Standard_EXPORT
Handle
(
GEOM_Object
) MakeVectorTwoPnt (
Handle
(
GEOM_Object
) thePnt1,
75
Handle
(
GEOM_Object
) thePnt2);
76
77
Standard_EXPORT
Handle
(
GEOM_Object
) MakeTangentOnCurve(const
Handle
(
GEOM_Object
)& theCurve,
78
double
theParameter);
79
80
// Line
81
Standard_EXPORT
Handle
(
GEOM_Object
) MakeLineTwoPnt (
Handle
(
GEOM_Object
) thePnt1,
82
Handle
(
GEOM_Object
) thePnt2);
83
84
Standard_EXPORT
Handle
(
GEOM_Object
) MakeLineTwoFaces (
Handle
(
GEOM_Object
) theFace1,
85
Handle
(
GEOM_Object
) theFace2);
86
87
Standard_EXPORT
Handle
(
GEOM_Object
) MakeLine (
Handle
(
GEOM_Object
) thePnt,
88
Handle
(
GEOM_Object
) theDir);
89
90
// Plane
91
Standard_EXPORT
Handle
(
GEOM_Object
) MakePlaneThreePnt (
Handle
(
GEOM_Object
) thePnt1,
92
Handle
(
GEOM_Object
) thePnt2,
93
Handle
(
GEOM_Object
) thePnt3,
94
double
theSize
);
95
96
Standard_EXPORT
Handle
(
GEOM_Object
) MakePlanePntVec (
Handle
(
GEOM_Object
) thePnt,
97
Handle
(
GEOM_Object
) theVec,
98
double
theSize);
99
100
Standard_EXPORT
Handle
(
GEOM_Object
) MakePlaneFace (
Handle
(
GEOM_Object
) theFace,
double
theSize);
101
102
Standard_EXPORT
Handle
(
GEOM_Object
) MakePlane2Vec (
Handle
(
GEOM_Object
) theVec1,
103
Handle
(
GEOM_Object
) theVec2,
104
double
theSize);
105
106
Standard_EXPORT
Handle
(
GEOM_Object
) MakePlaneLCS (
Handle
(
GEOM_Object
) theFace,
double
theSize,
int
theOrientation
);
107
108
// Marker
109
Standard_EXPORT
Handle
(
GEOM_Object
) MakeMarker (
double
theOX,
double
theOY
,
double
theOZ
,
110
double
theXDX
,
double
theXDY
,
double
theXDZ
,
111
double
theYDX
,
double
theYDY
,
double
theYDZ
);
112
113
Standard_EXPORT
Handle
(
GEOM_Object
) MakeMarkerFromShape (const
Handle
(
GEOM_Object
)& theShape);
114
115
Standard_EXPORT
Handle
(
GEOM_Object
) MakeMarkerPntTwoVec (const
Handle
(
GEOM_Object
)& theOrigin,
116
const
Handle
(
GEOM_Object
)& theXVec,
117
const
Handle
(
GEOM_Object
)& theYVec);
118
119
Standard_EXPORT
Handle
(
GEOM_Object
) MakeTangentPlaneOnFace(const
Handle
(
GEOM_Object
)& theFace,
120
double
theParamU
,
121
double
theParamV
,
122
double
theSize);
123
124
private:
125
// Private methods
126
129
enum
PointLocation
130
{
131
PointOn_CurveByParam
,
132
PointOn_CurveByCoord
,
133
PointOn_CurveByLength
,
134
PointOn_SurfaceByParam
,
135
PointOn_SurfaceByCoord
,
136
PointOn_Face
137
};
138
139
Handle
(
GEOM_Object
) makePointOnGeom
140
(
Handle
(
GEOM_Object
) theGeomObj,
141
double
theParam1
,
142
double
theParam2
,
143
double
theParam3
,
144
const
PointLocation
theLocation
,
145
const
bool
takeOrientationIntoAccount
= false,
146
Handle
(
GEOM_Object
) theRefPoint = 0);
147
};
148
149
#endif
src
GEOMImpl
GEOMImpl_IBasicOperations.hxx
Copyright © 2007-2017 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS