Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
SoPointLightDragger(3IV)()			    SoPointLightDragger(3IV)()

NAME
       SoPointLightDragger -- sun-shaped icon you can translate	in 3D by drag-
       ging with the mouse

INHERITS FROM
       SoBase >	SoFieldContainer > SoNode > SoBaseKit >	SoInteractionKit > So-
       Dragger > SoPointLightDragger

SYNOPSIS
       #include	<Inventor/draggers/SoPointLightDragger.h>

	  Fields from class SoPointLightDragger:

     SoSFVec3f		 translation

	  Fields from class SoDragger:

     SoSFBool		 isActive

	  Fields from class SoInteractionKit:

     SoSFEnum		 renderCaching
     SoSFEnum		 boundingBoxCaching
     SoSFEnum		 renderCulling
     SoSFEnum		 pickCulling

	  Parts	from class SoBaseKit:

     (SoNodeKitListPart)  callbackList

	  Methods from class SoPointLightDragger:

			 SoPointLightDragger()
     static const SoNodekitCatalog *
			 getClassNodekitCatalog() const
     static SoType	 getClassTypeId()

	  Methods from class SoDragger:

     void		 addStartCallback(SoDraggerCB  *f,  void  *userData  =
			      NULL)
     void		 removeStartCallback(SoDraggerCB *f, void *userData  =
			      NULL)
     void		 addMotionCallback(SoDraggerCB	*f,  void  *userData =
			      NULL)
     void		 removeMotionCallback(SoDraggerCB *f, void *userData =
			      NULL)
     void		 addFinishCallback(SoDraggerCB	*f,  void  *userData =
			      NULL)
     void		 removeFinishCallback(SoDraggerCB *f, void *userData =
			      NULL)
     void		 addValueChangedCallback(SoDraggerCB  *f,  void	*user-
			      Data = NULL)
     void		 removeValueChangedCallback(SoDraggerCB	   *f,	  void
			      *userData	= NULL)
     SbBool		 enableValueChangedCallbacks()
     void		 setMinGesture(int pixels)
     int		 getMinGesture() const
     static void	 setMinScale(float newMinScale)
     static float	 getMinScale()

	  Methods from class SoInteractionKit:

     virtual  SbBool	  setPartAsPath(const SbName &partName,	SoPath *surro-
			      gatePath )

	  Methods from class SoBaseKit:

     virtual const SoNodekitCatalog *
			      getNodekitCatalog() const
     virtual   SoNode	*	  getPart(const	  SbName   &partName,	SbBool
				   makeIfNeeded)
     SbString		      getPartString(const SoBase *part)
     virtual  SoNodeKitPath *  createPathToPart(const SbName &partName,	SbBool
				   makeIfNeeded, const SoPath *pathToExtend  =
				   NULL)
     virtual SbBool	      setPart(const SbName &partName, SoNode *newPart)
     SbBool		      set(char *partName, char *parameters)
     SbBool		      set(char *nameValuePairs)
     static SbBool	      isSearchingChildren()
     static void	      setSearchingChildren(SbBool newVal)

	  Methods from class SoNode:

     void		 setOverride(SbBool state)
     SbBool		 isOverride() const
     SoNode *		 copy(SbBool copyConnections = FALSE) const
     virtual SbBool	 affectsState()	const
     static SoNode *	 getByName(const SbName	&name)
     static int		 getByName(const SbName	&name, SoNodeList &list)

	  Methods from class SoFieldContainer:

     void		 setToDefaults()
     SbBool		 hasDefaultValues() const
     SbBool		 fieldsAreEqual(const SoFieldContainer *fc) const
     void		 copyFieldValues(const	SoFieldContainer  *fc,	SbBool
			      copyConnections =	FALSE)
     void		 get(SbString &fieldDataString)
     virtual int	 getFields(SoFieldList &resultList) const
     virtual SoField *	 getField(const	SbName &fieldName) const
     SbBool		 getFieldName(const SoField *field, SbName &fieldName)
			      const
     SbBool		 isNotifyEnabled() const
     SbBool		 enableNotify(SbBool flag)

	  Methods from class SoBase:

     void		 ref()
     void		 unref() const
     void		 unrefNoDelete() const
     void		 touch()
     virtual SoType	 getTypeId() const
     SbBool		 isOfType(SoType type) const
     virtual void	 setName(const SbName &name)
     virtual SbName	 getName() const

	  Macros from class SoBaseKit:

     SO_GET_PART(kit, partName,	partClass)
     SO_CHECK_PART(kit,	partName, partClass)

