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