SoMFVec2f(3IV)

SoMFVec2f (SoMVec2f) - multiple-value field containing any number of two-dimensional vectors

As shipped in IRIX 6.5.30. Added in IRIX 6.5.22.

NAME
     SoMFVec2f (SoMVec2f) - multiple-value field containing any number of
     two-dimensional vectors

INHERITS FROM
     SoField > SoMField > SoMFVec2f

SYNOPSIS
     #include <Inventor_c/fields/SoMFVec2f.h>

     typedef SoMFVec2f   SoMVec2f

          Functions from class SoMFVec2f:

     void                SoMVec2fSetXYs(SoMVec2f *this, int start, int num,
                              const float xy[][2])
     void                SoMVec2fSet1X_Y(SoMVec2f *this, int index, float x,
                              float y)
     void                SoMVec2fSet1XY(SoMVec2f *this, int index, const float
                              xy[2])
     void                SoMVec2fSetX_Y(SoMVec2f *this, float x, float y)
     void                SoMVec2fSetXY(SoMVec2f *this, const float xy[2])
     SoType              SoMVec2fGetClassTypeId()
     void                SoMVec2fGetTypeId(const SoMVec2f *this)
     const SbVec2f *     SoMVec2fGet(const SoMVec2f *this, int i)
     const SbVec2f *     SoMVec2fGetN(const SoMVec2f *this, int start)
     int                 SoMVec2fFind(SoMVec2f *this, const SbVec2f *
                              targetValue, SbBool addIfNotFound = FALSE)
     void                SoMVec2fSetN(SoMVec2f *this, int start, int num,
                              const SbVec2f *newValues)
     void                SoMVec2fSet1(SoMVec2f *this, int index, const SbVec2f
                              * newValue)
     void                SoMVec2fSet(SoMVec2f *this, const SbVec2f * newValue)
     int                 SoMVec2fIsEq(const SoMVec2f *this, const SoMFVec2f
                              *f)
     int                 SoMVec2fIsNEq(const SoMVec2f *this, const SoMFVec2f
                              *f)
     SbVec2f *           SoMVec2fStartEdit(SoMVec2f *this)
     void                SoMVec2fFinishEdit(SoMVec2f *this)

          Functions from class SoMField:

     int                 SoMVec2fGetNum(const SoMVec2f *this)
     void                SoMVec2fSetNum(SoMVec2f *this, int num)
     void                SoMVec2fDel(SoMVec2f *this, int start, int num = -1)
     void                SoMVec2fInsertSpace(SoMVec2f *this, int start, int
                              num)
     void                SoMVec2fGet1(SoMVec2f *this, int index, SbString
                              *valueString)

          Functions from class SoField:

     void                SoMVec2fSetIgnored(SoMVec2f *this, SbBool ignore)
     SbBool              SoMVec2fIsIgnored(const SoMVec2f *this)
     SbBool              SoMVec2fIsDflt(const SoMVec2f *this)
     SbBool              SoMVec2fIsOfType(const SoMVec2f *this, SoType type)
     SbBool              SoMVec2fSetFromStr(SoMVec2f *this, const char
                              *valueString)
     void                SoMVec2fGetIntoStr(SoMVec2f *this, SbString
                              *valueString)
     void                SoMVec2fTouch(SoMVec2f *this)
     SbBool              SoMVec2fConnFromField(SoMVec2f *this, SoField
                              *fromField)
     SbBool              SoMVec2fConnFrom(SoMVec2f *this, SoEngineOutput
                              *fromEngine)
     void                SoMVec2fDisconn(SoMVec2f *this)
     SbBool              SoMVec2fIsConn(const SoMVec2f *this)
     SbBool              SoMVec2fIsConnFromField(const SoMVec2f *this)
     SbBool              SoMVec2fGetConnField(const SoMVec2f *this, SoField
                              **writingField)
     SbBool              SoMVec2fIsConnFromEngine(const SoMVec2f *this)
     SbBool              SoMVec2fGetConnEngine(const SoMVec2f *this,
                              SoEngineOutput **engineOutput)
     void                SoMVec2fEnableConn(SoMVec2f *this, SbBool flag)
     SbBool              SoMVec2fIsConnEnabled(const SoMVec2f *this)
     int                 SoMVec2fGetForwardConn(const SoMVec2f *this,
                              SoFieldList *list)
     SoFieldContainer *  SoMVec2fGetContainer(const SoMVec2f *this)


DESCRIPTION
     A multiple-value field that contains any number of two-dimensional
     vectors.

     SoMFVec2fs are written to file as one or more pairs of floating point
     values separated by whitespace. When more than one value is present, all
     of the values are enclosed in square brackets and separated by commas;
     for example:

          [ 0 0, 1.2 3.4, 98.6 -4e1 ]



FUNCTIONS
     void                SoMVec2fSetXYs(SoMVec2f *this, int start, int num,
                              const float xy[][2])
          Sets num values starting at index start to the given floating point
          values. There must be num*2 values in the passed array.

     void                SoMVec2fSet1X_Y(SoMVec2f *this, int index, float x,
                              float y)
     void                SoMVec2fSet1XY(SoMVec2f *this, int index, const float
                              xy[2])
          Set the index'th value to the given floating point values.
     void                SoMVec2fSetX_Y(SoMVec2f *this, float x, float y)
     void                SoMVec2fSetXY(SoMVec2f *this, const float xy[2])
          Sets the field to contain the given value and only the given value
          (if the array had multiple values before, they are deleted).

     SoType              SoMVec2fGetClassTypeId()
     void                SoMVec2fGetTypeId(const SoMVec2f *this)
          Returns the type for this class or a particular object of this
          class.

     const SbVec2f *     SoMVec2fGet(const SoMVec2f *this, int i)
          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 SbVec2f *     SoMVec2fGetN(const SoMVec2f *this, int start)
          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                 SoMVec2fFind(SoMVec2f *this, const SbVec2f *
                              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                SoMVec2fSetN(SoMVec2f *this, int start, int num,
                              const SbVec2f *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                SoMVec2fSet1(SoMVec2f *this, int index, const SbVec2f
                              * newValue)
          Sets the index'th value in the array to newValue. The array will be
          automatically expanded, if necessary.

     void                SoMVec2fSet(SoMVec2f *this, const SbVec2f * newValue)
          Sets the first value in the array to newValue, and deletes the
          second and subsequent values.

     int                 SoMVec2fIsEq(const SoMVec2f *this, const SoMFVec2f
                              *f)
     int                 SoMVec2fIsNEq(const SoMVec2f *this, const SoMFVec2f
                              *f)
          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).

     SbVec2f *           SoMVec2fStartEdit(SoMVec2f *this)
     void                SoMVec2fFinishEdit(SoMVec2f *this)
          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 StartEdit() and FinishEdit() (e.g. Set1(),
          Set(), etc).

          Fields, engines or sensors connected to this field and sensors are
          not notified that this field has changed until FinishEdit() is
          called. Calling FinishEdit() always sets the IsDflt flag to FALSE
          and informs engines and sensors that the field changed, even if none
          of the values actually were changed.