1SoMFMatrix(3IV)()                                            SoMFMatrix(3IV)()
2
3
4

NAME

6       SoMFMatrix — multiple-value field containing any number of 4x4 matrices
7

INHERITS FROM

9       SoField > SoMField > SoMFMatrix
10

SYNOPSIS

12       #include <Inventor/fields/SoMFMatrix.h>
13
14          Methods from class SoMFMatrix:
15
16     void                setValue(float  a11, float a12, float a13, float a14,
17                              float a21, float  a22,  float  a23,  float  a24,
18                              float  a31,  float  a32,  float  a33, float a34,
19                              float a41, float a42, float a43, float a44)
20     static SoType       getClassTypeId()
21     virtual void        getTypeId() const
22     const SbMatrix &    operator [](int i) const
23     const SbMatrix *    getValues(int start) const
24     int                 find(const SbMatrix & targetValue,  SbBool  addIfNot‐
25                              Found = FALSE)
26     void                setValues(int start, int num, const SbMatrix *newVal‐
27                              ues)
28     void                set1Value(int index, const SbMatrix & newValue)
29     const SbMatrix &    operator =(const SbMatrix & newValue)
30     void                setValue(const SbMatrix & newValue)
31     int                 operator ==(const SoMFMatrix &f) const
32     int                 operator !=(const SoMFMatrix &f) const
33     SbMatrix *          startEditing()
34     void                finishEditing()
35
36          Methods from class SoMField:
37
38     int                 getNum() const
39     void                setNum(int num)
40     virtual void        deleteValues(int start, int num = -1)
41     virtual void        insertSpace(int start, int num)
42     SbBool              set1(int index, const char *valueString)
43     void                get1(int index, SbString &valueString)
44
45          Methods from class SoField:
46
47     void                setIgnored(SbBool ignore)
48     SbBool              isIgnored() const
49     SbBool              isDefault() const
50     virtual SbBool      isOfType(SoType type) const
51     SbBool              set(const char *valueString)
52     void                get(SbString &valueString)
53     void                touch()
54     SbBool              connectFrom(SoField *fromField)
55     SbBool              connectFrom(SoEngineOutput *fromEngine)
56     void                disconnect()
57     SbBool              isConnected() const
58     SbBool              isConnectedFromField() const
59     SbBool              getConnectedField(SoField *&writingField) const
60     SbBool              isConnectedFromEngine() const
61     SbBool              getConnectedEngine(SoEngineOutput     *&engineOutput)
62                              const
63     void                enableConnection(SbBool flag)
64     SbBool              isConnectionEnabled() const
65     int                 getForwardConnections(SoFieldList &list) const
66     SoFieldContainer *  getContainer() const
67
68

DESCRIPTION

70       A multiple-value field that contains any number of 4x4 matrices.
71
72       SoMFMatrices  are  written to file as sets of 16 floating point numbers
73       separated by whitespace. When more than one value is  present,  all  of
74       the values are enclosed in square brackets and separated by commas; for
75       example, two identity matrices might be written as:
76
77          [ 1 0 0 0  0 1 0 0  0 0 1 0  0 0 0 1,
78            1 0 0 0  0 1 0 0  0 0 1 0  0 0 0 1 ]
79
80
81

METHODS

83     void                setValue(float a11, float a12, float a13, float  a14,
84                              float  a21,  float  a22,  float  a23, float a24,
85                              float a31, float  a32,  float  a33,  float  a34,
86                              float a41, float a42, float a43, float a44)
87          Makes this field contain one and only one value, which is the matrix
88          given by the 16 values.
89
90     static SoType       getClassTypeId()
91     virtual void        getTypeId() const
92          Returns the type for this class  or  a  particular  object  of  this
93          class.
94
95     const SbMatrix &    operator [](int i) const
96          Returns  the  i'th  value of the field. Indexing past the end of the
97          field (passing in i greater than getNum()) will return garbage.
98
99     const SbMatrix *    getValues(int start) const
100          Returns a pointer into the array of values in the field, starting at
101          index  start.  The values are read-only; see the startEditing()/fin‐
102          ishEditing() methods for a way of modifying values in place.
103
104     int                 find(const SbMatrix & targetValue,  SbBool  addIfNot‐
105                              Found = FALSE)
106          Finds  the  given  value  in the array and returns the index of that
107          value in the array. If the value is not found, -1  is  returned.  If
108          addIfNotFound  is  set,  then targetValue is added to the end of the
109          array (but -1 is still returned).
110
111     void                setValues(int start, int num, const SbMatrix *newVal‐
112                              ues)
113          Sets  num values starting at index start to the values in newValues.
114          The array will be automatically be made larger to accomodate the new
115          values, if necessary.
116
117     void                set1Value(int index, const SbMatrix & newValue)
118          Sets  the index'th value in the array to newValue. The array will be
119          automatically expanded, if necessary.
120
121     const SbMatrix &    operator =(const SbMatrix & newValue)
122     void                setValue(const SbMatrix & newValue)
123          Sets the first value in the array to newValue, and deletes the  sec‐
124          ond and subsequent values.
125
126     int                 operator ==(const SoMFMatrix &f) const
127     int                 operator !=(const SoMFMatrix &f) const
128          Returns TRUE if all of the values of this field equal (do not equal)
129          those of the given field. If the fields are  different  types  FALSE
130          will  always be returned (even if one field is an SoMFFloat with one
131          value of 1.0 and the other is an SoMFInt with  a  value  of  1,  for
132          example).
133
134     SbMatrix *          startEditing()
135     void                finishEditing()
136          startEditing()  returns a pointer to the internally-maintained array
137          that can be modified. The values in the array may  be  changed,  but
138          values  cannot  be added or removed. It is illegal to call any other
139          editing methods between  startEditing()  and  finishEditing()  (e.g.
140          set1Value(), setValue(), etc).
141
142          Fields,  engines  or sensors connected to this field and sensors are
143          not notified that this field has changed  until  finishEditing()  is
144          called.  Calling finishEditing() always sets the isDefault() flag to
145          FALSE and informs engines and sensors that the field  changed,  even
146          if none of the values actually were changed.
147
148
149
150
151                                                             SoMFMatrix(3IV)()
Impressum