14 public MFColor(
float[] colors) {
15 this(colors.length, colors);
18 public MFColor(
int size,
float[] colors) {
19 for (
int i = 0; i < size; i += 3)
20 __vect.addElement(
new ConstSFColor(colors[i], colors[i+1], colors[i+2]));
23 public MFColor(
float[][] colors) {
24 for (
int i = 0; i < colors.length; i++)
25 __vect.addElement(
new ConstSFColor(colors[i][0], colors[i][1], colors[i][2]));
28 public void getValue(
float[] colors) {
30 int size = __vect.size();
31 for (
int i = 0; i < size; i++) {
33 colors[3*i+0] = sfColor.red;
34 colors[3*i+1] = sfColor.green;
35 colors[3*i+2] = sfColor.blue;
39 public void getValue(
float[][] colors) {
41 int size = __vect.size();
42 for (
int i = 0; i < size; i++)
43 ((
ConstSFColor) __vect.elementAt(i)).getValue(colors[i]);
46 public void get1Value(
int index,
float[] colors) {
48 ((
ConstSFColor) __vect.elementAt(index)).getValue(colors);
51 public void get1Value(
int index,
SFColor sfColor) {
53 sfColor.setValue((
ConstSFColor) __vect.elementAt(index));
56 public void setValue(
float[] colors) {
57 setValue(colors.length, colors);
60 public void setValue(
int size,
float[] colors) {
62 for (
int i = 0; i < size; i += 3)
63 __vect.addElement(
new ConstSFColor(colors[i], colors[i+1], colors[i+2]));
67 public void set1Value(
int index,
float red,
float green,
float blue) {
71 public void set1Value(
int index,
SFColor sfColor) {
72 sfColor.__updateRead();
73 __set1Value(index,
new ConstSFColor(sfColor.red, sfColor.green, sfColor.blue));
77 __set1Value(index, sfColor);
80 public void addValue(
float red,
float green,
float blue) {
84 public void addValue(
SFColor sfColor) {
85 sfColor.__updateRead();
86 __addValue(
new ConstSFColor(sfColor.red, sfColor.green, sfColor.blue));
93 public void insertValue(
int index,
float red,
float green,
float blue) {
94 __insertValue(index,
new ConstSFColor(red, green, blue));
97 public void insertValue(
int index,
SFColor sfColor) {
98 sfColor.__updateRead();
99 __insertValue(index,
new ConstSFColor(sfColor.red, sfColor.green, sfColor.blue));
102 public void insertValue(
int index,
ConstSFColor sfColor) {
103 __insertValue(index, sfColor);
106 public String toString() {
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));
114 return sb.append(
"]").toString();
117 public void __fromPerl(BufferedReader in)
throws IOException {
119 String lenline = in.readLine();
122 int len = Integer.parseInt(lenline);
123 for (
int i = 0; i < len; i++) {
126 __vect.addElement(sf);
130 public void __toPerl(PrintWriter out)
throws IOException {
131 StringBuffer sb =
new StringBuffer(
"");
132 int size = __vect.size();
134 for (
int i = 0; i < size; i++) {
136 if (i != (size-1)) out.print (
", ");