FreeWRL/FreeX3D  3.0.0
MFVec2f.java
1 //AUTOMATICALLY GENERATED BY genfields.pl.
2 //DO NOT EDIT!!!!
3 
4 package vrml.field;
5 import vrml.*;
6 import java.io.BufferedReader;
7 import java.io.PrintWriter;
8 import java.io.IOException;
9 
10 public class MFVec2f extends MField {
11  public MFVec2f() {
12  }
13 
14  public MFVec2f(float[] vec2fs) {
15  this(vec2fs.length, vec2fs);
16  }
17 
18  public MFVec2f(int size, float[] vec2fs) {
19  for (int i = 0; i < size; i += 2)
20  __vect.addElement(new ConstSFVec2f(vec2fs[i], vec2fs[i+1]));
21  }
22 
23  public MFVec2f(float[][] vec2fs) {
24  for (int i = 0; i < vec2fs.length; i++)
25  __vect.addElement(new ConstSFVec2f(vec2fs[i][0], vec2fs[i][1]));
26  }
27 
28  public void getValue(float[] vec2fs) {
29  __updateRead();
30  int size = __vect.size();
31  for (int i = 0; i < size; i++) {
32  ConstSFVec2f sfVec2f = (ConstSFVec2f) __vect.elementAt(i);
33  vec2fs[2*i+0] = sfVec2f.x;
34  vec2fs[2*i+1] = sfVec2f.y;
35  }
36  }
37 
38  public void getValue(float[][] vec2fs) {
39  __updateRead();
40  int size = __vect.size();
41  for (int i = 0; i < size; i++)
42  ((ConstSFVec2f) __vect.elementAt(i)).getValue(vec2fs[i]);
43  }
44 
45  public void get1Value(int index, float[] vec2fs) {
46  __update1Read(index);
47  ((ConstSFVec2f) __vect.elementAt(index)).getValue(vec2fs);
48  }
49 
50  public void get1Value(int index, SFVec2f sfVec2f) {
51  __update1Read(index);
52  sfVec2f.setValue((ConstSFVec2f) __vect.elementAt(index));
53  }
54 
55  public void setValue(float[] vec2fs) {
56  setValue(vec2fs.length, vec2fs);
57  }
58 
59  public void setValue(int size, float[] vec2fs) {
60  __vect.clear();
61  for (int i = 0; i < size; i += 2)
62  __vect.addElement(new ConstSFVec2f(vec2fs[i], vec2fs[i+1]));
63  __updateWrite();
64  }
65 
66  public void set1Value(int index, float x, float y) {
67  __set1Value(index, new ConstSFVec2f(x, y));
68  }
69 
70  public void set1Value(int index, SFVec2f sfVec2f) {
71  sfVec2f.__updateRead();
72  __set1Value(index, new ConstSFVec2f(sfVec2f.x, sfVec2f.y));
73  }
74 
75  public void set1Value(int index, ConstSFVec2f sfVec2f) {
76  __set1Value(index, sfVec2f);
77  }
78 
79  public void addValue(float x, float y) {
80  __addValue(new ConstSFVec2f(x, y));
81  }
82 
83  public void addValue(SFVec2f sfVec2f) {
84  sfVec2f.__updateRead();
85  __addValue(new ConstSFVec2f(sfVec2f.x, sfVec2f.y));
86  }
87 
88  public void addValue(ConstSFVec2f sfVec2f) {
89  __addValue(sfVec2f);
90  }
91 
92  public void insertValue(int index, float x, float y) {
93  __insertValue(index, new ConstSFVec2f(x, y));
94  }
95 
96  public void insertValue(int index, SFVec2f sfVec2f) {
97  sfVec2f.__updateRead();
98  __insertValue(index, new ConstSFVec2f(sfVec2f.x, sfVec2f.y));
99  }
100 
101  public void insertValue(int index, ConstSFVec2f sfVec2f) {
102  __insertValue(index, sfVec2f);
103  }
104 
105  public String toString() {
106  __updateRead();
107  StringBuffer sb = new StringBuffer("[");
108  int size = __vect.size();
109  for (int i = 0; i < size; i++) {
110  if (i > 0) sb.append(", ");
111  sb.append(__vect.elementAt(i));
112  }
113  return sb.append("]").toString();
114  }
115 
116  public void __fromPerl(BufferedReader in) throws IOException {
117  __vect.clear();
118  String lenline = in.readLine();
119  //System.out.println ("__fromPerl, read in length as " + lenline);
120  //int len = Integer.parseInt(in.readLine());
121  int len = Integer.parseInt(lenline);
122  for (int i = 0; i < len; i++) {
123  ConstSFVec2f sf = new ConstSFVec2f();
124  sf.__fromPerl(in);
125  __vect.addElement(sf);
126  }
127  }
128 
129  public void __toPerl(PrintWriter out) throws IOException {
130  StringBuffer sb = new StringBuffer("");
131  int size = __vect.size();
132  //out.print(size);
133  for (int i = 0; i < size; i++) {
134  ((ConstSFVec2f) __vect.elementAt(i)).__toPerl(out);
135  if (i != (size-1)) out.print (", ");
136  }
137  //out.println();
138  }
139  //public void setOffset(String offs) { this.offset = offs; } //JAS2
140  //public String getOffset() { return this.offset; } //JAS2
141 }