vrml.eai.field
Class EventOutMFVec2f

java.lang.Object
  extended by vrml.eai.field.BaseField
      extended by vrml.eai.field.EventOut
          extended by vrml.eai.field.EventOutMField
              extended by vrml.eai.field.EventOutMFVec2f

public abstract class EventOutMFVec2f
extends EventOutMField

Reference to a MFVec2f event-out slot. Use this class to read values from MFVec2f event-out slots.

The following example gets the texture coordinates from the "point" field of a TextureCoordinate node and prints them to the console:

 vrml.eai.Node textureCoordinate = ...;
 vrml.eai.field.EventOutMFVec2f point_changed = (vrml.eai.field.EventOutMFVec2f)textureCoordinate.getEventOut("point_changed");
 float[][] v = point_changed.getValue();
 for (int i = 0; i < v.length; ++i)
     System.out.println("x = " + v[i][0] + ", y = " + v[i][1]);
 


Field Summary
 
Fields inherited from class vrml.eai.field.BaseField
MFColor, MFFloat, MFInt32, MFNode, MFRotation, MFString, MFTime, MFVec2f, MFVec3f, SFBool, SFColor, SFFloat, SFImage, SFInt32, SFNode, SFRotation, SFString, SFTime, SFVec2f, SFVec3f
 
Constructor Summary
protected EventOutMFVec2f()
          Default Constructor.
 
Method Summary
abstract  float[] get1Value(int index)
          Returns one element of the MFVec2f event-out slot.
abstract  void get1Value(int index, float[] value)
          Returns one element of the MFVec2f event-out slot.
abstract  float[][] getValue()
          Returns the current value of the MFVec2f event-out slot.
abstract  void getValue(float[] value)
          Returns the current value of the MFVec2f event-out slot.
abstract  void getValue(float[][] value)
          Returns the current value of the MFVec2f event-out slot.
 
Methods inherited from class vrml.eai.field.EventOutMField
size
 
Methods inherited from class vrml.eai.field.EventOut
addVrmlEventListener, getUserData, removeVrmlEventListener, setUserData
 
Methods inherited from class vrml.eai.field.BaseField
getType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EventOutMFVec2f

protected EventOutMFVec2f()
Default Constructor. This method is protected, i.e. you cannot create new instances of this class. The only way to get instances is via the Node.getEventOut(java.lang.String) method.

Method Detail

getValue

public abstract float[][] getValue()
Returns the current value of the MFVec2f event-out slot.

The following example gets the texture coordinates from the "point" field of a TextureCoordinate node and prints them to the console:

 vrml.eai.Node textureCoordinate = ...;
 vrml.eai.field.EventOutMFVec2f point_changed = (vrml.eai.field.EventOutMFVec2f)textureCoordinate.getEventOut("point_changed");
 float[][] v = point_changed.getValue();
 for (int i = 0; i < v.length; ++i)
     System.out.println("x = " + v[i][0] + ", y = " + v[i][1]);
 

Returns:
The current vector values. This is an array of float arrays that contain two values. The first value is the x component of the vector, and the second value the y component.

getValue

public abstract void getValue(float[][] value)
                       throws java.lang.ArrayIndexOutOfBoundsException
Returns the current value of the MFVec2f event-out slot.

The following example gets the texture coordinates from the "point" field of a TextureCoordinate node and prints them to the console:

 vrml.eai.Node textureCoordinate = ...;
 vrml.eai.field.EventOutMFVec2f point_changed = (vrml.eai.field.EventOutMFVec2f)textureCoordinate.getEventOut("point_changed");
 int size = point_changed.size();
 float[][] v = new float[size][];
 for (int i = 0; i < size; ++i)
     v[i] = new float[2];
 point_changed.getValue(v);
 for (int i = 0; i < size; ++i)
     System.out.println("x = " + v[i][0] + ", y = " + v[i][1]);
 

Parameters:
value - An array of float arrays that contain at least two values. This array gets filled with the current vector values. The first element of each array gets filled with the x component of the vector, and the second element with the y component.
Throws:
java.lang.ArrayIndexOutOfBoundsException - when either the value array is too small, or one of the arrays contained in the value array has less then two elements.

getValue

public abstract void getValue(float[] value)
                       throws java.lang.ArrayIndexOutOfBoundsException
Returns the current value of the MFVec2f event-out slot.

The following example gets the texture coordinates from the "point" field of a TextureCoordinate node and prints them to the console:

 vrml.eai.Node textureCoordinate = ...;
 vrml.eai.field.EventOutMFVec2f point_changed = (vrml.eai.field.EventOutMFVec2f)textureCoordinate.getEventOut("point_changed");
 float[] v = new float[point_changed.size() * 2];
 point_changed.getValue(v);
 for (int i = 0; i < v.length; i += 2)
     System.out.println("x = " + v3[i] + ", y = " + v3[i + 1]);
 

Parameters:
value - An array of float values that gets filled with the current vector values. The number of elements in this array must be at least two times the number of vector values. The elements at the positions [i x 2] get filled with the x components of the vectors, and the elements at [i x 2 + 1] with the y components (for 0 <= i < EventOutMField.size()).
Throws:
java.lang.ArrayIndexOutOfBoundsException - when the value array is too small.

get1Value

public abstract float[] get1Value(int index)
                           throws java.lang.ArrayIndexOutOfBoundsException
Returns one element of the MFVec2f event-out slot.

The following example gets the first texture coordinate from the "point" field of a TextureCoordinate node and prints it to the console:

 vrml.eai.Node textureCoordinate = ...;
 vrml.eai.field.EventOutMFVec2f point_changed = (vrml.eai.field.EventOutMFVec2f)textureCoordinate.getEventOut("point_changed");
 float[] v = point_changed.get1Value(0);
 System.out.println("x = " + v[0] + ", y = " + v[1]);
 

Parameters:
index - The index of the element, starting at 0.
Returns:
The vector value. This is an array of two float values. The first value contains the x component of the vector, and the second value the y component.
Throws:
java.lang.ArrayIndexOutOfBoundsException - when the index is invalid.

get1Value

public abstract void get1Value(int index,
                               float[] value)
                        throws java.lang.ArrayIndexOutOfBoundsException
Returns one element of the MFVec2f event-out slot.

The following example gets the first texture coordinate from the "point" field of a TextureCoordinate node and prints it to the console:

 vrml.eai.Node textureCoordinate = ...;
 vrml.eai.field.EventOutMFVec2f point_changed = (vrml.eai.field.EventOutMFVec2f)textureCoordinate.getEventOut("point_changed");
 float[] v = new float[2];
 point_changed.get1Value(0, v);
 System.out.println("x = " + v[0] + ", y = " + v[1]);
 

Parameters:
index - The index of the element, starting at 0.
value - An array of at least two float values that gets filled with the vector. The first value gets filled with the x component of the vector, and the second value with the y component.
Throws:
java.lang.ArrayIndexOutOfBoundsException - when the index is invalid, or the value array has less than two elements.