OSDN Git Service

[TAG]NyARToolkit/2.3.1
[nyartoolkit-and/nyartoolkit-and.git] / tags / 2.3.1 / src / jp / nyatla / nyartoolkit / core / types / matrix / NyARDoubleMatrix44.java
1 /* \r
2  * PROJECT: NyARToolkit\r
3  * --------------------------------------------------------------------------------\r
4  * This work is based on the original ARToolKit developed by\r
5  *   Hirokazu Kato\r
6  *   Mark Billinghurst\r
7  *   HITLab, University of Washington, Seattle\r
8  * http://www.hitl.washington.edu/artoolkit/\r
9  *\r
10  * The NyARToolkit is Java version ARToolkit class library.\r
11  * Copyright (C)2008 R.Iizuka\r
12  *\r
13  * This program is free software; you can redistribute it and/or\r
14  * modify it under the terms of the GNU General Public License\r
15  * as published by the Free Software Foundation; either version 2\r
16  * of the License, or (at your option) any later version.\r
17  * \r
18  * This program is distributed in the hope that it will be useful,\r
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
21  * GNU General Public License for more details.\r
22  * \r
23  * You should have received a copy of the GNU General Public License\r
24  * along with this framework; if not, write to the Free Software\r
25  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\r
26  * \r
27  * For further information please contact.\r
28  *      http://nyatla.jp/nyatoolkit/\r
29  *      <airmail(at)ebony.plala.or.jp>\r
30  * \r
31  */\r
32 package jp.nyatla.nyartoolkit.core.types.matrix;\r
33 \r
34 \r
35 public class NyARDoubleMatrix44 implements INyARDoubleMatrix\r
36 {\r
37         public double m00;\r
38         public double m01;\r
39         public double m02;\r
40         public double m03;\r
41         public double m10;\r
42         public double m11;\r
43         public double m12;\r
44         public double m13;\r
45         public double m20;\r
46         public double m21;\r
47         public double m22;\r
48         public double m23;\r
49         public double m30;\r
50         public double m31;\r
51         public double m32;\r
52         public double m33;\r
53         public static NyARDoubleMatrix44[] createArray(int i_number)\r
54         {\r
55                 NyARDoubleMatrix44[] ret=new NyARDoubleMatrix44[i_number];\r
56                 for(int i=0;i<i_number;i++)\r
57                 {\r
58                         ret[i]=new NyARDoubleMatrix44();\r
59                 }\r
60                 return ret;\r
61         }\r
62         /**\r
63          * 遅いからあんまり使わないでね。\r
64          */\r
65         public void setValue(double[] i_value)\r
66         {\r
67                 this.m00=i_value[ 0];\r
68                 this.m01=i_value[ 1];\r
69                 this.m02=i_value[ 2];\r
70                 this.m03=i_value[ 3];\r
71                 this.m10=i_value[ 4];\r
72                 this.m11=i_value[ 5];\r
73                 this.m12=i_value[ 6];\r
74                 this.m13=i_value[ 7];\r
75                 this.m20=i_value[ 8];\r
76                 this.m21=i_value[ 9];\r
77                 this.m22=i_value[10];\r
78                 this.m23=i_value[11];\r
79                 this.m30=i_value[12];\r
80                 this.m31=i_value[13];\r
81                 this.m32=i_value[14];\r
82                 this.m33=i_value[15];\r
83                 return;\r
84         }\r
85         /**\r
86          * 遅いからあんまり使わないでね。\r
87          */\r
88         public void getValue(double[] o_value)\r
89         {\r
90                 o_value[ 0]=this.m00;\r
91                 o_value[ 1]=this.m01;\r
92                 o_value[ 2]=this.m02;\r
93                 o_value[ 3]=this.m03;\r
94                 o_value[ 4]=this.m10;\r
95                 o_value[ 5]=this.m11;\r
96                 o_value[ 6]=this.m12;\r
97                 o_value[ 7]=this.m13;\r
98                 o_value[ 8]=this.m20;\r
99                 o_value[ 9]=this.m21;\r
100                 o_value[10]=this.m22;\r
101                 o_value[11]=this.m23;\r
102                 o_value[12]=this.m30;\r
103                 o_value[13]=this.m31;\r
104                 o_value[14]=this.m32;\r
105                 o_value[15]=this.m33;\r
106                 return;\r
107         }\r
108 }\r