Version: 8.3.0
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
GEOMImpl_IPoint.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
//NOTE: This is an interface to a function for the point creation.
24
25
#include "
GEOM_Function.hxx
"
26
27
#define ARG_X 1
28
#define ARG_Y 2
29
#define ARG_Z 3
30
31
#define ARG_REF 4
32
33
#define ARG_PARAM 5
34
#define ARG_CURVE 6
35
#define ARG_LINE1 7
36
#define ARG_LINE2 8
37
38
#define ARG_SURFACE 9
39
#define ARG_PARAM2 10
40
41
#define ARG_LENGTH 11
42
43
#define ARG_USE_ORIENTATION 12
44
45
class
GEOMImpl_IPoint
46
{
47
public
:
48
49
GEOMImpl_IPoint
(
Handle
(
GEOM_Function
) theFunction): _func(theFunction) {}
50
51
void
SetX
(
double
theX) { _func->SetReal(
ARG_X
, theX); }
52
void
SetY
(
double
theY) { _func->SetReal(
ARG_Y
, theY); }
53
void
SetZ
(
double
theZ) { _func->SetReal(
ARG_Z
, theZ); }
54
55
double
GetX
() {
return
_func->GetReal(
ARG_X
); }
56
double
GetY
() {
return
_func->GetReal(
ARG_Y
); }
57
double
GetZ
() {
return
_func->GetReal(
ARG_Z
); }
58
59
void
SetRef
(
Handle
(
GEOM_Function
) theRefPoint) { _func->SetReference(
ARG_REF
, theRefPoint); }
60
61
Handle
(
GEOM_Function
) GetRef() {
return
_func->GetReference(
ARG_REF
); }
62
63
void
SetCurve
(
Handle
(
GEOM_Function
) theRef) { _func->SetReference(
ARG_CURVE
, theRef); }
64
void
SetSurface
(
Handle
(
GEOM_Function
) theRef) { _func->SetReference(
ARG_SURFACE
, theRef); }
65
void
SetLine1
(
Handle
(
GEOM_Function
) theRef) { _func->SetReference(
ARG_LINE1
, theRef); }
66
void
SetLine2
(
Handle
(
GEOM_Function
) theRef) { _func->SetReference(
ARG_LINE2
, theRef); }
67
68
Handle
(
GEOM_Function
) GetCurve() {
return
_func->GetReference(
ARG_CURVE
); }
69
Handle
(
GEOM_Function
) GetSurface() {
return
_func->GetReference(
ARG_SURFACE
); }
70
Handle
(
GEOM_Function
) GetLine1() {
return
_func->GetReference(
ARG_LINE1
); }
71
Handle
(
GEOM_Function
) GetLine2() {
return
_func->GetReference(
ARG_LINE2
); }
72
73
void
SetParameter
(
double
theParam) { _func->SetReal(
ARG_PARAM
, theParam); }
74
void
SetParameter2
(
double
theParam) { _func->SetReal(
ARG_PARAM2
, theParam); }
75
void
SetLength
(
double
theLength) { _func->SetReal(
ARG_LENGTH
, theLength); }
76
void
SetTakeOrientationIntoAccount
(
bool
takeOrientationIntoAccount)
77
{ _func->SetInteger(
ARG_USE_ORIENTATION
, takeOrientationIntoAccount); }
78
79
double
GetParameter
() {
return
_func->GetReal(
ARG_PARAM
); }
80
double
GetParameter2
() {
return
_func->GetReal(
ARG_PARAM2
); }
81
double
GetLength
() {
return
_func->GetReal(
ARG_LENGTH
); }
82
bool
GetTakeOrientationIntoAccount
() {
return
_func->GetInteger(
ARG_USE_ORIENTATION
); }
83
84
private
:
85
86
Handle
(
GEOM_Function
) _func;
87
};
src
GEOMImpl
GEOMImpl_IPoint.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