DESCRIPTION
       SoPointLightDragger  is a dragger that looks like a point light source,
       can be translated in three directions, and has a	translation field that
       always  reflects	 its  position in local	space. The point light dragger
       also has	a special material part	which can be used to make it  take  on
       the color of a light source.

       Remember:  This	is  not	a light	source!	It just	looks like one.	If you
       want to move a light with this dragger, you can either:

       [a] Use an SoPointLightManip, which is subclassed from SoLight. It cre-
       ates  one  of these draggers and	uses it	as the interface to change the
       location	of its	light  source  (see  the  SoPointLightManip  reference
       page).  The manipulator also edits the material part of this dragger to
       match the color of light	the manipulator	is producing.

       [b] Use a field-to-field	connection to connect the location of a	 light
       source from this	dragger's translation field.

       This  dragger  contains	an  SoDragPointDragger,	which you drag through
       3-space using an	integrated set of linear and planar draggers. (For de-
       tailed  information on how to use SoDragPointDragger, see its reference
       page.) The point	light dragger sets the	planar	translation  parts  of
       this dragPoint dragger with a new default that looks like a shining sun
       emanating rays of light (okay, so use your imagination).

       By changing the material	part you can  change  the  color  of  the  sun
       shape, because the default part contains	no SoMaterial nodes. This fact
       enables the SoPointLightManip (not the  dragger,	 the  manipulator)  to
       color  its dragger to match the color of	the light it is	emanating. Re-
       call that a point light manip is	derived	from  SoLight  and  creates  a
       point light dragger to provide an interface and geometrical presence on
       screen. The manipulator also has	a color	field; when  the  light	 color
       changes,	 it  changes  the  material  part  of its dragger so that they
       match.

       You can change the parts	in any instance	of  this  dragger  using  set-
       Part().

       The  default part geometries are	defined	as resources for this SoPoint-
       LightDragger class. They	are detailed in	the Dragger Resources  section
       of  the online reference	page for this class. You can make your program
       use different default resources for  the	 parts	by  copying  the  file
       /usr/share/data/draggerDefaults/pointLightDragger.iv  into your own di-
       rectory,	editing	the file, and then setting  the	 environment  variable
       SO_DRAGGER_DIR to be a path to that directory.

FIELDS
     SoSFVec3f		 translation
	  Position of the dragger.

METHODS
			 SoPointLightDragger()
	  Constructor.

     static const SoNodekitCatalog *
			 getClassNodekitCatalog() const
	  Returns an SoNodekitCatalog for this class

     static SoType	 getClassTypeId()
	  Returns type identifier for this class.

CATALOG	PARTS
       +---------------------------------------------------------+
       |		       All parts			 |
       |						 NULL by |
       |Part Name      Part Type	  Default Type	 Default |
       |							 |
       |callbackList   NodeKitListPart	  --		   yes	 |
       |material       Material		  --		   yes	 |
       |translator     DragPointDragger	  --		   yes	 |
       |							 |
       +---------------------------------------------------------+
       +---------------------------------------------------------------+
       |      Extra information	for list parts from above table	       |
       |							       |
       |Part Name      Container Type	Permissible Types	       |
       |							       |
       |callbackList   Separator	Callback, EventCallback	       |
       |							       |
       +---------------------------------------------------------------+
