1SoMFPlane(3IV)() SoMFPlane(3IV)()
2
3
4
6 SoMFPlane — field containing several plane equations
7
9 SoField > SoMField > SoMFPlane
10
12 #include <Inventor/fields/SoMFPlane.h>
13
14 Methods from class SoMFPlane:
15
16 static SoType getClassTypeId()
17 virtual void getTypeId() const
18 SbPlane operator [](int i) const
19 const SbPlane * getValues(int start) const
20 int find(SbPlane targetValue, SbBool addIfNotFound =
21 FALSE)
22 void setValues(int start, int num, const SbPlane *newVal‐
23 ues)
24 void set1Value(int index, SbPlane newValue)
25 SbPlane operator =(SbPlane newValue)
26 void setValue(SbPlane newValue)
27 int operator ==(const SoMFPlane &f) const
28 int operator !=(const SoMFPlane &f) const
29 SbPlane * startEditing()
30 void finishEditing()
31
32 Methods from class SoMField:
33
34 int getNum() const
35 void setNum(int num)
36 virtual void deleteValues(int start, int num = -1)
37 virtual void insertSpace(int start, int num)
38 SbBool set1(int index, const char *valueString)
39 void get1(int index, SbString &valueString)
40
41 Methods from class SoField:
42
43 void setIgnored(SbBool ignore)
44 SbBool isIgnored() const
45 SbBool isDefault() const
46 virtual SbBool isOfType(SoType type) const
47 SbBool set(const char *valueString)
48 void get(SbString &valueString)
49 void touch()
50 SbBool connectFrom(SoField *fromField)
51 SbBool connectFrom(SoEngineOutput *fromEngine)
52 void disconnect()
53 SbBool isConnected() const
54 SbBool isConnectedFromField() const
55 SbBool getConnectedField(SoField *&writingField) const
56 SbBool isConnectedFromEngine() const
57 SbBool getConnectedEngine(SoEngineOutput *&engineOutput)
58 const
59 void enableConnection(SbBool flag)
60 SbBool isConnectionEnabled() const
61 int getForwardConnections(SoFieldList &list) const
62 SoFieldContainer * getContainer() const
63
64
66 A field containing one or more plane equations.
67
68 SoMFPlanes are written to file as groups of four floating point values
69 separated by whitespace. In each set of four values, the first three
70 are the normal direction of the plane, the fourth is the distance of
71 the plane from the origin (in the direction of the normal).
72
73 When more than one value is present, all of the values are enclosed in
74 square brackets and separated by commas; for example:
75
76 [ 1 0 0 0, .707 .707 0 100, ]
77
78
79
81 static SoType getClassTypeId()
82 virtual void getTypeId() const
83 Returns the type for this class or a particular object of this
84 class.
85
86 SbPlane operator [](int i) const
87 Returns the i'th value of the field. Indexing past the end of the
88 field (passing in i greater than getNum()) will return garbage.
89
90 const SbPlane * getValues(int start) const
91 Returns a pointer into the array of values in the field, starting at
92 index start. The values are read-only; see the startEditing()/fin‐
93 ishEditing() methods for a way of modifying values in place.
94
95 int find(SbPlane targetValue, SbBool addIfNotFound =
96 FALSE)
97 Finds the given value in the array and returns the index of that
98 value in the array. If the value is not found, -1 is returned. If
99 addIfNotFound is set, then targetValue is added to the end of the
100 array (but -1 is still returned).
101
102 void setValues(int start, int num, const SbPlane *newVal‐
103 ues)
104 Sets num values starting at index start to the values in newValues.
105 The array will be automatically be made larger to accomodate the new
106 values, if necessary.
107
108 void set1Value(int index, SbPlane newValue)
109 Sets the index'th value in the array to newValue. The array will be
110 automatically expanded, if necessary.
111
112 SbPlane operator =(SbPlane newValue)
113 void setValue(SbPlane newValue)
114 Sets the first value in the array to newValue, and deletes the sec‐
115 ond and subsequent values.
116
117 int operator ==(const SoMFPlane &f) const
118 int operator !=(const SoMFPlane &f) const
119 Returns TRUE if all of the values of this field equal (do not equal)
120 those of the given field. If the fields are different types FALSE
121 will always be returned (even if one field is an SoMFFloat with one
122 value of 1.0 and the other is an SoMFInt with a value of 1, for
123 example).
124
125 SbPlane * startEditing()
126 void finishEditing()
127 startEditing() returns a pointer to the internally-maintained array
128 that can be modified. The values in the array may be changed, but
129 values cannot be added or removed. It is illegal to call any other
130 editing methods between startEditing() and finishEditing() (e.g.
131 set1Value(), setValue(), etc).
132
133 Fields, engines or sensors connected to this field and sensors are
134 not notified that this field has changed until finishEditing() is
135 called. Calling finishEditing() always sets the isDefault() flag to
136 FALSE and informs engines and sensors that the field changed, even
137 if none of the values actually were changed.
138
139
140
141
142 SoMFPlane(3IV)()