25#ifndef _SO_CLIP_PLANE_MANIP_
26#define _SO_CLIP_PLANE_MANIP_
28#include <Inventor/draggers/SoDragger.h>
29#include <Inventor/nodes/SoClipPlane.h>
30#include <Inventor/sensors/SoFieldSensor.h>
31#include <Inventor/fields/SoSFVec3f.h>
124 virtual void doAction(
SoAction *action);
145 static void initClass();
146 static void exitClass();
149 virtual bool isGroup() {
return true; }
152 virtual void internalRemoveChild(
int index );
153 virtual void internalRemoveChild(
SoNode *child) { internalRemoveChild(internalFindChild(child)); }
154 virtual void internalRemoveAllChildren();
155 virtual void internalAddChild(
SoNode *child );
156 virtual int internalFindChild(
const SoNode *child )
const;
157 virtual void internalInsertChild(
SoNode *child,
int newChildIndex );
158 virtual SoNode *internalGetChild(
int index)
const {
return (*children)[index]; }
159 virtual void internalReplaceChild(
int index,
SoNode *newChild);
160 virtual void internalReplaceChild(
SoNode *oldChild,
SoNode *newChild) { internalReplaceChild(internalFindChild(oldChild),newChild); }
165 static void valueChangedCB(
void *,
SoDragger *);
172 static void fieldSensorCB(
void *,
SoSensor *);
179 virtual SbBool readInstance(
SoInput *in,
unsigned short flags);
186 SbVec3f projectPointPlane()
const ;
188 int getNumChildren()
const {
return (children->getLength()); }
Abstract base class for all actions.
Performs a generic traversal of a scene graph or path.
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Manipulator to t...
virtual SoNode * copy(SbBool copyConnections=FALSE) const
Creates and returns an exact copy of the node.
SoSFVec3f draggerPosition
Dragger position.
SbBool replaceManip(SoPath *p, SoClipPlane *newOne) const
Replaces this manipulator with a regular SoClipPlane node.
void setValue(const SbBox3f &box, const SbVec3f &planeNormal, float draggerScaleFactor)
Convenience method to set the clip plane and the dragger position, orientation and size.
SoClipPlaneManip()
Constructor.
SoDragger * getDragger()
Returns the dragger node being employed by this manip.
SbBool replaceNode(SoPath *p)
Replaces a regular SoClipPlane node with this manipulator.
Base class for nodekits that move in response to click-drag-release mouse events.
Sensor class that can be attached to Open Inventor fields.
Renders a scene graph using Open Inventor's Render Engine.
Computes bounding box of a scene.
Computes transformation matrix for a subgraph.
Allows nodes in a graph to receive input events.
Abstract base class for all database nodes.
Path that points to a list of hierarchical nodes.
Abstract base class for picking objects in a scene.
Field containing a three-dimensional vector.
Searches for nodes in a scene graph.
Abstract base class for Open Inventor sensors.
Writes a scene graph to a file.