DRAGGER	RESOURCES
       .in 0n+.5i
     Resource:	       pointLightOverallMaterial
       .in 0n+.5i
     Part:	       material
     Appearance:       white. half strength emissive, half strength diffuse
     Description:      sets  material  for  the	sun shape when stationary. Re-
			 source	for the	moving sun, pointLightTranslatorPlane-
			 TranslatorActive,  contains  a	 yellow	 material  for
			 highlighting.

			 .in 0n+.5i
     Resource:	       pointLightTranslatorPlaneTranslator
			 .in 0n+.5i
     Parts:	       translator.yzTranslator.translator
					   translator.xzTranslator.translator
					   translator.xyTranslator.translator
     Appearance:       sun shape with no material
     Description:      picking these parts initiates dragging by the  yz,  xz,
			 and xy	planar draggers	respectively.

			 .in 0n+.5i
     Resource:	       pointLightTranslatorPlaneTranslatorActive
			 .in 0n+.5i
     Parts:	       translator.yzTranslator.translatorActive
					   translator.xzTranslator.transla-
			 torActive
					   translator.xyTranslator.transla-
			 torActive
     Appearance:       yellow sun shape
     Description:      shown  during  planar  dragging	in  the	yz, xz,	and xy
			 planes	respectively.

			 .in 0n+.5i
     Resource:	       pointLightTranslatorLineTranslator
			 .in 0n+.5i
     Parts:	       translator.xTranslator.translator
					   translator.yTranslator.translator
					   translator.zTranslator.translator
     Appearance:       white cylinder
     Description:      picking these parts initiates dragging in the x,	y, and
			 z linear draggers respectively.

			 .in 0n+.5i
     Resource:	       pointLightTranslatorLineTranslatorActive
			 .in 0n+.5i
     Parts:	       translator.xTranslator.translatorActive
					   translator.yTranslator.transla-
			 torActive
					   translator.zTranslator.transla-
			 torActive
     Appearance:       yellow cylinder
     Description:      shown  during linear dragging in	the x, y, and z	direc-
			 tions respectively.

FILE FORMAT/DEFAULTS
       PointLightDragger {
	  renderCaching				    AUTO
	  boundingBoxCaching			    AUTO
	  renderCulling				    AUTO
	  pickCulling				    AUTO
	  isActive				    FALSE
	  translation				    0 0	0
	  callbackList				    NULL
	  material				    <pointLightOverallMaterial resource>
	  translator				    DragPointDragger {
	  }

	  translator.yzTranslator.translator	    <pointLightTranslatorPlaneTranslator resource>
	  translator.xzTranslator.translator	    <pointLightTranslatorPlaneTranslator resource>
	  translator.xyTranslator.translator	    <pointLightTranslatorPlaneTranslator resource>
	  translator.yzTranslator.translatorActive  <pointLightTranslatorPlaneTranslatorActive resource>
	  translator.xzTranslator.translatorActive  <pointLightTranslatorPlaneTranslatorActive resource>
	  translator.xyTranslator.translatorActive  <pointLightTranslatorPlaneTranslatorActive resource>
	  translator.xTranslator.translator	    <pointLightTranslatorLineTranslator	resource>
	  translator.yTranslator.translator	    <pointLightTranslatorLineTranslator	resource>
	  translator.zTranslator.translator	    <pointLightTranslatorLineTranslator	resource>
	  translator.xTranslator.translatorActive   <pointLightTranslatorLineTranslatorActive resource>
	  translator.yTranslator.translatorActive   <pointLightTranslatorLineTranslatorActive resource>
	  translator.zTranslator.translatorActive   <pointLightTranslatorLineTranslatorActive resource>
     }

SEE ALSO
       SoInteractionKit, SoDragger,  SoCenterballDragger,  SoDirectionalLight-
       Dragger,	 SoDragPointDragger,  SoHandleBoxDragger, SoJackDragger, SoRo-
       tateCylindricalDragger, SoRotateDiscDragger,  SoRotateSphericalDragger,
       SoScale1Dragger,	 SoScale2Dragger,  SoScale2UniformDragger, SoScaleUni-
       formDragger,  SoSpotLightDragger,  SoTabBoxDragger,  SoTabPlaneDragger,
       SoTrackballDragger,  SoTransformBoxDragger,  SoTransformerDragger,  So-
       Translate1Dragger, SoTranslate2Dragger

						    SoPointLightDragger(3IV)()

NAME | INHERITS FROM | SYNOPSIS | DESCRIPTION | FIELDS | METHODS | CATALOG PARTS | DRAGGER RESOURCES | FILE FORMAT/DEFAULTS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=SoPointLightDragger&sektion=3iv&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help