SoMFFloat(3IV)NAMESoMFFloat (SoMFloat) - multiple-value field containing any number of
floating point values
INHERITS FROM
SoField > SoMField > SoMFFloatSYNOPSIS
#include <Inventor_c/fields/SoMFFloat.h>
typedef SoMFFloat SoMFloat
Functions from class SoMFFloat:
SoType SoMFloatGetClassTypeId()
void SoMFloatGetTypeId(const SoMFloat *this)
float SoMFloatGet(const SoMFloat *this, int i)
const float * SoMFloatGetN(const SoMFloat *this, int start)
int SoMFloatFind(SoMFloat *this, float targetValue,
SbBool addIfNotFound = FALSE)
void SoMFloatSetN(SoMFloat *this, int start, int num,
const float *newValues)
void SoMFloatSet1(SoMFloat *this, int index, float
newValue)
void SoMFloatSet(SoMFloat *this, float newValue)
int SoMFloatIsEq(const SoMFloat *this, const SoMFFloat
*f)
int SoMFloatIsNEq(const SoMFloat *this, const SoMFFloat
*f)
float * SoMFloatStartEdit(SoMFloat *this)
void SoMFloatFinishEdit(SoMFloat *this)
Functions from class SoMField:
int SoMFloatGetNum(const SoMFloat *this)
void SoMFloatSetNum(SoMFloat *this, int num)
void SoMFloatDel(SoMFloat *this, int start, int num = -1)
void SoMFloatInsertSpace(SoMFloat *this, int start, int
num)
void SoMFloatGet1(SoMFloat *this, int index, SbString
*valueString)
Functions from class SoField:
void SoMFloatSetIgnored(SoMFloat *this, SbBool ignore)
SbBool SoMFloatIsIgnored(const SoMFloat *this)
SbBool SoMFloatIsDflt(const SoMFloat *this)
SbBool SoMFloatIsOfType(const SoMFloat *this, SoType type)
SbBool SoMFloatSetFromStr(SoMFloat *this, const char
*valueString)
void SoMFloatGetIntoStr(SoMFloat *this, SbString
*valueString)
Page 1SoMFFloat(3IV)
void SoMFloatTouch(SoMFloat *this)
SbBool SoMFloatConnFromField(SoMFloat *this, SoField
*fromField)
SbBool SoMFloatConnFrom(SoMFloat *this, SoEngineOutput
*fromEngine)
void SoMFloatDisconn(SoMFloat *this)
SbBool SoMFloatIsConn(const SoMFloat *this)
SbBool SoMFloatIsConnFromField(const SoMFloat *this)
SbBool SoMFloatGetConnField(const SoMFloat *this, SoField
**writingField)
SbBool SoMFloatIsConnFromEngine(const SoMFloat *this)
SbBool SoMFloatGetConnEngine(const SoMFloat *this,
SoEngineOutput **engineOutput)
void SoMFloatEnableConn(SoMFloat *this, SbBool flag)
SbBool SoMFloatIsConnEnabled(const SoMFloat *this)
int SoMFloatGetForwardConn(const SoMFloat *this,
SoFieldList *list)
SoFieldContainer * SoMFloatGetContainer(const SoMFloat *this)
DESCRIPTION
A multiple-value field that contains any number of floating point values.
SoMFFloats are written to file as one or more values in standard
scientific notation. When more than one value is present, all of the
values are enclosed in square brackets and separated by commas; for
example:
[ 1.0, 2.3, 5, 6.2e4, -100, ]
The last comma is optional.
FUNCTIONS
SoType SoMFloatGetClassTypeId()
void SoMFloatGetTypeId(const SoMFloat *this)
Returns the type for this class or a particular object of this
class.
float SoMFloatGet(const SoMFloat *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 float * SoMFloatGetN(const SoMFloat *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 SoMFloatFind(SoMFloat *this, float 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
Page 2SoMFFloat(3IV)
addIfNotFound is set, then targetValue is added to the end of the
array (but -1 is still returned).
void SoMFloatSetN(SoMFloat *this, int start, int num,
const float *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 SoMFloatSet1(SoMFloat *this, int index, float
newValue)
Sets the index'th value in the array to newValue. The array will be
automatically expanded, if necessary.
void SoMFloatSet(SoMFloat *this, float newValue)
Sets the first value in the array to newValue, and deletes the
second and subsequent values.
int SoMFloatIsEq(const SoMFloat *this, const SoMFFloat
*f)
int SoMFloatIsNEq(const SoMFloat *this, const SoMFFloat
*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).
float * SoMFloatStartEdit(SoMFloat *this)
void SoMFloatFinishEdit(SoMFloat *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.
Page 3