Vmd2XMLは、3D動画制作ツール、MikuMikuDance(MMD)で用いられるモーションデータファイル(*.vmd)の内容を、XML形式のデータファイルと交換するためのアプリケーションです。
Revision | eb7cd59c669e9d3bd29e9290c146e972cd6349ff (tree) |
---|---|
Zeit | 2019-07-04 13:51:58 |
Autor | Olyutorskii <olyutorskii@user...> |
Commiter | Olyutorskii |
modify javadoc paragraph.
@@ -31,12 +31,11 @@ | ||
31 | 31 | <suppress files="" checks="ImportControl" /> |
32 | 32 | |
33 | 33 | <!-- Javadoc Comments --> |
34 | - <suppress files="" checks="JavadocParagraph" /> | |
35 | - <suppress files="" checks="JavadocTagContinuationIndentation" /> | |
36 | 34 | <suppress files="" checks="SummaryJavadocCheck" /> |
37 | 35 | |
38 | 36 | <!-- Miscellaneous --> |
39 | 37 | <suppress files="" checks="FinalParameters" /> |
38 | + <suppress files="" checks="OrderedProperties" /> | |
40 | 39 | <suppress files="" checks="TrailingComment" /> |
41 | 40 | |
42 | 41 | <!-- Modifier --> |
@@ -189,7 +189,10 @@ | ||
189 | 189 | <module name="RequireThis"> |
190 | 190 | <property name="checkMethods" value="false" /> |
191 | 191 | </module> |
192 | - <module name="ReturnCount" /> | |
192 | + <module name="ReturnCount"> | |
193 | + <property name="max" value="5" /> | |
194 | + <property name="maxForVoid" value="5" /> | |
195 | + </module> | |
193 | 196 | <module name="SimplifyBooleanExpression" /> |
194 | 197 | <module name="SimplifyBooleanReturn" /> |
195 | 198 | <module name="StringLiteralEquality" /> |
@@ -11,7 +11,9 @@ import java.text.MessageFormat; | ||
11 | 11 | |
12 | 12 | /** |
13 | 13 | * 三次ベジェ曲線による補間カーブを記述する。 |
14 | + * | |
14 | 15 | * <p>制御点P0,P1,P2,P3の座標により記述される。 |
16 | + * | |
15 | 17 | * <p>P0は(0,0)で固定。P3は(127,127)で固定。 |
16 | 18 | * 残りのP1,P2は、P0,P3を対角線とする正方形の内部に位置しなければならない。 |
17 | 19 | */ |
@@ -72,6 +74,7 @@ public class BezierParam { | ||
72 | 74 | |
73 | 75 | /** |
74 | 76 | * コンストラクタ。 |
77 | + * | |
75 | 78 | * <p>デフォルトの直線補間が設定される。 |
76 | 79 | */ |
77 | 80 | public BezierParam(){ |
@@ -81,6 +84,7 @@ public class BezierParam { | ||
81 | 84 | |
82 | 85 | /** |
83 | 86 | * 制御点P1のX座標を返す。 |
87 | + * | |
84 | 88 | * @return 制御点P1のX座標 |
85 | 89 | */ |
86 | 90 | public byte getP1x() { |
@@ -89,6 +93,7 @@ public class BezierParam { | ||
89 | 93 | |
90 | 94 | /** |
91 | 95 | * 制御点P1のY座標を返す。 |
96 | + * | |
92 | 97 | * @return 制御点P1のY座標 |
93 | 98 | */ |
94 | 99 | public byte getP1y() { |
@@ -97,6 +102,7 @@ public class BezierParam { | ||
97 | 102 | |
98 | 103 | /** |
99 | 104 | * 制御点P2のX座標を返す。 |
105 | + * | |
100 | 106 | * @return 制御点P2のX座標 |
101 | 107 | */ |
102 | 108 | public byte getP2x() { |
@@ -105,6 +111,7 @@ public class BezierParam { | ||
105 | 111 | |
106 | 112 | /** |
107 | 113 | * 制御点P2のY座標を返す。 |
114 | + * | |
108 | 115 | * @return 制御点P2のY座標 |
109 | 116 | */ |
110 | 117 | public byte getP2y() { |
@@ -113,6 +120,7 @@ public class BezierParam { | ||
113 | 120 | |
114 | 121 | /** |
115 | 122 | * 制御点P1のX座標を設定する。 |
123 | + * | |
116 | 124 | * @param p1x 制御点P1のX座標 |
117 | 125 | */ |
118 | 126 | public void setP1x(byte p1x) { |
@@ -122,6 +130,7 @@ public class BezierParam { | ||
122 | 130 | |
123 | 131 | /** |
124 | 132 | * 制御点P1のY座標を設定する。 |
133 | + * | |
125 | 134 | * @param p1y 制御点P1のY座標 |
126 | 135 | */ |
127 | 136 | public void setP1y(byte p1y) { |
@@ -131,6 +140,7 @@ public class BezierParam { | ||
131 | 140 | |
132 | 141 | /** |
133 | 142 | * 制御点P2のX座標を設定する。 |
143 | + * | |
134 | 144 | * @param p2x 制御点P2のX座標 |
135 | 145 | */ |
136 | 146 | public void setP2x(byte p2x) { |
@@ -140,6 +150,7 @@ public class BezierParam { | ||
140 | 150 | |
141 | 151 | /** |
142 | 152 | * 制御点P2のY座標を設定する。 |
153 | + * | |
143 | 154 | * @param p2y 制御点P2のY座標 |
144 | 155 | */ |
145 | 156 | public void setP2y(byte p2y) { |
@@ -149,6 +160,7 @@ public class BezierParam { | ||
149 | 160 | |
150 | 161 | /** |
151 | 162 | * 制御点P1の座標を設定する。 |
163 | + * | |
152 | 164 | * @param p1xArg 制御点P1のX座標 |
153 | 165 | * @param p1yArg 制御点P1のY座標 |
154 | 166 | */ |
@@ -160,6 +172,7 @@ public class BezierParam { | ||
160 | 172 | |
161 | 173 | /** |
162 | 174 | * 制御点P2の座標を設定する。 |
175 | + * | |
163 | 176 | * @param p2xArg 制御点P2のX座標 |
164 | 177 | * @param p2yArg 制御点P2のY座標 |
165 | 178 | */ |
@@ -171,7 +184,9 @@ public class BezierParam { | ||
171 | 184 | |
172 | 185 | /** |
173 | 186 | * 直線補間か判定する。 |
187 | + * | |
174 | 188 | * <p>P1,P2双方がP0-P3対角線上に存在する場合を直線補間とする。 |
189 | + * | |
175 | 190 | * @return 直線補間ならtrue |
176 | 191 | */ |
177 | 192 | public boolean isLinear(){ |
@@ -182,6 +197,7 @@ public class BezierParam { | ||
182 | 197 | |
183 | 198 | /** |
184 | 199 | * MMDデフォルトの直線補間か判定する。 |
200 | + * | |
185 | 201 | * @return MMDデフォルトの直線補間ならtrue |
186 | 202 | */ |
187 | 203 | public boolean isDefaultLinear(){ |
@@ -196,6 +212,7 @@ public class BezierParam { | ||
196 | 212 | |
197 | 213 | /** |
198 | 214 | * MMDデフォルトのEaseInOutカーブか判定する。 |
215 | + * | |
199 | 216 | * @return MMDデフォルトのEaseInOutカーブならtrue |
200 | 217 | */ |
201 | 218 | public boolean isDefaultEaseInOut(){ |
@@ -232,6 +249,7 @@ public class BezierParam { | ||
232 | 249 | |
233 | 250 | /** |
234 | 251 | * {@inheritDoc} |
252 | + * | |
235 | 253 | * @return {@inheritDoc} |
236 | 254 | */ |
237 | 255 | @Override |
@@ -14,6 +14,7 @@ import jp.sfjp.mikutoga.vmd.AbstractNumbered; | ||
14 | 14 | |
15 | 15 | /** |
16 | 16 | * ボーンのモーション情報。 |
17 | + * | |
17 | 18 | * <p>ボーン名、ボーン位置、ボーン回転量、及び補間カーブ情報を持つ。 |
18 | 19 | */ |
19 | 20 | public class BoneMotion extends AbstractNumbered { |
@@ -45,6 +46,7 @@ public class BoneMotion extends AbstractNumbered { | ||
45 | 46 | |
46 | 47 | /** |
47 | 48 | * ボーン名を返す。 |
49 | + * | |
48 | 50 | * @return ボーン名 |
49 | 51 | */ |
50 | 52 | public String getBoneName(){ |
@@ -53,6 +55,7 @@ public class BoneMotion extends AbstractNumbered { | ||
53 | 55 | |
54 | 56 | /** |
55 | 57 | * ボーン名を設定する。 |
58 | + * | |
56 | 59 | * @param boneName ボーン名 |
57 | 60 | */ |
58 | 61 | public void setBoneName(String boneName){ |
@@ -62,6 +65,7 @@ public class BoneMotion extends AbstractNumbered { | ||
62 | 65 | |
63 | 66 | /** |
64 | 67 | * ボーン回転量を返す。 |
68 | + * | |
65 | 69 | * @return ボーン回転量 |
66 | 70 | */ |
67 | 71 | public MkQuat getRotation(){ |
@@ -70,6 +74,7 @@ public class BoneMotion extends AbstractNumbered { | ||
70 | 74 | |
71 | 75 | /** |
72 | 76 | * ボーン回転の補間曲線情報を返す。 |
77 | + * | |
73 | 78 | * @return ボーン回転の補間曲線情報 |
74 | 79 | */ |
75 | 80 | public BezierParam getIntpltRotation(){ |
@@ -78,6 +83,7 @@ public class BoneMotion extends AbstractNumbered { | ||
78 | 83 | |
79 | 84 | /** |
80 | 85 | * ボーン位置を返す。 |
86 | + * | |
81 | 87 | * @return ボーン位置 |
82 | 88 | */ |
83 | 89 | public MkPos3D getPosition(){ |
@@ -86,6 +92,7 @@ public class BoneMotion extends AbstractNumbered { | ||
86 | 92 | |
87 | 93 | /** |
88 | 94 | * ボーン位置移動の補間情報を返す。 |
95 | + * | |
89 | 96 | * @return ボーン位置移動の補間情報 |
90 | 97 | */ |
91 | 98 | public PosCurve getPosCurve(){ |
@@ -94,12 +101,16 @@ public class BoneMotion extends AbstractNumbered { | ||
94 | 101 | |
95 | 102 | /** |
96 | 103 | * このモーションが暗黙の位置情報を持つか判定する。 |
104 | + * | |
97 | 105 | * <p>ボーン位置が原点(0,0,0)にあり、 |
98 | 106 | * XYZ3軸の移動補間カーブがデフォルト直線補間の場合、 |
99 | 107 | * 暗黙の位置情報と見なされる。 |
108 | + * | |
100 | 109 | * <p>MMDは、位置情報を持たないボーンのモーションに対し |
101 | 110 | * 便宜的にこの暗黙の位置情報を割り当てる。 |
111 | + * | |
102 | 112 | * <p>通常の位置モーションが暗黙の位置情報と一致する場合もありうる。 |
113 | + * | |
103 | 114 | * @return 暗黙の位置情報であるならtrue |
104 | 115 | */ |
105 | 116 | public boolean hasImplicitPosition(){ |
@@ -111,6 +122,7 @@ public class BoneMotion extends AbstractNumbered { | ||
111 | 122 | |
112 | 123 | /** |
113 | 124 | * {@inheritDoc} |
125 | + * | |
114 | 126 | * @return {@inheritDoc} |
115 | 127 | */ |
116 | 128 | @Override |
@@ -13,11 +13,14 @@ import jp.sfjp.mikutoga.vmd.AbstractNumbered; | ||
13 | 13 | |
14 | 14 | /** |
15 | 15 | * カメラモーション情報。 |
16 | + * | |
16 | 17 | * <p>カメラの回転は極座標で表される。 |
18 | + * | |
17 | 19 | * <p>カメラ-ターゲット間の距離は球座標(極座標)の動径に相当する。 |
18 | 20 | * 通常はターゲットより手前に位置するカメラまでの距離が負の値で表される。 |
19 | 21 | * カメラ位置がターゲットを突き抜けた場合は正の値もとりうる。 |
20 | 22 | * ※MMDのUIと符号が逆なので注意。 |
23 | + * | |
21 | 24 | * <p>パースペクティブモードがOFFの場合、 |
22 | 25 | * 画角は無視され遠近感処理が行われなくなる。(平行投影?) |
23 | 26 | */ |
@@ -57,6 +60,7 @@ public class CameraMotion extends AbstractNumbered { | ||
57 | 60 | |
58 | 61 | /** |
59 | 62 | * ターゲット位置情報を返す。 |
63 | + * | |
60 | 64 | * @return ターゲット位置情報 |
61 | 65 | */ |
62 | 66 | public MkPos3D getCameraTarget(){ |
@@ -65,6 +69,7 @@ public class CameraMotion extends AbstractNumbered { | ||
65 | 69 | |
66 | 70 | /** |
67 | 71 | * ターゲット位置移動の補間情報を返す。 |
72 | + * | |
68 | 73 | * @return ターゲット位置移動の補間情報 |
69 | 74 | */ |
70 | 75 | public PosCurve getTargetPosCurve(){ |
@@ -73,6 +78,7 @@ public class CameraMotion extends AbstractNumbered { | ||
73 | 78 | |
74 | 79 | /** |
75 | 80 | * カメラ回転情報を返す。 |
81 | + * | |
76 | 82 | * @return カメラ回転情報 |
77 | 83 | */ |
78 | 84 | public CameraRotation getCameraRotation(){ |
@@ -81,6 +87,7 @@ public class CameraMotion extends AbstractNumbered { | ||
81 | 87 | |
82 | 88 | /** |
83 | 89 | * カメラ回転の補間曲線情報を返す。 |
90 | + * | |
84 | 91 | * @return カメラ回転の補間曲線情報 |
85 | 92 | */ |
86 | 93 | public BezierParam getIntpltRotation(){ |
@@ -89,6 +96,7 @@ public class CameraMotion extends AbstractNumbered { | ||
89 | 96 | |
90 | 97 | /** |
91 | 98 | * カメラ-ターゲット間の距離を返す。 |
99 | + * | |
92 | 100 | * @return カメラ-ターゲット間の距離 |
93 | 101 | */ |
94 | 102 | public double getRange(){ |
@@ -97,6 +105,7 @@ public class CameraMotion extends AbstractNumbered { | ||
97 | 105 | |
98 | 106 | /** |
99 | 107 | * カメラ-ターゲット間の距離を設定する。 |
108 | + * | |
100 | 109 | * @param range カメラ-ターゲット間の距離 |
101 | 110 | */ |
102 | 111 | public void setRange(double range){ |
@@ -106,6 +115,7 @@ public class CameraMotion extends AbstractNumbered { | ||
106 | 115 | |
107 | 116 | /** |
108 | 117 | * カメラ-ターゲット間距離の補間曲線情報を返す。 |
118 | + * | |
109 | 119 | * @return カメラ-ターゲット間距離の補間曲線情報 |
110 | 120 | */ |
111 | 121 | public BezierParam getIntpltRange(){ |
@@ -114,6 +124,7 @@ public class CameraMotion extends AbstractNumbered { | ||
114 | 124 | |
115 | 125 | /** |
116 | 126 | * パースペクティブが有効か判定する。 |
127 | + * | |
117 | 128 | * @return パースペクティブが有効ならtrue |
118 | 129 | */ |
119 | 130 | public boolean hasPerspective(){ |
@@ -122,6 +133,7 @@ public class CameraMotion extends AbstractNumbered { | ||
122 | 133 | |
123 | 134 | /** |
124 | 135 | * パースペクティブモードを設定する。 |
136 | + * | |
125 | 137 | * @param mode trueを渡すとパースペクティブが有効になる。 |
126 | 138 | */ |
127 | 139 | public void setPerspectiveMode(boolean mode){ |
@@ -131,6 +143,7 @@ public class CameraMotion extends AbstractNumbered { | ||
131 | 143 | |
132 | 144 | /** |
133 | 145 | * 投影角度(スクリーン縦画角)を返す。 |
146 | + * | |
134 | 147 | * @return 投影角度(度数法) |
135 | 148 | */ |
136 | 149 | public int getProjectionAngle(){ |
@@ -139,6 +152,7 @@ public class CameraMotion extends AbstractNumbered { | ||
139 | 152 | |
140 | 153 | /** |
141 | 154 | * 投影角度(スクリーン縦画角)を設定する。 |
155 | + * | |
142 | 156 | * @param angle 投影角度(度数法) |
143 | 157 | */ |
144 | 158 | public void setProjectionAngle(int angle){ |
@@ -148,6 +162,7 @@ public class CameraMotion extends AbstractNumbered { | ||
148 | 162 | |
149 | 163 | /** |
150 | 164 | * スクリーン投射の補間曲線情報を返す。 |
165 | + * | |
151 | 166 | * @return スクリーン投射の補間曲線情報 |
152 | 167 | */ |
153 | 168 | public BezierParam getIntpltProjection(){ |
@@ -156,6 +171,7 @@ public class CameraMotion extends AbstractNumbered { | ||
156 | 171 | |
157 | 172 | /** |
158 | 173 | * {@inheritDoc} |
174 | + * | |
159 | 175 | * @return {@inheritDoc} |
160 | 176 | */ |
161 | 177 | @Override |
@@ -13,17 +13,20 @@ import java.text.MessageFormat; | ||
13 | 13 | * 左手系空間でターゲットの周りを回るカメラの回転情報。 |
14 | 14 | * いずれもカメラ姿勢ではなくカメラ運動量を示すため、 |
15 | 15 | * 回転量0と2Πの区別には意味がある。 |
16 | + * | |
16 | 17 | * <p>latitudeはターゲットから見たカメラの仰俯角(≒緯度)。 |
17 | 18 | * 単位はラジアン。 |
18 | 19 | * Y軸回転量が0の時のZ正軸がY正軸へ倒れる方向が正回転。 |
19 | 20 | * (MMDのUIとは符号が逆になるので注意) |
20 | 21 | * 仰俯角が0の場合、 |
21 | 22 | * カメラはターゲットに対しXZ平面(水平)と平行な箇所に位置する。 |
23 | + * | |
22 | 24 | * <p>longitudeはY軸周りの回転量(≒経度)。 |
23 | 25 | * 単位はラジアン。 |
24 | 26 | * X正軸がZ正軸へ倒れる方向が正回転。(ボーン回転と逆) |
25 | 27 | * 仰俯角およびY軸回転量が0の場合、 |
26 | 28 | * カメラレンズはZ軸-∞方向からZ軸+∞方向を向く。 |
29 | + * | |
27 | 30 | * <p>rollはレンズをターゲットを向けたカメラのロール回転量。 |
28 | 31 | * 単位はラジアン。 |
29 | 32 | * 仰俯角とY軸回転量が0の時にY正軸がX正軸に倒れる方向が正回転。 |
@@ -51,6 +54,7 @@ public class CameraRotation { | ||
51 | 54 | |
52 | 55 | /** |
53 | 56 | * ターゲットから見たカメラの仰俯角(≒緯度)を返す。 |
57 | + * | |
54 | 58 | * @return ターゲットから見たカメラの仰俯角(≒緯度) |
55 | 59 | */ |
56 | 60 | public double getLatitude(){ |
@@ -59,6 +63,7 @@ public class CameraRotation { | ||
59 | 63 | |
60 | 64 | /** |
61 | 65 | * ターゲットから見たカメラの仰俯角(≒緯度)を設定する。 |
66 | + * | |
62 | 67 | * @param latitude ターゲットから見たカメラの仰俯角(≒緯度) |
63 | 68 | */ |
64 | 69 | public void setLatitude(double latitude){ |
@@ -68,6 +73,7 @@ public class CameraRotation { | ||
68 | 73 | |
69 | 74 | /** |
70 | 75 | * Y軸周りの回転量(≒経度)を返す。 |
76 | + * | |
71 | 77 | * @return Y軸周りの回転量(≒経度) |
72 | 78 | */ |
73 | 79 | public double getLongitude(){ |
@@ -76,6 +82,7 @@ public class CameraRotation { | ||
76 | 82 | |
77 | 83 | /** |
78 | 84 | * Y軸周りの回転量(≒経度)を設定する。 |
85 | + * | |
79 | 86 | * @param longitude Y軸周りの回転量(≒経度) |
80 | 87 | */ |
81 | 88 | public void setLongitude(double longitude){ |
@@ -85,6 +92,7 @@ public class CameraRotation { | ||
85 | 92 | |
86 | 93 | /** |
87 | 94 | * レンズをターゲットを向けたカメラのロール回転量を返す。 |
95 | + * | |
88 | 96 | * @return レンズをターゲットを向けたカメラのロール回転量 |
89 | 97 | */ |
90 | 98 | public double getRoll(){ |
@@ -93,6 +101,7 @@ public class CameraRotation { | ||
93 | 101 | |
94 | 102 | /** |
95 | 103 | * レンズをターゲットを向けたカメラのロール回転量を設定する。 |
104 | + * | |
96 | 105 | * @param roll レンズをターゲットを向けたカメラのロール回転量 |
97 | 106 | */ |
98 | 107 | public void setRoll(double roll){ |
@@ -102,6 +111,7 @@ public class CameraRotation { | ||
102 | 111 | |
103 | 112 | /** |
104 | 113 | * {@inheritDoc} |
114 | + * | |
105 | 115 | * @return {@inheritDoc} |
106 | 116 | */ |
107 | 117 | @Override |
@@ -11,9 +11,12 @@ import java.text.MessageFormat; | ||
11 | 11 | |
12 | 12 | /** |
13 | 13 | * 光源の色設定。 |
14 | + * | |
14 | 15 | * <p>色情報はRGB色空間で記述される。 |
16 | + * | |
15 | 17 | * <p>MMDのUI上の各色成分指定0~255定義域に便宜上256を追加したものが、 |
16 | 18 | * 0.0以上1.0以下にマップされる。 |
19 | + * | |
17 | 20 | * <ul> |
18 | 21 | * <li>0は正しく0.0にマップされる。 |
19 | 22 | * <li>128は正しく0.5にマップされる。 |
@@ -35,6 +38,7 @@ public class LuminousColor { | ||
35 | 38 | |
36 | 39 | /** |
37 | 40 | * コンストラクタ。 |
41 | + * | |
38 | 42 | * <p>MMDデフォルトの光源色(154,154,154)が設定される。 |
39 | 43 | */ |
40 | 44 | public LuminousColor(){ |
@@ -45,6 +49,7 @@ public class LuminousColor { | ||
45 | 49 | |
46 | 50 | /** |
47 | 51 | * 光源の赤成分を設定する。 |
52 | + * | |
48 | 53 | * @param colR 赤成分 |
49 | 54 | */ |
50 | 55 | public void setColR(float colR) { |
@@ -54,6 +59,7 @@ public class LuminousColor { | ||
54 | 59 | |
55 | 60 | /** |
56 | 61 | * 光源の緑成分を設定する。 |
62 | + * | |
57 | 63 | * @param colG 緑成分 |
58 | 64 | */ |
59 | 65 | public void setColG(float colG) { |
@@ -63,6 +69,7 @@ public class LuminousColor { | ||
63 | 69 | |
64 | 70 | /** |
65 | 71 | * 光源の青成分を設定する。 |
72 | + * | |
66 | 73 | * @param colB 青成分 |
67 | 74 | */ |
68 | 75 | public void setColB(float colB) { |
@@ -72,6 +79,7 @@ public class LuminousColor { | ||
72 | 79 | |
73 | 80 | /** |
74 | 81 | * 光源の赤成分を返す。 |
82 | + * | |
75 | 83 | * @return 赤成分 |
76 | 84 | */ |
77 | 85 | public float getColR(){ |
@@ -80,6 +88,7 @@ public class LuminousColor { | ||
80 | 88 | |
81 | 89 | /** |
82 | 90 | * 光源の緑成分を返す。 |
91 | + * | |
83 | 92 | * @return 緑成分 |
84 | 93 | */ |
85 | 94 | public float getColG(){ |
@@ -88,6 +97,7 @@ public class LuminousColor { | ||
88 | 97 | |
89 | 98 | /** |
90 | 99 | * 光源の青成分を返す。 |
100 | + * | |
91 | 101 | * @return 青成分 |
92 | 102 | */ |
93 | 103 | public float getColB(){ |
@@ -96,6 +106,7 @@ public class LuminousColor { | ||
96 | 106 | |
97 | 107 | /** |
98 | 108 | * {@inheritDoc} |
109 | + * | |
99 | 110 | * @return {@inheritDoc} |
100 | 111 | */ |
101 | 112 | @Override |
@@ -13,15 +13,20 @@ import jp.sfjp.mikutoga.vmd.AbstractNumbered; | ||
13 | 13 | |
14 | 14 | /** |
15 | 15 | * 光源演出情報。 |
16 | + * | |
16 | 17 | * <p>照明方向は、 |
17 | 18 | * ワールド座標原点から伸びる方向ベクトルとして記述される。 |
18 | 19 | * この方向ベクトルに向けて、無限遠の光源から照明が当たる。 |
20 | + * | |
19 | 21 | * <p>MMDのスライダUI上では |
20 | 22 | * 方向ベクトル各軸成分の定義域は-1.0以上+1.0以下だが、 |
21 | 23 | * さらに絶対値の大きな値を指定することも可能。 |
24 | + * | |
22 | 25 | * <p>方向ベクトルの長さは演出上の意味を持たないが、 |
23 | 26 | * キーフレーム間の照明方向の補間に影響を及ぼすかもしれない。 |
27 | + * | |
24 | 28 | * <p>方向ベクトルが零ベクトル(0,0,0)の場合、MMDでは全ポリゴンに影が落ちる。 |
29 | + * | |
25 | 30 | */ |
26 | 31 | public class LuminousMotion extends AbstractNumbered { |
27 | 32 |
@@ -52,6 +57,7 @@ public class LuminousMotion extends AbstractNumbered { | ||
52 | 57 | |
53 | 58 | /** |
54 | 59 | * 光源の色情報を返す。 |
60 | + * | |
55 | 61 | * @return 光源の色情報 |
56 | 62 | */ |
57 | 63 | public LuminousColor getColor(){ |
@@ -60,6 +66,7 @@ public class LuminousMotion extends AbstractNumbered { | ||
60 | 66 | |
61 | 67 | /** |
62 | 68 | * 光源からの照射方向情報を返す。 |
69 | + * | |
63 | 70 | * @return 光源からの照射方向情報 |
64 | 71 | */ |
65 | 72 | public MkVec3D getDirection(){ |
@@ -68,6 +75,7 @@ public class LuminousMotion extends AbstractNumbered { | ||
68 | 75 | |
69 | 76 | /** |
70 | 77 | * {@inheritDoc} |
78 | + * | |
71 | 79 | * @return {@inheritDoc} |
72 | 80 | */ |
73 | 81 | @Override |
@@ -12,6 +12,7 @@ import jp.sfjp.mikutoga.vmd.AbstractNumbered; | ||
12 | 12 | |
13 | 13 | /** |
14 | 14 | * モーフ情報。 |
15 | + * | |
15 | 16 | * <p>通常、モーフ量は0.0以上1.0以下の値をとる。 |
16 | 17 | */ |
17 | 18 | public class MorphMotion extends AbstractNumbered { |
@@ -35,6 +36,7 @@ public class MorphMotion extends AbstractNumbered { | ||
35 | 36 | |
36 | 37 | /** |
37 | 38 | * モーフ名を設定する。 |
39 | + * | |
38 | 40 | * @param morphName モーフ名 |
39 | 41 | */ |
40 | 42 | public void setMorphName(String morphName) { |
@@ -44,6 +46,7 @@ public class MorphMotion extends AbstractNumbered { | ||
44 | 46 | |
45 | 47 | /** |
46 | 48 | * モーフ名を返す。 |
49 | + * | |
47 | 50 | * @return モーフ名 |
48 | 51 | */ |
49 | 52 | public String getMorphName() { |
@@ -52,6 +55,7 @@ public class MorphMotion extends AbstractNumbered { | ||
52 | 55 | |
53 | 56 | /** |
54 | 57 | * モーフ変量を設定する。 |
58 | + * | |
55 | 59 | * @param flex 変量 |
56 | 60 | */ |
57 | 61 | public void setFlex(float flex) { |
@@ -61,6 +65,7 @@ public class MorphMotion extends AbstractNumbered { | ||
61 | 65 | |
62 | 66 | /** |
63 | 67 | * モーフ変量を返す。 |
68 | + * | |
64 | 69 | * @return 変量 |
65 | 70 | */ |
66 | 71 | public float getFlex() { |
@@ -69,6 +74,7 @@ public class MorphMotion extends AbstractNumbered { | ||
69 | 74 | |
70 | 75 | /** |
71 | 76 | * {@inheritDoc} |
77 | + * | |
72 | 78 | * @return {@inheritDoc} |
73 | 79 | */ |
74 | 80 | @Override |
@@ -30,6 +30,7 @@ public class NumberedVmdFlag | ||
30 | 30 | |
31 | 31 | /** |
32 | 32 | * コンストラクタ。 |
33 | + * | |
33 | 34 | * <p>モデル表示ありの状態で初期化される。 |
34 | 35 | */ |
35 | 36 | public NumberedVmdFlag(){ |
@@ -40,6 +41,7 @@ public class NumberedVmdFlag | ||
40 | 41 | |
41 | 42 | /** |
42 | 43 | * モデルを表示するか否か返す。 |
44 | + * | |
43 | 45 | * @return 表示するならtrue |
44 | 46 | */ |
45 | 47 | public boolean isModelShown(){ |
@@ -48,6 +50,7 @@ public class NumberedVmdFlag | ||
48 | 50 | |
49 | 51 | /** |
50 | 52 | * モデルを表示するか否か設定する。 |
53 | + * | |
51 | 54 | * @param shownArg 表示するならtrue |
52 | 55 | */ |
53 | 56 | public void setModelShown(boolean shownArg){ |
@@ -57,6 +60,7 @@ public class NumberedVmdFlag | ||
57 | 60 | |
58 | 61 | /** |
59 | 62 | * 個別IKボーンフラグのリストを返す。 |
63 | + * | |
60 | 64 | * @return 個別IKボーンフラグのリスト |
61 | 65 | */ |
62 | 66 | public List<IkSwitch> getIkSwitchList(){ |
@@ -65,6 +69,7 @@ public class NumberedVmdFlag | ||
65 | 69 | |
66 | 70 | /** |
67 | 71 | * {@inheritDoc} |
72 | + * | |
68 | 73 | * @return {@inheritDoc} |
69 | 74 | */ |
70 | 75 | @Override |
@@ -74,6 +79,7 @@ public class NumberedVmdFlag | ||
74 | 79 | |
75 | 80 | /** |
76 | 81 | * {@inheritDoc} |
82 | + * | |
77 | 83 | * @return {@inheritDoc} |
78 | 84 | */ |
79 | 85 | @Override |
@@ -14,6 +14,7 @@ import java.util.List; | ||
14 | 14 | |
15 | 15 | /** |
16 | 16 | * 3次元位置移動のモーション補間曲線情報。 |
17 | + * | |
17 | 18 | * <p>XYZ3軸それぞれに対応するベジェ曲線を3本持つ。 |
18 | 19 | */ |
19 | 20 | public class PosCurve implements Iterable<BezierParam> { |
@@ -39,7 +40,9 @@ public class PosCurve implements Iterable<BezierParam> { | ||
39 | 40 | |
40 | 41 | /** |
41 | 42 | * {@inheritDoc} |
42 | - * X軸、Y軸、Z軸の順で補間曲線情報を列挙する。 | |
43 | + * | |
44 | + * <p>X軸、Y軸、Z軸の順で補間曲線情報を列挙する。 | |
45 | + * | |
43 | 46 | * @return {@inheritDoc} 3要素を返す列挙子 |
44 | 47 | */ |
45 | 48 | @Override |
@@ -54,6 +57,7 @@ public class PosCurve implements Iterable<BezierParam> { | ||
54 | 57 | |
55 | 58 | /** |
56 | 59 | * ボーンX軸移動の補間曲線情報を返す。 |
60 | + * | |
57 | 61 | * @return ボーンX軸移動の補間曲線情報 |
58 | 62 | */ |
59 | 63 | public BezierParam getIntpltXpos(){ |
@@ -62,6 +66,7 @@ public class PosCurve implements Iterable<BezierParam> { | ||
62 | 66 | |
63 | 67 | /** |
64 | 68 | * ボーンY軸移動の補間曲線情報を返す。 |
69 | + * | |
65 | 70 | * @return ボーンY軸移動の補間曲線情報 |
66 | 71 | */ |
67 | 72 | public BezierParam getIntpltYpos(){ |
@@ -70,6 +75,7 @@ public class PosCurve implements Iterable<BezierParam> { | ||
70 | 75 | |
71 | 76 | /** |
72 | 77 | * ボーンZ軸移動の補間曲線情報を返す。 |
78 | + * | |
73 | 79 | * @return ボーンZ軸移動の補間曲線情報 |
74 | 80 | */ |
75 | 81 | public BezierParam getIntpltZpos(){ |
@@ -78,6 +84,7 @@ public class PosCurve implements Iterable<BezierParam> { | ||
78 | 84 | |
79 | 85 | /** |
80 | 86 | * 3軸ともMMDデフォルトの直線補間か判定する。 |
87 | + * | |
81 | 88 | * @return 3軸ともMMDデフォルトの直線補間ならtrue |
82 | 89 | */ |
83 | 90 | public boolean isDefaultLinear(){ |
@@ -90,6 +97,7 @@ public class PosCurve implements Iterable<BezierParam> { | ||
90 | 97 | |
91 | 98 | /** |
92 | 99 | * {@inheritDoc} |
100 | + * | |
93 | 101 | * @return {@inheritDoc} |
94 | 102 | */ |
95 | 103 | @Override |
@@ -19,6 +19,7 @@ public enum ShadowMode { | ||
19 | 19 | |
20 | 20 | /** |
21 | 21 | * シャドウ描画の質がカメラからの距離の影響をあまり受けないモード。 |
22 | + * | |
22 | 23 | * <p>※MMDのUIにおけるデフォルト。 |
23 | 24 | */ |
24 | 25 | MODE_1(0x01), |
@@ -40,19 +41,21 @@ public enum ShadowMode { | ||
40 | 41 | |
41 | 42 | /** |
42 | 43 | * コンストラクタ。 |
44 | + * | |
43 | 45 | * @param code 割り当て番号(byte) |
44 | 46 | */ |
45 | - private ShadowMode(byte code){ | |
47 | + ShadowMode(byte code){ | |
46 | 48 | this.code = code; |
47 | 49 | return; |
48 | 50 | } |
49 | 51 | |
50 | 52 | /** |
51 | 53 | * コンストラクタ。 |
54 | + * | |
52 | 55 | * @param iVal 割り当て番号(int) |
53 | - * ※上位24bitは捨てられる。 | |
56 | + * ※上位24bitは捨てられる。 | |
54 | 57 | */ |
55 | - private ShadowMode(int iVal){ | |
58 | + ShadowMode(int iVal){ | |
56 | 59 | this((byte)(iVal & MASK_8)); |
57 | 60 | return; |
58 | 61 | } |
@@ -60,6 +63,7 @@ public enum ShadowMode { | ||
60 | 63 | |
61 | 64 | /** |
62 | 65 | * byte型値に符号化された時の値を返す。 |
66 | + * | |
63 | 67 | * @return byte型値に符号化された時の値 |
64 | 68 | */ |
65 | 69 | public byte getEncodedByte(){ |
@@ -68,6 +72,7 @@ public enum ShadowMode { | ||
68 | 72 | |
69 | 73 | /** |
70 | 74 | * byte型値から描画モードを復号する。 |
75 | + * | |
71 | 76 | * @param bVal byte型値 |
72 | 77 | * @return 描画モード。未定義の値が与えられた場合はnull。 |
73 | 78 | */ |
@@ -83,7 +88,9 @@ public enum ShadowMode { | ||
83 | 88 | |
84 | 89 | /** |
85 | 90 | * int型値から描画モードを復号する。 |
91 | + * | |
86 | 92 | * <p>上位24bitは無視される。 |
93 | + * | |
87 | 94 | * @param iVal int型値 |
88 | 95 | * @return 描画モード。未定義の値が与えられた場合はnull。 |
89 | 96 | */ |
@@ -12,8 +12,10 @@ import jp.sfjp.mikutoga.vmd.AbstractNumbered; | ||
12 | 12 | |
13 | 13 | /** |
14 | 14 | * 影(セルフシャドウ)演出情報。 |
15 | + * | |
15 | 16 | * <p>カメラからの距離情報(幾何距離の100倍?)による影演出対象の範囲指定は、 |
16 | 17 | * MMDのスライダUI上では0から9999までが指定可能。 |
18 | + * | |
17 | 19 | * <p>MMDのスライダUI値SからVMDファイル上の生パラメターへの変換式は、 |
18 | 20 | * 「 0.1 - (S / 1.0E+5) 」 |
19 | 21 | * となる。 |
@@ -27,6 +29,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
27 | 29 | |
28 | 30 | /** |
29 | 31 | * デフォルトの範囲指定生パラメータ。 |
32 | + * | |
30 | 33 | * <p>MMDのスライダUI値「8875」にほぼ相当。 |
31 | 34 | */ |
32 | 35 | public static final double DEF_SCOPE = 0.01125; |
@@ -59,6 +62,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
59 | 62 | /** |
60 | 63 | * VMDファイル上の生パラメータ数値による演出対象範囲指定を、 |
61 | 64 | * MMDのUI上の距離情報(カメラからの幾何距離×100倍?)に変換する。 |
65 | + * | |
62 | 66 | * @param param 生パラメータ |
63 | 67 | * @return MMDのスライダUI上の距離情報 |
64 | 68 | */ |
@@ -72,6 +76,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
72 | 76 | /** |
73 | 77 | * MMDのUI上の距離情報(カメラからの幾何距離×100倍?)を、 |
74 | 78 | * VMDファイル上の生パラメータ数値に変換する。 |
79 | + * | |
75 | 80 | * @param scope MMDのスライダUI上の距離情報 |
76 | 81 | * @return 生パラメータ |
77 | 82 | */ |
@@ -85,6 +90,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
85 | 90 | |
86 | 91 | /** |
87 | 92 | * 影演出の範囲指定の生パラメータを設定する。 |
93 | + * | |
88 | 94 | * @param rawScopeParam 生パラメータ |
89 | 95 | */ |
90 | 96 | public void setRawScopeParam(double rawScopeParam) { |
@@ -94,6 +100,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
94 | 100 | |
95 | 101 | /** |
96 | 102 | * 影演出の範囲指定の生パラメータを返す。 |
103 | + * | |
97 | 104 | * @return 生パラメータ |
98 | 105 | */ |
99 | 106 | public double getRawScopeParam() { |
@@ -102,6 +109,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
102 | 109 | |
103 | 110 | /** |
104 | 111 | * 影演出の範囲指定のスライダUI値を設定する。 |
112 | + * | |
105 | 113 | * @param scope スライダUI値 |
106 | 114 | */ |
107 | 115 | public void setScope(double scope){ |
@@ -112,6 +120,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
112 | 120 | |
113 | 121 | /** |
114 | 122 | * 影演出の範囲指定のスライダUI値を返す。 |
123 | + * | |
115 | 124 | * @return スライダUI値 |
116 | 125 | */ |
117 | 126 | public double getScope(){ |
@@ -122,6 +131,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
122 | 131 | |
123 | 132 | /** |
124 | 133 | * 影描画モードを設定する。 |
134 | + * | |
125 | 135 | * @param shadowMode 影描画モード |
126 | 136 | * @throws NullPointerException 引数がnull |
127 | 137 | */ |
@@ -134,6 +144,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
134 | 144 | |
135 | 145 | /** |
136 | 146 | * 影描画モードを返す。 |
147 | + * | |
137 | 148 | * @return 影描画モード |
138 | 149 | */ |
139 | 150 | public ShadowMode getShadowMode(){ |
@@ -142,6 +153,7 @@ public strictfp class ShadowMotion extends AbstractNumbered { | ||
142 | 153 | |
143 | 154 | /** |
144 | 155 | * {@inheritDoc} |
156 | + * | |
145 | 157 | * @return {@inheritDoc} |
146 | 158 | */ |
147 | 159 | @Override |
@@ -57,6 +57,7 @@ public class VmdMotion { | ||
57 | 57 | |
58 | 58 | /** |
59 | 59 | * モデル名を返す。 |
60 | + * | |
60 | 61 | * @return モデル名 |
61 | 62 | */ |
62 | 63 | public String getModelName(){ |
@@ -65,8 +66,10 @@ public class VmdMotion { | ||
65 | 66 | |
66 | 67 | /** |
67 | 68 | * モデル名を設定する。 |
69 | + * | |
68 | 70 | * <p>このモーションがモデルモーションかステージ演出情報かは、 |
69 | 71 | * このモデル名で判別される。 |
72 | + * | |
70 | 73 | * @param modelName モデル名 |
71 | 74 | * @throws NullPointerException 引数がnull |
72 | 75 | * @see jp.sfjp.mikutoga.vmd.VmdUniq#MODELNAME_STAGEACT |
@@ -79,8 +82,10 @@ public class VmdMotion { | ||
79 | 82 | |
80 | 83 | /** |
81 | 84 | * モデルモーションか否か判別する。 |
85 | + * | |
82 | 86 | * <p>判別は特殊なモデル名を持つか否かで決定される。 |
83 | 87 | * @return モデルモーションならtrue |
88 | + * | |
84 | 89 | * @see jp.sfjp.mikutoga.vmd.VmdUniq#MODELNAME_STAGEACT |
85 | 90 | */ |
86 | 91 | public boolean isModelMotion(){ |
@@ -93,8 +98,10 @@ public class VmdMotion { | ||
93 | 98 | |
94 | 99 | /** |
95 | 100 | * フラグモーションが存在するか否か判定する。 |
101 | + * | |
96 | 102 | * <p>フラグモーションは、 |
97 | 103 | * MMD Ver7.40以降のVMDフォーマットでなければ記録できない。 |
104 | + * | |
98 | 105 | * @return 存在するならtrue |
99 | 106 | */ |
100 | 107 | public boolean hasFlagMotion(){ |
@@ -104,6 +111,7 @@ public class VmdMotion { | ||
104 | 111 | |
105 | 112 | /** |
106 | 113 | * 順序保証されたボーンモーションマップを返す。 |
114 | + * | |
107 | 115 | * @return ボーンモーションマップ |
108 | 116 | * @see java.util.LinkedHashMap |
109 | 117 | */ |
@@ -113,6 +121,7 @@ public class VmdMotion { | ||
113 | 121 | |
114 | 122 | /** |
115 | 123 | * 順序保証されたモーフモーションマップを返す。 |
124 | + * | |
116 | 125 | * @return モーフモーションマップ |
117 | 126 | * @see java.util.LinkedHashMap |
118 | 127 | */ |
@@ -122,6 +131,7 @@ public class VmdMotion { | ||
122 | 131 | |
123 | 132 | /** |
124 | 133 | * カメラモーションのリストを返す。 |
134 | + * | |
125 | 135 | * @return カメラモーションのリスト |
126 | 136 | */ |
127 | 137 | public List<CameraMotion> getCameraMotionList(){ |
@@ -130,6 +140,7 @@ public class VmdMotion { | ||
130 | 140 | |
131 | 141 | /** |
132 | 142 | * 照明モーションのリストを返す。 |
143 | + * | |
133 | 144 | * @return 照明モーションのリスト |
134 | 145 | */ |
135 | 146 | public List<LuminousMotion> getLuminousMotionList(){ |
@@ -138,6 +149,7 @@ public class VmdMotion { | ||
138 | 149 | |
139 | 150 | /** |
140 | 151 | * シャドウモーションのリストを返す。 |
152 | + * | |
141 | 153 | * @return シャドウモーションのリスト |
142 | 154 | */ |
143 | 155 | public List<ShadowMotion> getShadowMotionList(){ |
@@ -146,6 +158,7 @@ public class VmdMotion { | ||
146 | 158 | |
147 | 159 | /** |
148 | 160 | * 各種フレーム番号付きフラグのリストを返す。 |
161 | + * | |
149 | 162 | * @return フレーム番号付きフラグのリスト |
150 | 163 | */ |
151 | 164 | public List<NumberedVmdFlag> getNumberedFlagList(){ |
@@ -155,6 +168,7 @@ public class VmdMotion { | ||
155 | 168 | /** |
156 | 169 | * ボーンモーションを追加する。 |
157 | 170 | * 追加順は保持される。 |
171 | + * | |
158 | 172 | * @param motion ボーンモーション |
159 | 173 | * @see java.util.LinkedHashMap |
160 | 174 | */ |
@@ -175,6 +189,7 @@ public class VmdMotion { | ||
175 | 189 | /** |
176 | 190 | * モーフモーションを追加する。 |
177 | 191 | * 追加順は保持される。 |
192 | + * | |
178 | 193 | * @param motion モーフモーション |
179 | 194 | * @see java.util.LinkedHashMap |
180 | 195 | */ |
@@ -214,6 +229,7 @@ public class VmdMotion { | ||
214 | 229 | |
215 | 230 | /** |
216 | 231 | * {@inheritDoc} |
232 | + * | |
217 | 233 | * @return {@inheritDoc} |
218 | 234 | */ |
219 | 235 | @Override |
@@ -71,6 +71,7 @@ class BasicExporter extends BinaryExporter { | ||
71 | 71 | |
72 | 72 | /** |
73 | 73 | * コンストラクタ。 |
74 | + * | |
74 | 75 | * @param stream 出力ストリーム |
75 | 76 | */ |
76 | 77 | BasicExporter(OutputStream stream){ |
@@ -86,6 +87,7 @@ class BasicExporter extends BinaryExporter { | ||
86 | 87 | |
87 | 88 | /** |
88 | 89 | * ヘッダ情報を出力する。 |
90 | + * | |
89 | 91 | * @param motion モーションデータ |
90 | 92 | * @throws IOException 出力エラー |
91 | 93 | */ |
@@ -104,10 +106,12 @@ class BasicExporter extends BinaryExporter { | ||
104 | 106 | |
105 | 107 | /** |
106 | 108 | * モデル名を出力する。 |
109 | + * | |
107 | 110 | * <p>演出データのモデル名には |
108 | 111 | * 便宜的に |
109 | 112 | * {@link jp.sfjp.mikutoga.vmd.VmdUniq#MODELNAME_STAGEACT} |
110 | 113 | * が使われる。 |
114 | + * | |
111 | 115 | * @param motion モーションデータ |
112 | 116 | * @throws IOException 出力エラー |
113 | 117 | * @throws IllegalTextExportException 不正なモデル名の出現 |
@@ -124,6 +128,7 @@ class BasicExporter extends BinaryExporter { | ||
124 | 128 | |
125 | 129 | /** |
126 | 130 | * ボーンモーション情報を出力する。 |
131 | + * | |
127 | 132 | * @param motion モーションデータ |
128 | 133 | * @throws IOException 出力エラー |
129 | 134 | * @throws IllegalTextExportException 不正なボーン名の出現 |
@@ -165,6 +170,7 @@ class BasicExporter extends BinaryExporter { | ||
165 | 170 | |
166 | 171 | /** |
167 | 172 | * ボーン位置情報を出力する。 |
173 | + * | |
168 | 174 | * @param position ボーン位置情報 |
169 | 175 | * @throws IOException 出力エラー |
170 | 176 | */ |
@@ -183,6 +189,7 @@ class BasicExporter extends BinaryExporter { | ||
183 | 189 | |
184 | 190 | /** |
185 | 191 | * ボーン回転情報を出力する。 |
192 | + * | |
186 | 193 | * @param rotation ボーン回転情報 |
187 | 194 | * @throws IOException 出力エラー |
188 | 195 | */ |
@@ -203,6 +210,7 @@ class BasicExporter extends BinaryExporter { | ||
203 | 210 | |
204 | 211 | /** |
205 | 212 | * ボーンモーションの補間情報を出力する。 |
213 | + * | |
206 | 214 | * @param boneMotion ボーンモーション |
207 | 215 | * @throws IOException 出力エラー |
208 | 216 | */ |
@@ -247,6 +255,7 @@ class BasicExporter extends BinaryExporter { | ||
247 | 255 | |
248 | 256 | /** |
249 | 257 | * 補間情報冗長部の組み立て。 |
258 | + * | |
250 | 259 | * <p>※ MMDの版によって若干出力内容が異なる。 |
251 | 260 | */ |
252 | 261 | private void redundantCopy(){ |
@@ -265,6 +274,7 @@ class BasicExporter extends BinaryExporter { | ||
265 | 274 | |
266 | 275 | /** |
267 | 276 | * モーフ情報を出力する。 |
277 | + * | |
268 | 278 | * @param motion モーションデータ |
269 | 279 | * @throws IOException 出力エラー |
270 | 280 | * @throws IllegalTextExportException 不正なモーフ名の出現 |
@@ -19,6 +19,7 @@ import jp.sfjp.mikutoga.vmd.model.VmdMotion; | ||
19 | 19 | |
20 | 20 | /** |
21 | 21 | * フラグ情報のエクスポーター。 |
22 | + * | |
22 | 23 | * <p>MikuMikuDance Ver7.40以降でサポート |
23 | 24 | */ |
24 | 25 | class BoolExporter extends BinaryExporter{ |
@@ -29,6 +30,7 @@ class BoolExporter extends BinaryExporter{ | ||
29 | 30 | |
30 | 31 | /** |
31 | 32 | * コンストラクタ。 |
33 | + * | |
32 | 34 | * @param stream 出力ストリーム |
33 | 35 | */ |
34 | 36 | BoolExporter(OutputStream stream){ |
@@ -39,6 +41,7 @@ class BoolExporter extends BinaryExporter{ | ||
39 | 41 | |
40 | 42 | /** |
41 | 43 | * フラグ情報を出力する。 |
44 | + * | |
42 | 45 | * @param motion モーションデータ |
43 | 46 | * @throws IOException 出力エラー |
44 | 47 | * @throws IllegalTextExportException 不正な文字列が指定された。 |
@@ -70,6 +73,7 @@ class BoolExporter extends BinaryExporter{ | ||
70 | 73 | |
71 | 74 | /** |
72 | 75 | * IK有効フラグを出力する。 |
76 | + * | |
73 | 77 | * @param flag フラグ情報 |
74 | 78 | * @throws IOException 出力エラー |
75 | 79 | * @throws IllegalTextExportException 不正な文字列が指定された。 |
@@ -17,6 +17,7 @@ import jp.sfjp.mikutoga.vmd.parser.VmdBoolHandler; | ||
17 | 17 | |
18 | 18 | /** |
19 | 19 | * フラグ情報のビルダ。 |
20 | + * | |
20 | 21 | * <p>MikuMikuDance Ver7.40以降でサポート |
21 | 22 | */ |
22 | 23 | class BoolLoader implements VmdBoolHandler{ |
@@ -28,6 +29,7 @@ class BoolLoader implements VmdBoolHandler{ | ||
28 | 29 | |
29 | 30 | /** |
30 | 31 | * コンストラクタ。 |
32 | + * | |
31 | 33 | * @param vmdMotion モーションデータの格納先。 |
32 | 34 | */ |
33 | 35 | BoolLoader(VmdMotion vmdMotion){ |
@@ -39,6 +41,7 @@ class BoolLoader implements VmdBoolHandler{ | ||
39 | 41 | |
40 | 42 | /** |
41 | 43 | * {@inheritDoc} |
44 | + * | |
42 | 45 | * @param stage {@inheritDoc} |
43 | 46 | * @param loops {@inheritDoc} |
44 | 47 | * @throws MmdFormatException {@inheritDoc} |
@@ -57,6 +60,7 @@ class BoolLoader implements VmdBoolHandler{ | ||
57 | 60 | |
58 | 61 | /** |
59 | 62 | * {@inheritDoc} |
63 | + * | |
60 | 64 | * @param stage {@inheritDoc} |
61 | 65 | * @throws MmdFormatException {@inheritDoc} |
62 | 66 | */ |
@@ -77,6 +81,7 @@ class BoolLoader implements VmdBoolHandler{ | ||
77 | 81 | |
78 | 82 | /** |
79 | 83 | * {@inheritDoc} |
84 | + * | |
80 | 85 | * @param stage {@inheritDoc} |
81 | 86 | * @throws MmdFormatException {@inheritDoc} |
82 | 87 | */ |
@@ -94,6 +99,7 @@ class BoolLoader implements VmdBoolHandler{ | ||
94 | 99 | |
95 | 100 | /** |
96 | 101 | * {@inheritDoc} |
102 | + * | |
97 | 103 | * @param show {@inheritDoc} |
98 | 104 | * @param keyFrameNo {@inheritDoc} |
99 | 105 | * @throws MmdFormatException {@inheritDoc} |
@@ -108,6 +114,7 @@ class BoolLoader implements VmdBoolHandler{ | ||
108 | 114 | |
109 | 115 | /** |
110 | 116 | * {@inheritDoc} |
117 | + * | |
111 | 118 | * @param boneName {@inheritDoc} |
112 | 119 | * @param validIk {@inheritDoc} |
113 | 120 | * @param keyFrameNo {@inheritDoc} |
@@ -34,7 +34,9 @@ public class VmdExporter { | ||
34 | 34 | |
35 | 35 | /** |
36 | 36 | * モーションデータをVMDファイル形式で出力する。 |
37 | + * | |
37 | 38 | * <p>異常時には出力データのフラッシュが試みられる。 |
39 | + * | |
38 | 40 | * @param motion モーションデータ |
39 | 41 | * @param ostream 出力先ストリーム |
40 | 42 | * @throws IOException 出力エラー |
@@ -58,6 +60,7 @@ public class VmdExporter { | ||
58 | 60 | |
59 | 61 | /** |
60 | 62 | * モーションデータをVMDファイル形式で出力する。 |
63 | + * | |
61 | 64 | * @param motion モーションデータ |
62 | 65 | * @throws IOException 出力エラー |
63 | 66 | * @throws IllegalVmdDataException モーションデータに不備が発見された |
@@ -39,6 +39,7 @@ public class VmdLoader { | ||
39 | 39 | |
40 | 40 | /** |
41 | 41 | * 正常パース時に読み残したデータがあったか判定する。 |
42 | + * | |
42 | 43 | * @return 読み残したデータがあればtrue |
43 | 44 | * @throws IllegalStateException まだパースを試みていない。 |
44 | 45 | */ |
@@ -50,9 +51,12 @@ public class VmdLoader { | ||
50 | 51 | /** |
51 | 52 | * ボーンモーション補間情報冗長部のチェックを行うか否か設定する。 |
52 | 53 | * デフォルトではチェックを行わない。 |
54 | + * | |
53 | 55 | * <p>※MMDVer7.30前後のVMD出力不具合を回避したい場合は、 |
54 | 56 | * オフにするとパースに成功する場合がある。 |
57 | + * | |
55 | 58 | * <p>※MMD Ver7.39x64以降はチェック回避必須。 |
59 | + * | |
56 | 60 | * @param mode チェックさせたければtrue |
57 | 61 | */ |
58 | 62 | public void setRedundantCheck(boolean mode){ |
@@ -63,6 +67,7 @@ public class VmdLoader { | ||
63 | 67 | /** |
64 | 68 | * VMDファイルの読み込みを行いモーション情報を返す。 |
65 | 69 | * 1インスタンスにつき一度しかロードできない。 |
70 | + * | |
66 | 71 | * @param source VMDファイル入力ソース |
67 | 72 | * @return モーション情報 |
68 | 73 | * @throws IOException 入力エラー |
@@ -15,12 +15,14 @@ import jp.sfjp.mikutoga.xml.XmlExporter; | ||
15 | 15 | |
16 | 16 | /** |
17 | 17 | * XML出力機構の共通部。 |
18 | + * | |
18 | 19 | * <p>主にベジェ補間パラメータ出力部。 |
19 | 20 | */ |
20 | 21 | class ExtraXmlExporter extends ProxyXmlExporter { |
21 | 22 | |
22 | 23 | /** |
23 | 24 | * コンストラクタ。 |
25 | + * | |
24 | 26 | * @param delegate 委譲先 |
25 | 27 | */ |
26 | 28 | ExtraXmlExporter(XmlExporter delegate){ |
@@ -31,6 +33,7 @@ class ExtraXmlExporter extends ProxyXmlExporter { | ||
31 | 33 | |
32 | 34 | /** |
33 | 35 | * 位置移動補間カーブを出力する。 |
36 | + * | |
34 | 37 | * @param posCurve 移動補間情報 |
35 | 38 | * @throws IOException 出力エラー |
36 | 39 | */ |
@@ -59,6 +62,7 @@ class ExtraXmlExporter extends ProxyXmlExporter { | ||
59 | 62 | |
60 | 63 | /** |
61 | 64 | * ベジェ曲線による補間曲線情報を出力する。 |
65 | + * | |
62 | 66 | * @param bezier ベジェ曲線 |
63 | 67 | * @throws IOException 出力エラー |
64 | 68 | */ |
@@ -28,7 +28,9 @@ public final class Schema110820{ | ||
28 | 28 | public static final String LOCAL_SCHEMA_VMDXML = |
29 | 29 | "resources/vmdxml-110820.xsd"; |
30 | 30 | |
31 | + /** schema URI. */ | |
31 | 32 | public static final URI URI_SCHEMA_VMDXML = URI.create(SCHEMA_VMDXML); |
33 | + /** local resource URI. */ | |
32 | 34 | public static final URI RES_SCHEMA_VMDXML; |
33 | 35 | |
34 | 36 | private static final Class<?> THISCLASS = Schema110820.class; |
@@ -12,6 +12,7 @@ import java.net.URISyntaxException; | ||
12 | 12 | |
13 | 13 | /** |
14 | 14 | * 130609形式XML各種リソースの定義。 |
15 | + * | |
15 | 16 | * <p>MikuMikuDance Ver7.40 の新VMDファイルフォーマット対応。 |
16 | 17 | */ |
17 | 18 | public final class Schema130609{ |
@@ -29,7 +30,9 @@ public final class Schema130609{ | ||
29 | 30 | public static final String LOCAL_SCHEMA_VMDXML = |
30 | 31 | "resources/vmdxml-130609.xsd"; |
31 | 32 | |
33 | + /** schema URI. */ | |
32 | 34 | public static final URI URI_SCHEMA_VMDXML = URI.create(SCHEMA_VMDXML); |
35 | + /** local resource URI. */ | |
33 | 36 | public static final URI RES_SCHEMA_VMDXML; |
34 | 37 | |
35 | 38 | private static final Class<?> THISCLASS = Schema130609.class; |
@@ -73,7 +73,7 @@ enum VmdTag { | ||
73 | 73 | * コンストラクタ。 |
74 | 74 | * @param tagName 要素名 |
75 | 75 | */ |
76 | - private VmdTag(String tagName){ | |
76 | + VmdTag(String tagName){ | |
77 | 77 | this.tagName = tagName.intern(); |
78 | 78 | return; |
79 | 79 | } |
@@ -71,6 +71,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
71 | 71 | |
72 | 72 | /** |
73 | 73 | * 出力XMLファイル種別を設定する。 |
74 | + * | |
74 | 75 | * @param type ファイル種別 |
75 | 76 | */ |
76 | 77 | public void setXmlFileType(XmlMotionFileType type){ |
@@ -95,6 +96,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
95 | 96 | |
96 | 97 | /** |
97 | 98 | * 出力XMLファイル種別を返す。 |
99 | + * | |
98 | 100 | * @return ファイル種別 |
99 | 101 | */ |
100 | 102 | public XmlMotionFileType getXmlFileType(){ |
@@ -103,7 +105,9 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
103 | 105 | |
104 | 106 | /** |
105 | 107 | * ボーン回転量をクォータニオンで出力するか否か設定する。 |
108 | + * | |
106 | 109 | * <p>デフォルトではtrue |
110 | + * | |
107 | 111 | * @param mode trueだとクォータニオン、falseだとオイラー角で出力される。 |
108 | 112 | */ |
109 | 113 | public void setQuaternionMode(boolean mode){ |
@@ -112,6 +116,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
112 | 116 | |
113 | 117 | /** |
114 | 118 | * ボーン回転量をクォータニオンで出力するか否か返す。 |
119 | + * | |
115 | 120 | * @return クォータニオンで出力するならtrue |
116 | 121 | */ |
117 | 122 | public boolean isQuaternionMode(){ |
@@ -120,6 +125,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
120 | 125 | |
121 | 126 | /** |
122 | 127 | * Generatorメタ情報を設定する。 |
128 | + * | |
123 | 129 | * @param generatorArg Generatorメタ情報。nullならXML出力しない。 |
124 | 130 | */ |
125 | 131 | public void setGenerator(String generatorArg){ |
@@ -129,6 +135,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
129 | 135 | |
130 | 136 | /** |
131 | 137 | * Generatorメタ情報を取得する。 |
138 | + * | |
132 | 139 | * @return Generatorメタ情報。XML出力しないならnullを返す。 |
133 | 140 | */ |
134 | 141 | public String getGenerator(){ |
@@ -137,6 +144,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
137 | 144 | |
138 | 145 | /** |
139 | 146 | * VMDモーションデータをXML形式で出力する。 |
147 | + * | |
140 | 148 | * @param vmdMotion VMDモーションデータ |
141 | 149 | * @param xmlOut 出力先 |
142 | 150 | * @throws IOException 出力エラー |
@@ -156,6 +164,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
156 | 164 | |
157 | 165 | /** |
158 | 166 | * VMDモーションデータをXML形式で出力する。 |
167 | + * | |
159 | 168 | * @param vmdMotion VMDモーションデータ |
160 | 169 | * @throws IOException 出力エラー |
161 | 170 | * @throws IllegalVmdDataException 不正なモーションデータを検出 |
@@ -187,6 +196,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
187 | 196 | |
188 | 197 | /** |
189 | 198 | * ルート要素がオープンするまでの各種宣言を出力する。 |
199 | + * | |
190 | 200 | * @throws IOException 出力エラー |
191 | 201 | */ |
192 | 202 | private void putVmdRootOpen() throws IOException{ |
@@ -235,6 +245,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
235 | 245 | |
236 | 246 | /** |
237 | 247 | * ジェネレータ名を出力する。 |
248 | + * | |
238 | 249 | * @throws IOException 出力エラー |
239 | 250 | */ |
240 | 251 | private void putGenerator() throws IOException{ |
@@ -252,6 +263,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
252 | 263 | |
253 | 264 | /** |
254 | 265 | * モデル名を出力する。 |
266 | + * | |
255 | 267 | * @param vmdMotion モーションデータ |
256 | 268 | * @throws IOException 出力エラー |
257 | 269 | */ |
@@ -276,6 +288,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
276 | 288 | |
277 | 289 | /** |
278 | 290 | * ボーンモーションデータを出力する。 |
291 | + * | |
279 | 292 | * @param vmdMotion モーションデータ |
280 | 293 | * @throws IOException 出力エラー |
281 | 294 | */ |
@@ -304,6 +317,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
304 | 317 | |
305 | 318 | /** |
306 | 319 | * ボーン別モーションデータを出力する。 |
320 | + * | |
307 | 321 | * @param boneName ボーン名 |
308 | 322 | * @param list ボーンモーションのリスト |
309 | 323 | * @throws IOException 出力エラー |
@@ -336,6 +350,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
336 | 350 | |
337 | 351 | /** |
338 | 352 | * ボーンモーションを出力する。 |
353 | + * | |
339 | 354 | * @param boneMotion ボーンモーション |
340 | 355 | * @throws IOException 出力エラー |
341 | 356 | */ |
@@ -362,6 +377,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
362 | 377 | |
363 | 378 | /** |
364 | 379 | * ボーン位置を出力する。 |
380 | + * | |
365 | 381 | * @param boneMotion ボーンモーション |
366 | 382 | * @throws IOException 出力エラー |
367 | 383 | */ |
@@ -401,6 +417,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
401 | 417 | |
402 | 418 | /** |
403 | 419 | * ボーン回転を出力する。 |
420 | + * | |
404 | 421 | * @param boneMotion ボーンモーション |
405 | 422 | * @throws IOException 出力エラー |
406 | 423 | */ |
@@ -442,6 +459,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
442 | 459 | |
443 | 460 | /** |
444 | 461 | * ボーン回転を出力する。 |
462 | + * | |
445 | 463 | * @param boneMotion ボーンモーション |
446 | 464 | * @throws IOException 出力エラー |
447 | 465 | */ |
@@ -481,6 +499,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
481 | 499 | |
482 | 500 | /** |
483 | 501 | * モーフデータを出力する。 |
502 | + * | |
484 | 503 | * @param vmdMotion モーションデータ |
485 | 504 | * @throws IOException 出力エラー |
486 | 505 | */ |
@@ -501,6 +520,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
501 | 520 | |
502 | 521 | /** |
503 | 522 | * 箇所別モーフデータを出力する。 |
523 | + * | |
504 | 524 | * @param listMap モーフデータの名前付きリストマップ |
505 | 525 | * @throws IOException 出力エラー |
506 | 526 | */ |
@@ -539,6 +559,7 @@ public class VmdXmlExporter extends BasicXmlExporter { | ||
539 | 559 | |
540 | 560 | /** |
541 | 561 | * 個別のモーフモーションを出力する。 |
562 | + * | |
542 | 563 | * @param morphMotion モーフモーション |
543 | 564 | * @throws IOException 出力エラー |
544 | 565 | */ |
@@ -16,6 +16,7 @@ import org.xml.sax.SAXException; | ||
16 | 16 | |
17 | 17 | /** |
18 | 18 | * XMLモーションファイルパース用SAXハンドラ。 |
19 | + * | |
19 | 20 | * <p>下位リスナに各種通知が振り分けられる。 |
20 | 21 | */ |
21 | 22 | class XmlHandler implements ContentHandler{ |
@@ -50,6 +51,7 @@ class XmlHandler implements ContentHandler{ | ||
50 | 51 | |
51 | 52 | /** |
52 | 53 | * ビルド対象のモーションを返す。 |
54 | + * | |
53 | 55 | * @return ビルド対象のモーション |
54 | 56 | */ |
55 | 57 | VmdMotion getVmdMotion(){ |
@@ -58,6 +60,7 @@ class XmlHandler implements ContentHandler{ | ||
58 | 60 | |
59 | 61 | /** |
60 | 62 | * {@inheritDoc} |
63 | + * | |
61 | 64 | * @throws SAXException {@inheritDoc} |
62 | 65 | */ |
63 | 66 | @Override |
@@ -74,6 +77,7 @@ class XmlHandler implements ContentHandler{ | ||
74 | 77 | |
75 | 78 | /** |
76 | 79 | * {@inheritDoc} |
80 | + * | |
77 | 81 | * @throws SAXException {@inheritDoc} |
78 | 82 | */ |
79 | 83 | @Override |
@@ -84,6 +88,7 @@ class XmlHandler implements ContentHandler{ | ||
84 | 88 | |
85 | 89 | /** |
86 | 90 | * {@inheritDoc} |
91 | + * | |
87 | 92 | * @param prefix {@inheritDoc} |
88 | 93 | * @param uri {@inheritDoc} |
89 | 94 | * @throws SAXException {@inheritDoc} |
@@ -91,8 +96,8 @@ class XmlHandler implements ContentHandler{ | ||
91 | 96 | @Override |
92 | 97 | public void startPrefixMapping(String prefix, String uri) |
93 | 98 | throws SAXException { |
94 | - if( Schema110820.NS_VMDXML.equals(uri) | |
95 | - || Schema130609.NS_VMDXML.equals(uri) ){ | |
99 | + if( Schema110820.NS_VMDXML.equals(uri) | |
100 | + || Schema130609.NS_VMDXML.equals(uri) ){ | |
96 | 101 | this.nspfx = prefix; |
97 | 102 | this.nsuri = uri; |
98 | 103 | } |
@@ -101,6 +106,7 @@ class XmlHandler implements ContentHandler{ | ||
101 | 106 | |
102 | 107 | /** |
103 | 108 | * {@inheritDoc} |
109 | + * | |
104 | 110 | * @param prefix {@inheritDoc} |
105 | 111 | * @throws SAXException {@inheritDoc} |
106 | 112 | */ |
@@ -115,6 +121,7 @@ class XmlHandler implements ContentHandler{ | ||
115 | 121 | |
116 | 122 | /** |
117 | 123 | * {@inheritDoc} |
124 | + * | |
118 | 125 | * @param uri {@inheritDoc} |
119 | 126 | * @param localName {@inheritDoc} |
120 | 127 | * @param qName {@inheritDoc} |
@@ -149,6 +156,7 @@ class XmlHandler implements ContentHandler{ | ||
149 | 156 | |
150 | 157 | /** |
151 | 158 | * タグ出現に従い通知リスナを切り替える。 |
159 | + * | |
152 | 160 | * @param tag タグ種別 |
153 | 161 | */ |
154 | 162 | private void switchListener(VmdTag tag){ |
@@ -176,6 +184,7 @@ class XmlHandler implements ContentHandler{ | ||
176 | 184 | |
177 | 185 | /** |
178 | 186 | * {@inheritDoc} |
187 | + * | |
179 | 188 | * @param uri {@inheritDoc} |
180 | 189 | * @param localName {@inheritDoc} |
181 | 190 | * @param qName {@inheritDoc} |
@@ -198,6 +207,7 @@ class XmlHandler implements ContentHandler{ | ||
198 | 207 | |
199 | 208 | /** |
200 | 209 | * {@inheritDoc} |
210 | + * | |
201 | 211 | * @param locator {@inheritDoc} |
202 | 212 | */ |
203 | 213 | @Override |
@@ -207,6 +217,7 @@ class XmlHandler implements ContentHandler{ | ||
207 | 217 | |
208 | 218 | /** |
209 | 219 | * {@inheritDoc} |
220 | + * | |
210 | 221 | * @param target {@inheritDoc} |
211 | 222 | * @param data {@inheritDoc} |
212 | 223 | * @throws SAXException {@inheritDoc} |
@@ -219,6 +230,7 @@ class XmlHandler implements ContentHandler{ | ||
219 | 230 | |
220 | 231 | /** |
221 | 232 | * {@inheritDoc} |
233 | + * | |
222 | 234 | * @param ch {@inheritDoc} |
223 | 235 | * @param start {@inheritDoc} |
224 | 236 | * @param length {@inheritDoc} |
@@ -232,6 +244,7 @@ class XmlHandler implements ContentHandler{ | ||
232 | 244 | |
233 | 245 | /** |
234 | 246 | * {@inheritDoc} |
247 | + * | |
235 | 248 | * @param ch {@inheritDoc} |
236 | 249 | * @param start {@inheritDoc} |
237 | 250 | * @param length {@inheritDoc} |
@@ -245,6 +258,7 @@ class XmlHandler implements ContentHandler{ | ||
245 | 258 | |
246 | 259 | /** |
247 | 260 | * {@inheritDoc} |
261 | + * | |
248 | 262 | * @param name {@inheritDoc} |
249 | 263 | * @throws SAXException {@inheritDoc} |
250 | 264 | */ |
@@ -14,7 +14,9 @@ public enum XmlMotionFileType { | ||
14 | 14 | |
15 | 15 | /** |
16 | 16 | * XMLファイル(自動判別)。 |
17 | + * | |
17 | 18 | * <p>読み込み時のスキーマ判別は自動。 |
19 | + * | |
18 | 20 | * <p>書き込み時のスキーマは最新。 |
19 | 21 | */ |
20 | 22 | XML_AUTO, |
@@ -34,6 +36,4 @@ public enum XmlMotionFileType { | ||
34 | 36 | */ |
35 | 37 | XML_130609, |
36 | 38 | |
37 | - ; | |
38 | - | |
39 | 39 | } |
@@ -25,7 +25,9 @@ public class XmlVmdLoader { | ||
25 | 25 | |
26 | 26 | /** |
27 | 27 | * コンストラクタ。 |
28 | + * | |
28 | 29 | * <p>XMLリーダは名前空間をサポートしていなければならない。 |
30 | + * | |
29 | 31 | * @param reader XMLリーダ |
30 | 32 | * @throws NullPointerException 引数がnull |
31 | 33 | */ |
@@ -39,6 +41,7 @@ public class XmlVmdLoader { | ||
39 | 41 | |
40 | 42 | /** |
41 | 43 | * XMLのパースを開始する。 |
44 | + * | |
42 | 45 | * @param source XML入力 |
43 | 46 | * @return モーションデータ |
44 | 47 | * @throws SAXException 構文エラー |
@@ -33,6 +33,7 @@ final class CmdLine { | ||
33 | 33 | |
34 | 34 | /** |
35 | 35 | * コマンドライン解析を行う。 |
36 | + * | |
36 | 37 | * @param args コマンドライン |
37 | 38 | * @return 解析されたコマンドライン並び |
38 | 39 | */ |
@@ -43,6 +44,7 @@ final class CmdLine { | ||
43 | 44 | |
44 | 45 | /** |
45 | 46 | * コマンドライン解析を行う。 |
47 | + * | |
46 | 48 | * @param argList コマンドライン |
47 | 49 | * @return 解析されたコマンドライン並び |
48 | 50 | */ |
@@ -81,8 +83,9 @@ final class CmdLine { | ||
81 | 83 | |
82 | 84 | /** |
83 | 85 | * オプション識別子を返す。 |
86 | + * | |
84 | 87 | * @return オプション識別子。 |
85 | - * オプションを伴わない単純なコマンドライン引数の場合はnullを返す。 | |
88 | + * オプションを伴わない単純なコマンドライン引数の場合はnullを返す。 | |
86 | 89 | */ |
87 | 90 | OptSwitch getOptSwitch() { |
88 | 91 | return this.opt; |
@@ -90,9 +93,10 @@ final class CmdLine { | ||
90 | 93 | |
91 | 94 | /** |
92 | 95 | * オプションに付随する引数群を返す。 |
96 | + * | |
93 | 97 | * @return オプションに付随する引数群。 |
94 | - * 先頭要素はオプション識別子。 | |
95 | - * 単純なコマンドライン引数の場合は自身が1要素のみを占める。 | |
98 | + * 先頭要素はオプション識別子。 | |
99 | + * 単純なコマンドライン引数の場合は自身が1要素のみを占める。 | |
96 | 100 | */ |
97 | 101 | List<String> getOptArgs() { |
98 | 102 | return this.optArgs; |
@@ -26,7 +26,9 @@ public enum MotionFileType { | ||
26 | 26 | |
27 | 27 | /** |
28 | 28 | * XMLファイル(自動判別)。 |
29 | + * | |
29 | 30 | * <p>読み込み時のスキーマ判別は自動。 |
31 | + * | |
30 | 32 | * <p>書き込み時のスキーマは最新。 |
31 | 33 | */ |
32 | 34 | XML_AUTO, |
@@ -52,14 +54,16 @@ public enum MotionFileType { | ||
52 | 54 | /** |
53 | 55 | * コンストラクタ。 |
54 | 56 | */ |
55 | - private MotionFileType(){ | |
57 | + MotionFileType(){ | |
56 | 58 | return; |
57 | 59 | } |
58 | 60 | |
59 | 61 | |
60 | 62 | /** |
61 | 63 | * ファイル種別をXMLファイル種別に変換する。 |
64 | + * | |
62 | 65 | * <p>未定義の場合はXML_AUTOを返す。 |
66 | + * | |
63 | 67 | * @return XMLファイル種別 |
64 | 68 | */ |
65 | 69 | public XmlMotionFileType toXmlType(){ |
@@ -85,6 +89,7 @@ public enum MotionFileType { | ||
85 | 89 | |
86 | 90 | /** |
87 | 91 | * ファイル種別がXMLか判定する。 |
92 | + * | |
88 | 93 | * @return XMLならtrue |
89 | 94 | */ |
90 | 95 | public boolean isXml(){ |
@@ -102,6 +107,7 @@ public enum MotionFileType { | ||
102 | 107 | |
103 | 108 | /** |
104 | 109 | * ファイル種別がVMDか判定する。 |
110 | + * | |
105 | 111 | * @return VMDならtrue |
106 | 112 | */ |
107 | 113 | public boolean isVmd(){ |
@@ -74,6 +74,7 @@ final class OptInfo { | ||
74 | 74 | |
75 | 75 | /** |
76 | 76 | * フォーマット種別指定子をデコードする。 |
77 | + * | |
77 | 78 | * @param arg 文字列 |
78 | 79 | * @return デコード結果。 |
79 | 80 | * @throws CmdLineException 不正なフォーマット種別 |
@@ -100,6 +101,7 @@ final class OptInfo { | ||
100 | 101 | |
101 | 102 | /** |
102 | 103 | * 改行文字指定子をデコードする。 |
104 | + * | |
103 | 105 | * @param arg 文字列 |
104 | 106 | * @return デコード結果。 |
105 | 107 | * @throws CmdLineException 不正なフォーマット種別 |
@@ -122,6 +124,7 @@ final class OptInfo { | ||
122 | 124 | |
123 | 125 | /** |
124 | 126 | * ブール指定子をデコードする。 |
127 | + * | |
125 | 128 | * @param arg 文字列 |
126 | 129 | * @return デコード結果。 |
127 | 130 | * @throws CmdLineException 不正なフォーマット種別 |
@@ -130,13 +133,13 @@ final class OptInfo { | ||
130 | 133 | throws CmdLineException{ |
131 | 134 | boolean result; |
132 | 135 | |
133 | - if( "on" .equals(arg) | |
134 | - || "true".equals(arg) | |
135 | - || "yes" .equals(arg) ){ | |
136 | + if( "on" .equals(arg) | |
137 | + || "true".equals(arg) | |
138 | + || "yes" .equals(arg) ){ | |
136 | 139 | result = true; |
137 | - }else if( "off" .equals(arg) | |
138 | - || "false".equals(arg) | |
139 | - || "no" .equals(arg) ){ | |
140 | + }else if( "off" .equals(arg) | |
141 | + || "false".equals(arg) | |
142 | + || "no" .equals(arg) ){ | |
140 | 143 | result = false; |
141 | 144 | }else{ |
142 | 145 | String errMsg = MessageFormat.format(ERRMSG_INVBOOL, arg); |
@@ -148,7 +151,9 @@ final class OptInfo { | ||
148 | 151 | |
149 | 152 | /** |
150 | 153 | * ファイル名からファイル種別を類推する。 |
154 | + * | |
151 | 155 | * <p>拡張子が「.vmd」ならVMDファイル、「.xml」ならXMLファイル。 |
156 | + * | |
152 | 157 | * @param fileName ファイル名 |
153 | 158 | * @return ファイル種別。識別不可ならNONE。 |
154 | 159 | */ |
@@ -165,6 +170,7 @@ final class OptInfo { | ||
165 | 170 | |
166 | 171 | /** |
167 | 172 | * ヘルプ要求があるかコマンドライン列を調べる。 |
173 | + * | |
168 | 174 | * @param cmds コマンドライン列 |
169 | 175 | * @return ヘルプ要求があればtrue |
170 | 176 | */ |
@@ -180,6 +186,7 @@ final class OptInfo { | ||
180 | 186 | |
181 | 187 | /** |
182 | 188 | * 個別のオプション情報を格納する。 |
189 | + * | |
183 | 190 | * @param opt オプション識別子 |
184 | 191 | * @param exArg 引数。なければnull |
185 | 192 | * @param result オプション情報格納先 |
@@ -230,6 +237,7 @@ final class OptInfo { | ||
230 | 237 | |
231 | 238 | /** |
232 | 239 | * コマンドラインを解析する。 |
240 | + * | |
233 | 241 | * @param args コマンドライン |
234 | 242 | * @return オプション情報 |
235 | 243 | * @throws CmdLineException 不正なコマンドライン |
@@ -267,7 +275,9 @@ final class OptInfo { | ||
267 | 275 | |
268 | 276 | /** |
269 | 277 | * 単純なコマンドラインエラーを検出する。 |
278 | + * | |
270 | 279 | * <p>検出項目は未知のオプションおよび不正な引数の個数 |
280 | + * | |
271 | 281 | * @param cmdLines コマンドライン |
272 | 282 | * @throws CmdLineException 異常系 |
273 | 283 | */ |
@@ -300,6 +310,7 @@ final class OptInfo { | ||
300 | 310 | |
301 | 311 | /** |
302 | 312 | * ファイルフォーマット情報の推測を行う。 |
313 | + * | |
303 | 314 | * @param result オプション情報 |
304 | 315 | */ |
305 | 316 | private static void fixFormat(OptInfo result){ |
@@ -316,6 +327,7 @@ final class OptInfo { | ||
316 | 327 | |
317 | 328 | /** |
318 | 329 | * オプション整合性の事後検査。 |
330 | + * | |
319 | 331 | * @param result オプション情報 |
320 | 332 | * @throws CmdLineException 不正なオプション設定 |
321 | 333 | */ |
@@ -343,6 +355,7 @@ final class OptInfo { | ||
343 | 355 | |
344 | 356 | /** |
345 | 357 | * ヘルプ表示が必要か否か判定する。 |
358 | + * | |
346 | 359 | * @return 必要ならtrue |
347 | 360 | */ |
348 | 361 | boolean needHelp(){ |
@@ -351,6 +364,7 @@ final class OptInfo { | ||
351 | 364 | |
352 | 365 | /** |
353 | 366 | * 入力ファイル種別を返す。 |
367 | + * | |
354 | 368 | * @return 入力ファイル種別 |
355 | 369 | */ |
356 | 370 | MotionFileType getInFileType(){ |
@@ -359,6 +373,7 @@ final class OptInfo { | ||
359 | 373 | |
360 | 374 | /** |
361 | 375 | * 出力ファイル種別を返す。 |
376 | + * | |
362 | 377 | * @return 出力ファイル種別 |
363 | 378 | */ |
364 | 379 | MotionFileType getOutFileType(){ |
@@ -367,6 +382,7 @@ final class OptInfo { | ||
367 | 382 | |
368 | 383 | /** |
369 | 384 | * 入力ファイル名を返す。 |
385 | + * | |
370 | 386 | * @return 入力ファイル名 |
371 | 387 | */ |
372 | 388 | String getInFilename(){ |
@@ -375,6 +391,7 @@ final class OptInfo { | ||
375 | 391 | |
376 | 392 | /** |
377 | 393 | * 出力ファイル名を返す。 |
394 | + * | |
378 | 395 | * @return 出力ファイル名 |
379 | 396 | */ |
380 | 397 | String getOutFilename(){ |
@@ -383,6 +400,7 @@ final class OptInfo { | ||
383 | 400 | |
384 | 401 | /** |
385 | 402 | * 上書きモードか否か返す。 |
403 | + * | |
386 | 404 | * @return 上書きモードならtrue |
387 | 405 | */ |
388 | 406 | boolean overwriteMode(){ |
@@ -391,6 +409,7 @@ final class OptInfo { | ||
391 | 409 | |
392 | 410 | /** |
393 | 411 | * XML改行文字を返す。 |
412 | + * | |
394 | 413 | * @return 改行文字 |
395 | 414 | */ |
396 | 415 | String getNewline(){ |
@@ -399,6 +418,7 @@ final class OptInfo { | ||
399 | 418 | |
400 | 419 | /** |
401 | 420 | * ジェネレータ名を返す。 |
421 | + * | |
402 | 422 | * @return ジェネレータ名。表示したくない時はnull |
403 | 423 | */ |
404 | 424 | String getGenerator(){ |
@@ -407,6 +427,7 @@ final class OptInfo { | ||
407 | 427 | |
408 | 428 | /** |
409 | 429 | * 回転情報のXML出力形式を得る。 |
430 | + * | |
410 | 431 | * @return クォータニオン形式ならtrue、YXZオイラー角形式ならfalse。 |
411 | 432 | */ |
412 | 433 | boolean isQuaterniomMode(){ |
@@ -73,10 +73,11 @@ enum OptSwitch { | ||
73 | 73 | |
74 | 74 | /** |
75 | 75 | * コンストラクタ。 |
76 | + * | |
76 | 77 | * @param argnum 必要な引数の数 |
77 | 78 | * @param cmdopts オプションスイッチパターン群 |
78 | 79 | */ |
79 | - private OptSwitch(int argnum, String... cmdopts) { | |
80 | + OptSwitch(int argnum, String... cmdopts) { | |
80 | 81 | this.exArgNum = argnum; |
81 | 82 | |
82 | 83 | List<String> optlist; |
@@ -90,6 +91,7 @@ enum OptSwitch { | ||
90 | 91 | |
91 | 92 | /** |
92 | 93 | * コンソール提示用ヘルプ出力文字列を返す。 |
94 | + * | |
93 | 95 | * @return オプションヘルプ文字列 |
94 | 96 | */ |
95 | 97 | static String getConsoleHelp(){ |
@@ -98,7 +100,9 @@ enum OptSwitch { | ||
98 | 100 | |
99 | 101 | /** |
100 | 102 | * 文字列に合致するオプションを返す。 |
103 | + * | |
101 | 104 | * <p>一つのオプションが複数の表記に合致する場合がある。 |
105 | + * | |
102 | 106 | * @param cmd 文字列 |
103 | 107 | * @return オプション種別。合致する物が見つからなければnull |
104 | 108 | */ |
@@ -110,7 +114,9 @@ enum OptSwitch { | ||
110 | 114 | |
111 | 115 | /** |
112 | 116 | * 各オプションに後続する引数の数を返す。 |
117 | + * | |
113 | 118 | * <p>引数をとらないオプションは0を返す。 |
119 | + * | |
114 | 120 | * @return 引数の数 |
115 | 121 | */ |
116 | 122 | int getExArgNum(){ |
@@ -111,6 +111,7 @@ public final class Vmd2Xml { | ||
111 | 111 | |
112 | 112 | /** |
113 | 113 | * VMを終了させる。 |
114 | + * | |
114 | 115 | * @param code 終了コード |
115 | 116 | * @see java.lang.System#exit(int) |
116 | 117 | */ |
@@ -122,6 +123,7 @@ public final class Vmd2Xml { | ||
122 | 123 | |
123 | 124 | /** |
124 | 125 | * 共通エラーメッセージを出力する。 |
126 | + * | |
125 | 127 | * @param text 個別メッセージ |
126 | 128 | */ |
127 | 129 | private static void errMsg(String text){ |
@@ -132,6 +134,7 @@ public final class Vmd2Xml { | ||
132 | 134 | |
133 | 135 | /** |
134 | 136 | * 標準エラー出力へ例外情報出力。 |
137 | + * | |
135 | 138 | * @param ex 例外 |
136 | 139 | * @param dumpStack スタックトレースを出力するならtrue |
137 | 140 | */ |
@@ -148,6 +151,7 @@ public final class Vmd2Xml { | ||
148 | 151 | |
149 | 152 | /** |
150 | 153 | * 標準エラー出力へ例外情報出力。 |
154 | + * | |
151 | 155 | * @param ex 例外 |
152 | 156 | */ |
153 | 157 | private static void thPrintln(Throwable ex){ |
@@ -158,6 +162,7 @@ public final class Vmd2Xml { | ||
158 | 162 | /** |
159 | 163 | * 入出力エラー処理。 |
160 | 164 | * 例外を出力してVM終了する。 |
165 | + * | |
161 | 166 | * @param ex 例外 |
162 | 167 | */ |
163 | 168 | private static void ioError(IOException ex){ |
@@ -168,6 +173,7 @@ public final class Vmd2Xml { | ||
168 | 173 | /** |
169 | 174 | * XML構文エラー処理。 |
170 | 175 | * 例外を出力してVM終了する。 |
176 | + * | |
171 | 177 | * @param ex 例外 |
172 | 178 | */ |
173 | 179 | private static void xmlError(Throwable ex){ |
@@ -178,6 +184,7 @@ public final class Vmd2Xml { | ||
178 | 184 | /** |
179 | 185 | * VMDファイルフォーマットエラー処理。 |
180 | 186 | * 例外を出力してVM終了する。 |
187 | + * | |
181 | 188 | * @param ex 例外 |
182 | 189 | */ |
183 | 190 | private static void vmdError(MmdFormatException ex){ |
@@ -188,6 +195,7 @@ public final class Vmd2Xml { | ||
188 | 195 | /** |
189 | 196 | * 内部エラー処理。 |
190 | 197 | * 例外を出力してVM終了する。 |
198 | + * | |
191 | 199 | * @param ex 例外 |
192 | 200 | */ |
193 | 201 | private static void internalError(Throwable ex){ |
@@ -223,8 +231,11 @@ public final class Vmd2Xml { | ||
223 | 231 | |
224 | 232 | /** |
225 | 233 | * ファイルサイズを0に切り詰める。 |
234 | + * | |
226 | 235 | * <p>ファイルが存在しなければなにもしない。 |
236 | + * | |
227 | 237 | * <p>通常ファイルでなければなにもしない。 |
238 | + * | |
228 | 239 | * @param file ファイル |
229 | 240 | * @throws IOException 入出力エラー |
230 | 241 | */ |
@@ -251,7 +262,9 @@ public final class Vmd2Xml { | ||
251 | 262 | |
252 | 263 | /** |
253 | 264 | * 入力ソースを準備する。 |
265 | + * | |
254 | 266 | * <p>入力ファイルが通常ファイルとして存在しなければエラー終了。 |
267 | + * | |
255 | 268 | * @param optInfo オプション情報 |
256 | 269 | * @return 入力ソース |
257 | 270 | */ |
@@ -273,8 +286,11 @@ public final class Vmd2Xml { | ||
273 | 286 | |
274 | 287 | /** |
275 | 288 | * 出力ストリームを準備する。 |
289 | + * | |
276 | 290 | * <p>出力ファイルが通常ファイルでない場合はエラー終了。 |
291 | + * | |
277 | 292 | * <p>既存の出力ファイルに上書き指示が伴っていなければエラー終了。 |
293 | + * | |
278 | 294 | * @param optInfo オプション情報 |
279 | 295 | * @return 出力ストリーム |
280 | 296 | */ |
@@ -319,6 +335,7 @@ public final class Vmd2Xml { | ||
319 | 335 | |
320 | 336 | /** |
321 | 337 | * オプション情報に従いコンバータを生成する。 |
338 | + * | |
322 | 339 | * @param optInfo オプション情報 |
323 | 340 | * @return コンバータ |
324 | 341 | */ |
@@ -337,7 +354,9 @@ public final class Vmd2Xml { | ||
337 | 354 | |
338 | 355 | /** |
339 | 356 | * 実際のコンバート作業と異常系処理を行う。 |
357 | + * | |
340 | 358 | * <p>異常系が起きた場合、このメソッドは制御を戻さない。 |
359 | + * | |
341 | 360 | * @param converter コンバータ |
342 | 361 | * @param source 入力ソース |
343 | 362 | * @param ostream 出力ストリーム |
@@ -364,7 +383,9 @@ public final class Vmd2Xml { | ||
364 | 383 | |
365 | 384 | /** |
366 | 385 | * コマンドライン文字列をオプション情報としてパースする。 |
386 | + * | |
367 | 387 | * <p>異常系が起きた場合、このメソッドは制御を戻さない。 |
388 | + * | |
368 | 389 | * @param args コマンドライン文字列群 |
369 | 390 | * @return オプション情報 |
370 | 391 | */ |
@@ -387,6 +408,7 @@ public final class Vmd2Xml { | ||
387 | 408 | |
388 | 409 | /** |
389 | 410 | * Mainエントリ。 |
411 | + * | |
390 | 412 | * @param args コマンドパラメータ |
391 | 413 | */ |
392 | 414 | public static void main(String[] args){ |
@@ -54,6 +54,7 @@ public class Vmd2XmlConv { | ||
54 | 54 | |
55 | 55 | /** |
56 | 56 | * 入力ファイル種別を設定する。 |
57 | + * | |
57 | 58 | * @param type ファイル種別 |
58 | 59 | * @throws IllegalArgumentException 具体的な種別を渡さなかった |
59 | 60 | */ |
@@ -67,6 +68,7 @@ public class Vmd2XmlConv { | ||
67 | 68 | |
68 | 69 | /** |
69 | 70 | * 入力ファイル種別を返す。 |
71 | + * | |
70 | 72 | * @return ファイル種別 |
71 | 73 | */ |
72 | 74 | public MotionFileType getInTypes(){ |
@@ -75,6 +77,7 @@ public class Vmd2XmlConv { | ||
75 | 77 | |
76 | 78 | /** |
77 | 79 | * 出力ファイル種別を設定する。 |
80 | + * | |
78 | 81 | * @param type ファイル種別 |
79 | 82 | * @throws IllegalArgumentException 具体的な種別を渡さなかった |
80 | 83 | */ |
@@ -88,6 +91,7 @@ public class Vmd2XmlConv { | ||
88 | 91 | |
89 | 92 | /** |
90 | 93 | * 出力ファイル種別を返す。 |
94 | + * | |
91 | 95 | * @return ファイル種別 |
92 | 96 | */ |
93 | 97 | public MotionFileType getOutTypes(){ |
@@ -96,6 +100,7 @@ public class Vmd2XmlConv { | ||
96 | 100 | |
97 | 101 | /** |
98 | 102 | * XML出力用改行文字列を設定する。 |
103 | + * | |
99 | 104 | * @param newline 改行文字 |
100 | 105 | */ |
101 | 106 | public void setNewline(String newline){ |
@@ -105,6 +110,7 @@ public class Vmd2XmlConv { | ||
105 | 110 | |
106 | 111 | /** |
107 | 112 | * XML出力用改行文字列を返す。 |
113 | + * | |
108 | 114 | * @return 改行文字 |
109 | 115 | */ |
110 | 116 | public String getNewline(){ |
@@ -113,6 +119,7 @@ public class Vmd2XmlConv { | ||
113 | 119 | |
114 | 120 | /** |
115 | 121 | * ジェネレータ名を設定する。 |
122 | + * | |
116 | 123 | * @param generator ジェネレータ名。表示したくない場合はnull |
117 | 124 | */ |
118 | 125 | public void setGenerator(String generator){ |
@@ -122,6 +129,7 @@ public class Vmd2XmlConv { | ||
122 | 129 | |
123 | 130 | /** |
124 | 131 | * ジェネレータ名を返す。 |
132 | + * | |
125 | 133 | * @return ジェネレータ名。非表示の場合はnullを返す。 |
126 | 134 | */ |
127 | 135 | public String getGenerator(){ |
@@ -130,8 +138,9 @@ public class Vmd2XmlConv { | ||
130 | 138 | |
131 | 139 | /** |
132 | 140 | * 回転情報をクォータニオン形式でXML出力するか設定する。 |
141 | + * | |
133 | 142 | * @param sw クォータニオン形式ならtrue、 |
134 | - * YXZオイラー角で出力したければfalse。 | |
143 | + * YXZオイラー角で出力したければfalse。 | |
135 | 144 | */ |
136 | 145 | public void setQuaterniomMode(boolean sw){ |
137 | 146 | this.isQuaternionMode = sw; |
@@ -140,6 +149,7 @@ public class Vmd2XmlConv { | ||
140 | 149 | |
141 | 150 | /** |
142 | 151 | * 回転情報のXML出力形式を得る。 |
152 | + * | |
143 | 153 | * @return クォータニオン形式ならtrue、YXZオイラー角形式ならfalse。 |
144 | 154 | */ |
145 | 155 | public boolean isQuaterniomMode(){ |
@@ -148,8 +158,10 @@ public class Vmd2XmlConv { | ||
148 | 158 | |
149 | 159 | /** |
150 | 160 | * ファイル変換を行う。 |
161 | + * | |
151 | 162 | * <p>XML入力の場合は{@link #convert(InputSource, OutputStream)}を |
152 | 163 | * 推奨する。 |
164 | + * | |
153 | 165 | * @param is 入力ストリーム |
154 | 166 | * @param os 出力ストリーム |
155 | 167 | * @throws IOException 入力エラー |
@@ -172,10 +184,13 @@ public class Vmd2XmlConv { | ||
172 | 184 | |
173 | 185 | /** |
174 | 186 | * ファイル変換を行う。 |
187 | + * | |
175 | 188 | * <p>VMD入力の場合は{@link InputStream}に |
176 | 189 | * バイトストリームが直接設定されていなければならない。 |
190 | + * | |
177 | 191 | * <p>XML入力の場合は{@link InputStream}に |
178 | 192 | * URL(systemId)のみの設定を推奨する。 |
193 | + * | |
179 | 194 | * @param source 入力ソース |
180 | 195 | * @param os 出力ストリーム |
181 | 196 | * @throws IOException 入力エラー |
@@ -198,8 +213,10 @@ public class Vmd2XmlConv { | ||
198 | 213 | |
199 | 214 | /** |
200 | 215 | * モーションファイルを読み込む。 |
216 | + * | |
201 | 217 | * <p>XML読み込みの場合は、 |
202 | 218 | * こちらより{@link #readMotion(InputSource)}版を推奨する。 |
219 | + * | |
203 | 220 | * @param is 入力ストリーム |
204 | 221 | * @return モーションデータ |
205 | 222 | * @throws IOException 入力エラー |
@@ -226,8 +243,10 @@ public class Vmd2XmlConv { | ||
226 | 243 | |
227 | 244 | /** |
228 | 245 | * モーションファイルを読み込む。 |
246 | + * | |
229 | 247 | * <p>VMD入力の場合は、{@link InputStream}に |
230 | 248 | * 納められたバイトストリームかSystemId-URLから読み込む。 |
249 | + * | |
231 | 250 | * @param source 入力ソース |
232 | 251 | * @return モーションデータ |
233 | 252 | * @throws IOException 入力エラー |
@@ -260,6 +279,7 @@ public class Vmd2XmlConv { | ||
260 | 279 | |
261 | 280 | /** |
262 | 281 | * モーションファイルを出力する。 |
282 | + * | |
263 | 283 | * @param motion モーションデータ |
264 | 284 | * @param os 出力ストリーム |
265 | 285 | * @throws IOException 出力エラー |
@@ -281,7 +301,9 @@ public class Vmd2XmlConv { | ||
281 | 301 | |
282 | 302 | /** |
283 | 303 | * VMDファイルからモーションデータを読み込む。 |
304 | + * | |
284 | 305 | * <p>入力ストリームは最後に閉じられる。 |
306 | + * | |
285 | 307 | * @param is 入力ストリーム |
286 | 308 | * @return モーションデータ |
287 | 309 | * @throws IOException 入力エラー |
@@ -300,6 +322,7 @@ public class Vmd2XmlConv { | ||
300 | 322 | |
301 | 323 | /** |
302 | 324 | * XMLファイルからモーションデータを読み込む。 |
325 | + * | |
303 | 326 | * @param source 入力ソース |
304 | 327 | * @return モーションデータ |
305 | 328 | * @throws IOException 入力エラー |
@@ -320,6 +343,7 @@ public class Vmd2XmlConv { | ||
320 | 343 | |
321 | 344 | /** |
322 | 345 | * モーションデータをVMDファイルに出力する。 |
346 | + * | |
323 | 347 | * @param motion モーションデータ |
324 | 348 | * @param ostream 出力ストリーム |
325 | 349 | * @throws IOException 出力エラー |
@@ -335,6 +359,7 @@ public class Vmd2XmlConv { | ||
335 | 359 | |
336 | 360 | /** |
337 | 361 | * モーションデータをXMLファイルに出力する。 |
362 | + * | |
338 | 363 | * @param motion モーションデータ |
339 | 364 | * @param ostream 出力ストリーム |
340 | 365 | * @throws IOException 出力エラー |
@@ -56,6 +56,7 @@ final class XmlInputUtil { | ||
56 | 56 | |
57 | 57 | /** |
58 | 58 | * 実在ファイルからXML入力ソースを得る。 |
59 | + * | |
59 | 60 | * @param file 実在ファイル |
60 | 61 | * @return XML入力ソース |
61 | 62 | */ |
@@ -82,8 +83,10 @@ final class XmlInputUtil { | ||
82 | 83 | |
83 | 84 | /** |
84 | 85 | * InputSourceからInputStreamを得る。 |
86 | + * | |
85 | 87 | * <p>入力ソースには、少なくともバイトストリームか |
86 | 88 | * URL文字列(SystemId)のいずれかが設定されていなければならない。 |
89 | + * | |
87 | 90 | * @param source 入力ソース |
88 | 91 | * @return 入力バイトストリーム |
89 | 92 | * @throws IllegalArgumentException 入力ソースの設定が足りない。 |
@@ -110,11 +113,13 @@ final class XmlInputUtil { | ||
110 | 113 | |
111 | 114 | /** |
112 | 115 | * SAXパーサファクトリを生成する。 |
116 | + * | |
113 | 117 | * <ul> |
114 | 118 | * <li>XML名前空間機能は有効になる。 |
115 | 119 | * <li>DTDによる形式検証は無効となる。 |
116 | 120 | * <li>XIncludeによる差し込み機能は無効となる。 |
117 | 121 | * </ul> |
122 | + * | |
118 | 123 | * @param schema スキーマ |
119 | 124 | * @return ファクトリ |
120 | 125 | */ |
@@ -133,8 +138,7 @@ final class XmlInputUtil { | ||
133 | 138 | factory.setFeature(F_LOAD_EXTERNAL_DTD, false); |
134 | 139 | }catch( ParserConfigurationException |
135 | 140 | | SAXNotRecognizedException |
136 | - | SAXNotSupportedException e | |
137 | - ){ | |
141 | + | SAXNotSupportedException e ){ | |
138 | 142 | assert false; |
139 | 143 | throw new AssertionError(e); |
140 | 144 | } |
@@ -146,6 +150,7 @@ final class XmlInputUtil { | ||
146 | 150 | |
147 | 151 | /** |
148 | 152 | * SAXパーサを生成する。 |
153 | + * | |
149 | 154 | * @param schema スキーマ |
150 | 155 | * @return SAXパーサ |
151 | 156 | */ |
@@ -173,7 +178,7 @@ final class XmlInputUtil { | ||
173 | 178 | |
174 | 179 | /** |
175 | 180 | * スキーマを生成する。 |
176 | - * @param resolver リゾルバ | |
181 | + * | |
177 | 182 | * @param xmlInType 入力XML種別 |
178 | 183 | * @return スキーマ |
179 | 184 | */ |
@@ -213,7 +218,9 @@ final class XmlInputUtil { | ||
213 | 218 | |
214 | 219 | /** |
215 | 220 | * XMLリーダを生成する。 |
221 | + * | |
216 | 222 | * <p>エラーハンドラには{@link BotherHandler}が指定される。 |
223 | + * | |
217 | 224 | * @param xmlInType 入力XML種別 |
218 | 225 | * @return XMLリーダ |
219 | 226 | */ |