SoMFVec2f(3IV)
SoMFVec2f (SoMVec2f) - multiple-value field containing any number of two-dimensional vectors
As shipped in IRIX 6.5.22. 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.