table of contents
| SoMFPlane(3IV)() | SoMFPlane(3IV)() | 
NAME¶
SoMFPlane — field containing several plane equations
INHERITS FROM¶
SoField > SoMField > SoMFPlane
SYNOPSIS¶
#include <Inventor/fields/SoMFPlane.h>
  
  Methods from class SoMFPlane:
  
  
  static SoType	getClassTypeId()
  
  
  virtual void	getTypeId() const
  
  
  SbPlane	operator [](int i) const
  
  
  const SbPlane *	getValues(int start) const
  
  
  int	find(SbPlane targetValue, SbBool addIfNotFound =
    FALSE)
  
  
  void	setValues(int start, int num, const SbPlane
    *newValues)
  
  
  void	set1Value(int index, SbPlane newValue)
  
  
  SbPlane	operator =(SbPlane newValue)
  
  
  void	setValue(SbPlane newValue)
  
  
  int	operator ==(const SoMFPlane &f) const
  
  
  int	operator !=(const SoMFPlane &f) const
  
  
  SbPlane *	startEditing()
  
  
  void	finishEditing()
  
  Methods from class SoMField:
  
  
  int	getNum() const
  
  
  void	setNum(int num)
  
  
  virtual void	deleteValues(int start, int num = -1)
  
  
  virtual void	insertSpace(int start, int num)
  
  
  SbBool	set1(int index, const char *valueString)
  
  
  void	get1(int index, SbString
  &valueString)
  
  Methods from class SoField:
  
  
  void	setIgnored(SbBool ignore)
  
  
  SbBool	isIgnored() const
  
  
  SbBool	isDefault() const
  
  
  virtual SbBool	isOfType(SoType type) const
  
  
  SbBool	set(const char *valueString)
  
  
  void	get(SbString &valueString)
  
  
  void	touch()
  
  
  SbBool	connectFrom(SoField *fromField)
  
  
  SbBool	connectFrom(SoEngineOutput *fromEngine)
  
  
  void	disconnect()
  
  
  SbBool	isConnected() const
  
  
  SbBool	isConnectedFromField() const
  
  
  SbBool	getConnectedField(SoField *&writingField)
    const
  
  
  SbBool	isConnectedFromEngine() const
  
  
  SbBool	getConnectedEngine(SoEngineOutput
    *&engineOutput) const
  
  
  void	enableConnection(SbBool flag)
  
  
  SbBool	isConnectionEnabled() const
  
  
  int	getForwardConnections(SoFieldList &list)
    const
  
  
  SoFieldContainer *	getContainer() const
DESCRIPTION¶
A field containing one or more plane equations.
SoMFPlanes are written to file as groups of four floating point values separated by whitespace. In each set of four values, the first three are the normal direction of the plane, the fourth is the distance of the plane from the origin (in the direction of the normal).
When more than one value is present, all of the values are enclosed in square brackets and separated by commas; for example:
[ 1 0 0 0, .707 .707 0 100, ]
METHODS¶
static SoType	getClassTypeId()
  
  
  virtual void	getTypeId() const
  
  
  Returns the type for this class or a particular object of this class.
  
  
  SbPlane	operator [](int i) const
  
  
  Returns the i'th value of the field. Indexing past the end of the field
    (passing in i greater than getNum()) will return garbage.
  
  
  const SbPlane *	getValues(int start) const
  
  
  Returns a pointer into the array of values in the field, starting at index
    start. The values are read-only; see the
    startEditing()/finishEditing() methods for a way of modifying
    values in place.
  
  
  int	find(SbPlane targetValue, SbBool addIfNotFound =
    FALSE)
  
  
  Finds the given value in the array and returns the index of that value in the
    array. If the value is not found, -1 is returned. If addIfNotFound is
    set, then targetValue is added to the end of the array (but -1 is
    still returned).
  
  
  void	setValues(int start, int num, const SbPlane
    *newValues)
  
  
  Sets num values starting at index start to the values in
    newValues. The array will be automatically be made larger to
    accomodate the new values, if necessary.
  
  
  void	set1Value(int index, SbPlane newValue)
  
  
  Sets the index'th value in the array to newValue. The array will
    be automatically expanded, if necessary.
  
  
  SbPlane	operator =(SbPlane newValue)
  
  
  void	setValue(SbPlane newValue)
  
  
  Sets the first value in the array to newValue, and deletes the second
    and subsequent values.
  
  
  int	operator ==(const SoMFPlane &f) const
  
  
  int	operator !=(const SoMFPlane &f) const
  
  
  Returns TRUE if all of the values of this field equal (do not equal) those of
    the given field. If the fields are different types FALSE will always be
    returned (even if one field is an SoMFFloat with one value of 1.0 and
    the other is an SoMFInt with a value of 1, for example).
  
  
  SbPlane *	startEditing()
  
  
  void	finishEditing()
  
  
  startEditing() returns a pointer to the internally-maintained array
    that can be modified. The values in the array may be changed, but values
    cannot be added or removed. It is illegal to call any other editing methods
    between startEditing() and finishEditing() (e.g.
    set1Value(), setValue(), etc).
Fields, engines or sensors connected to this field and sensors are not notified that this field has changed until finishEditing() is called. Calling finishEditing() always sets the isDefault() flag to FALSE and informs engines and sensors that the field changed, even if none of the values actually were changed.