http://www.sim.no/
http://www.coin3d.org/
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
include
Inventor
manips
SoClipPlaneManip.h
1
#ifndef COIN_SOCLIPPLANEMANIP_H
2
#define COIN_SOCLIPPLANEMANIP_H
3
4
/**************************************************************************\
5
*
6
* This file is part of the Coin 3D visualization library.
7
* Copyright (C) by Kongsberg Oil & Gas Technologies.
8
*
9
* This library is free software; you can redistribute it and/or
10
* modify it under the terms of the GNU General Public License
11
* ("GPL") version 2 as published by the Free Software Foundation.
12
* See the file LICENSE.GPL at the root directory of this source
13
* distribution for additional information about the GNU GPL.
14
*
15
* For using Coin with software that can not be combined with the GNU
16
* GPL, and for taking advantage of the additional benefits of our
17
* support services, please contact Kongsberg Oil & Gas Technologies
18
* about acquiring a Coin Professional Edition License.
19
*
20
* See http://www.coin3d.org/ for more information.
21
*
22
* Kongsberg Oil & Gas Technologies, Bygdoy Alle 5, 0257 Oslo, NORWAY.
23
* http://www.sim.no/ sales@sim.no coin-support@coin3d.org
24
*
25
\**************************************************************************/
26
27
#include <Inventor/nodes/SoClipPlane.h>
28
#include <Inventor/tools/SbLazyPimplPtr.h>
29
#include <Inventor/fields/SoSFVec3f.h>
30
31
class
SbBox3f
;
32
class
SoChildList
;
33
class
SoDragger
;
34
class
SoFieldSensor
;
35
class
SoPath
;
36
class
SoSensor
;
37
38
class
SoClipPlaneManipP;
39
40
class
COIN_DLL_API
SoClipPlaneManip
:
public
SoClipPlane
{
41
typedef
SoClipPlane
inherited
;
42
43
SO_NODE_HEADER
(
SoClipPlaneManip
);
44
45
public
:
46
static
void
initClass
(
void
);
47
SoClipPlaneManip
(
void
);
48
49
SoDragger
* getDragger(
void
);
50
void
setValue(
const
SbBox3f
& box,
const
SbVec3f
& planenormal,
51
float
draggerscalefactor);
52
SbBool replaceNode(
SoPath
* p);
53
SbBool replaceManip(
SoPath
* p,
SoClipPlane
* newone)
const
;
54
55
virtual
void
doAction
(
SoAction
* action);
56
virtual
void
callback
(
SoCallbackAction
* action);
57
virtual
void
GLRender
(
SoGLRenderAction
* action);
58
virtual
void
getBoundingBox
(
SoGetBoundingBoxAction
* action);
59
virtual
void
getMatrix
(
SoGetMatrixAction
* action);
60
virtual
void
handleEvent
(
SoHandleEventAction
* action);
61
virtual
void
pick
(
SoPickAction
* action);
62
virtual
void
search
(
SoSearchAction
* action);
63
64
virtual
SoChildList
*
getChildren
(
void
)
const
;
65
66
SoSFVec3f
draggerPosition
;
67
68
protected
:
69
virtual
~
SoClipPlaneManip
(
void
);
70
71
void
setDragger(
SoDragger
* newdragger);
72
73
virtual
void
copyContents
(
const
SoFieldContainer
* fromfc, SbBool copyconnections);
74
static
void
valueChangedCB(
void
* f,
SoDragger
* d);
75
static
void
fieldSensorCB(
void
* f,
SoSensor
* d);
76
static
void
transferFieldValues(
const
SoClipPlane
* from,
SoClipPlane
* to);
77
78
SoFieldSensor
*
planeFieldSensor
;
79
SoFieldSensor
*
onFieldSensor
;
80
SoFieldSensor
*
draggerPosFieldSensor
;
81
SoChildList
*
children
;
82
83
private
:
84
int
currAxis;
85
void
attachSensors(
const
SbBool onoff);
86
87
private
:
88
SbLazyPimplPtr<SoClipPlaneManipP> pimpl;
89
90
// NOT IMPLEMENTED:
91
SoClipPlaneManip
(
const
SoClipPlaneManip
& rhs);
92
SoClipPlaneManip
& operator = (
const
SoClipPlaneManip
& rhs);
93
};
// SoClipPlaneManip
94
95
#endif // !COIN_SOCLIPPLANEMANIP_H
Copyright © 1998-2010 by
Kongsberg Oil & Gas Technologies
. All rights reserved.
Generated for Coin by
Doxygen
1.8.1.