public class SoMFVec3d extends SoMField
SoMFVec3ds are written to file as one or more triples of double precision 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 0, 1.2 3.4 5.6, 98.6 -4e1 212 ]
Data copying:
SoMF fields are a kind of "smart container", automatically expanding as necessary to hold the data provided by the application. This is very convenient, but for large blocks of data it may be desireable to avoid making a copy of the application data. The setValuesBuffer() methods allow Open Inventor to directly use an array of values supplied by the application. The application data is not copied. Please see SoMFVec3f
for more information and example code.
SoField.FieldTypes
Inventor.ConstructorCommand
VERBOSE_LEVEL, ZeroHandle
Constructor and Description |
---|
SoMFVec3d(SoFieldContainer fieldContainer,
java.lang.String fieldName,
SoField.FieldTypes fieldType)
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
disableDeleteValues()
Temporary disable value deleting.
|
boolean |
equals(java.lang.Object obj) |
int |
find(SbVec3d targetValue)
Calls find(targetValue, false).
|
int |
find(SbVec3d targetValue,
boolean addIfNotFound)
Finds the given
targetValue in the array and returns the index of that value.
|
void |
finishEditing()
Indicates that batch edits have finished.
|
java.nio.DoubleBuffer |
getDirectValues(int start)
Returns a pointer into the array of values in the field, starting at index start.
|
SbVec3d |
getValueAt(int i) |
SbVec3d[] |
getValues(int start)
Returns a pointer into the array of values in the field, starting at index start.
|
void |
set1Value(int index,
double[] xyz)
Sets one value from 3 doubles in array.
|
void |
set1Value(int index,
double x,
double y,
double z)
Sets one value from 3 doubles.
|
void |
set1Value(int index,
SbVec3d newValue)
Sets the
index'th value in the array to
newValue.
|
void |
setValue(double[] xyz)
Sets to one value from 3 doubles in array.
|
void |
setValue(double x,
double y,
double z)
Sets to one value from 3 doubles.
|
void |
setValue(SbVec3d newValue)
Sets the first value in the array to
newValue, and deletes.
|
void |
setValues(int start,
double[] xyz)
Sets values from the specified array of doubles.
|
void |
setValues(int start,
int num,
double[] xyz)
Deprecated.
As of Open Inventor 9.3.1, use
setValues(int, double[])
instead. |
void |
setValues(int start,
SbVec3d[] newValues)
Sets
num values starting at index
start to the values.
|
void |
setValuesBuffer(java.nio.ByteBuffer userData)
Sets the field to contain the values stored in
userData.
|
java.nio.DoubleBuffer |
startEditing()
Returns a pointer to the internally maintained array that can be modified.
|
deleteValues, deleteValues, get1, getNum, insertSpace, set1, setNum
appendConnection, appendConnection, connectFrom, connectFrom, disconnect, disconnect, disconnect, enableConnection, get, getConnectedEngine, getConnectedField, getContainer, getNumConnections, getValueSize, isConnected, isConnectedFromEngine, isConnectedFromField, isConnectedFromVRMLInterp, isConnectionEnabled, isDefault, isIgnored, set, setIgnored, touch
dispose, getNativeResourceHandle
public SoMFVec3d(SoFieldContainer fieldContainer, java.lang.String fieldName, SoField.FieldTypes fieldType)
public void setValues(int start, int num, double[] xyz)
setValues(int, double[])
instead.public int find(SbVec3d targetValue)
public SbVec3d getValueAt(int i)
public java.nio.DoubleBuffer getDirectValues(int start)
startEditing()
/finishEditing() methods for a way of modifying values in place.public SbVec3d[] getValues(int start)
startEditing()
/finishEditing() methods for a way of modifying values in place.public int find(SbVec3d targetValue, boolean addIfNotFound)
public void set1Value(int index, double x, double y, double z)
public void finishEditing()
startEditing()
.public java.nio.DoubleBuffer startEditing()
startEditing()
and finishEditing()
(e.g. set1Value()
, setValue()
, etc.). Fields, engines or sensors connected to this field and sensors are not notified that this field has changed until finishEditing()
is called. Calling finishEditing()
always sets the isDefault()
flag to false and informs engines and sensors that the field changed, even if none of the values actually were changed.public void setValues(int start, SbVec3d[] newValues)
public void disableDeleteValues()
public void setValue(double x, double y, double z)
public void setValue(double[] xyz)
public void setValuesBuffer(java.nio.ByteBuffer userData)
public void setValue(SbVec3d newValue)
public void set1Value(int index, SbVec3d newValue)
public void set1Value(int index, double[] xyz)
public void setValues(int start, double[] xyz)
Generated on July 31, 2019, Copyright © Thermo Fisher Scientific. All rights reserved. http://www.openinventor.com