-/*\r
- * PMD joint information handler\r
- *\r
- * License : The MIT License\r
- * Copyright(c) 2010 MikuToga Partners\r
- */\r
-\r
-package jp.sourceforge.mikutoga.parser.pmd;\r
-\r
-import jp.sourceforge.mikutoga.parser.LoopHandler;\r
-import jp.sourceforge.mikutoga.parser.MmdFormatException;\r
-import jp.sourceforge.mikutoga.parser.ParseStage;\r
-\r
-/**\r
- * PMDモデルの各種剛体間ジョイント情報の通知用ハンドラ。\r
- */\r
-public interface PmdJointHandler extends LoopHandler {\r
-\r
- /**\r
- * ジョイント情報パースステージ。\r
- */\r
- class PmdJointStage extends ParseStage{\r
- /** コンストラクタ。 */\r
- PmdJointStage(){ super(); return; }\r
- }\r
-\r
- /** ジョイント情報抽出ループ。 */\r
- PmdJointStage JOINT_LIST = new PmdJointStage();\r
-\r
- /**\r
- * ジョイント名の通知を受け取る。\r
- * {@link #JOINT_LIST}ループの構成要素。\r
- * @param jointName ジョイント名\r
- * @throws MmdFormatException 不正フォーマットによる\r
- * パース処理の中断をパーサに指示。\r
- */\r
- void pmdJointName(String jointName)\r
- throws MmdFormatException;\r
-\r
- /**\r
- * ジョイントが繋ぐ接続剛体IDの通知を受け取る。\r
- * {@link #JOINT_LIST}ループの構成要素。\r
- * @param rigidIdA 接続剛体AのID\r
- * @param rigidIdB 接続剛体BのID\r
- * @throws MmdFormatException 不正フォーマットによる\r
- * パース処理の中断をパーサに指示。\r
- */\r
- void pmdJointLink(int rigidIdA, int rigidIdB)\r
- throws MmdFormatException;\r
-\r
- /**\r
- * ジョイント位置の通知を受け取る。\r
- * {@link #JOINT_LIST}ループの構成要素。\r
- * @param posX X座標\r
- * @param posY Y座標\r
- * @param posZ Z座標\r
- * @throws MmdFormatException 不正フォーマットによる\r
- * パース処理の中断をパーサに指示。\r
- */\r
- void pmdJointPosition(float posX, float posY, float posZ)\r
- throws MmdFormatException;\r
-\r
- /**\r
- * ジョイント回転姿勢の通知を受け取る。\r
- * {@link #JOINT_LIST}ループの構成要素。\r
- * @param radX X軸回転量(radian)\r
- * @param radY Y軸回転量(radian)\r
- * @param radZ Z軸回転量(radian)\r
- * @throws MmdFormatException 不正フォーマットによる\r
- * パース処理の中断をパーサに指示。\r
- */\r
- void pmdJointRotation(float radX, float radY, float radZ)\r
- throws MmdFormatException;\r
-\r
- /**\r
- * ジョイント移動制限の通知を受け取る。\r
- * {@link #JOINT_LIST}ループの構成要素。\r
- * ※(制限端その1<=その2)条件を満たす必要はあるか?\r
- * @param posXlim1 X座標制限端その1\r
- * @param posXlim2 X座標制限端その2\r
- * @param posYlim1 Y座標制限端その1\r
- * @param posYlim2 Y座標制限端その2\r
- * @param posZlim1 Z座標制限端その1\r
- * @param posZlim2 Z座標制限端その2\r
- * @throws MmdFormatException 不正フォーマットによる\r
- * パース処理の中断をパーサに指示。\r
- */\r
- void pmdPositionLimit(float posXlim1, float posXlim2,\r
- float posYlim1, float posYlim2,\r
- float posZlim1, float posZlim2 )\r
- throws MmdFormatException;\r
-\r
- /**\r
- * ジョイント回転制限の通知を受け取る。\r
- * {@link #JOINT_LIST}ループの構成要素。\r
- * ※(制限端その1<=その2)条件を満たす必要はあるか?\r
- * @param radXlim1 X軸制限端その1(radian)\r
- * @param radXlim2 X軸制限端その2(radian)\r
- * @param radYlim1 Y軸制限端その1(radian)\r
- * @param radYlim2 Y軸制限端その2(radian)\r
- * @param radZlim1 Z軸制限端その1(radian)\r
- * @param radZlim2 Z軸制限端その2(radian)\r
- * @throws MmdFormatException 不正フォーマットによる\r
- * パース処理の中断をパーサに指示。\r
- */\r
- void pmdRotationLimit(float radXlim1, float radXlim2,\r
- float radYlim1, float radYlim2,\r
- float radZlim1, float radZlim2 )\r
- throws MmdFormatException;\r
-\r
- /**\r
- * ジョイントのばね移動情報の通知を受け取る。\r
- * {@link #JOINT_LIST}ループの構成要素。\r
- * @param elasticPosX X座標\r
- * @param elasticPosY Y座標\r
- * @param elasticPosZ Z座標\r
- * @throws MmdFormatException 不正フォーマットによる\r
- * パース処理の中断をパーサに指示。\r
- */\r
- void pmdElasticPosition(float elasticPosX,\r
- float elasticPosY,\r
- float elasticPosZ )\r
- throws MmdFormatException;\r
-\r
- /**\r
- * ジョイントのばね回転情報の通知を受け取る。\r
- * {@link #JOINT_LIST}ループの構成要素。\r
- * @param elasticDegX X軸変量(degree)\r
- * @param elasticDegY Y軸変量(degree)\r
- * @param elasticDegZ Z軸変量(degree)\r
- * @throws MmdFormatException 不正フォーマットによる\r
- * パース処理の中断をパーサに指示。\r
- */\r
- void pmdElasticRotation(float elasticDegX,\r
- float elasticDegY,\r
- float elasticDegZ )\r
- throws MmdFormatException;\r
-\r
-}\r
+/*
+ * PMD joint information handler
+ *
+ * License : The MIT License
+ * Copyright(c) 2010 MikuToga Partners
+ */
+
+package jp.sourceforge.mikutoga.parser.pmd;
+
+import jp.sourceforge.mikutoga.parser.LoopHandler;
+import jp.sourceforge.mikutoga.parser.MmdFormatException;
+import jp.sourceforge.mikutoga.parser.ParseStage;
+
+/**
+ * PMDモデルの各種剛体間ジョイント情報の通知用ハンドラ。
+ */
+public interface PmdJointHandler extends LoopHandler {
+
+ /**
+ * ジョイント情報パースステージ。
+ */
+ class PmdJointStage extends ParseStage{
+ /** コンストラクタ。 */
+ PmdJointStage(){ super(); return; }
+ }
+
+ /** ジョイント情報抽出ループ。 */
+ PmdJointStage JOINT_LIST = new PmdJointStage();
+
+ /**
+ * ジョイント名の通知を受け取る。
+ * {@link #JOINT_LIST}ループの構成要素。
+ * @param jointName ジョイント名
+ * @throws MmdFormatException 不正フォーマットによる
+ * パース処理の中断をパーサに指示。
+ */
+ void pmdJointName(String jointName)
+ throws MmdFormatException;
+
+ /**
+ * ジョイントが繋ぐ接続剛体IDの通知を受け取る。
+ * {@link #JOINT_LIST}ループの構成要素。
+ * @param rigidIdA 接続剛体AのID
+ * @param rigidIdB 接続剛体BのID
+ * @throws MmdFormatException 不正フォーマットによる
+ * パース処理の中断をパーサに指示。
+ */
+ void pmdJointLink(int rigidIdA, int rigidIdB)
+ throws MmdFormatException;
+
+ /**
+ * ジョイント位置の通知を受け取る。
+ * {@link #JOINT_LIST}ループの構成要素。
+ * @param posX X座標
+ * @param posY Y座標
+ * @param posZ Z座標
+ * @throws MmdFormatException 不正フォーマットによる
+ * パース処理の中断をパーサに指示。
+ */
+ void pmdJointPosition(float posX, float posY, float posZ)
+ throws MmdFormatException;
+
+ /**
+ * ジョイント回転姿勢の通知を受け取る。
+ * {@link #JOINT_LIST}ループの構成要素。
+ * @param radX X軸回転量(radian)
+ * @param radY Y軸回転量(radian)
+ * @param radZ Z軸回転量(radian)
+ * @throws MmdFormatException 不正フォーマットによる
+ * パース処理の中断をパーサに指示。
+ */
+ void pmdJointRotation(float radX, float radY, float radZ)
+ throws MmdFormatException;
+
+ /**
+ * ジョイント移動制限の通知を受け取る。
+ * {@link #JOINT_LIST}ループの構成要素。
+ * ※(制限端その1<=その2)条件を満たす必要はあるか?
+ * @param posXlim1 X座標制限端その1
+ * @param posXlim2 X座標制限端その2
+ * @param posYlim1 Y座標制限端その1
+ * @param posYlim2 Y座標制限端その2
+ * @param posZlim1 Z座標制限端その1
+ * @param posZlim2 Z座標制限端その2
+ * @throws MmdFormatException 不正フォーマットによる
+ * パース処理の中断をパーサに指示。
+ */
+ void pmdPositionLimit(float posXlim1, float posXlim2,
+ float posYlim1, float posYlim2,
+ float posZlim1, float posZlim2 )
+ throws MmdFormatException;
+
+ /**
+ * ジョイント回転制限の通知を受け取る。
+ * {@link #JOINT_LIST}ループの構成要素。
+ * ※(制限端その1<=その2)条件を満たす必要はあるか?
+ * @param radXlim1 X軸制限端その1(radian)
+ * @param radXlim2 X軸制限端その2(radian)
+ * @param radYlim1 Y軸制限端その1(radian)
+ * @param radYlim2 Y軸制限端その2(radian)
+ * @param radZlim1 Z軸制限端その1(radian)
+ * @param radZlim2 Z軸制限端その2(radian)
+ * @throws MmdFormatException 不正フォーマットによる
+ * パース処理の中断をパーサに指示。
+ */
+ void pmdRotationLimit(float radXlim1, float radXlim2,
+ float radYlim1, float radYlim2,
+ float radZlim1, float radZlim2 )
+ throws MmdFormatException;
+
+ /**
+ * ジョイントのばね移動情報の通知を受け取る。
+ * {@link #JOINT_LIST}ループの構成要素。
+ * @param elasticPosX X座標
+ * @param elasticPosY Y座標
+ * @param elasticPosZ Z座標
+ * @throws MmdFormatException 不正フォーマットによる
+ * パース処理の中断をパーサに指示。
+ */
+ void pmdElasticPosition(float elasticPosX,
+ float elasticPosY,
+ float elasticPosZ )
+ throws MmdFormatException;
+
+ /**
+ * ジョイントのばね回転情報の通知を受け取る。
+ * {@link #JOINT_LIST}ループの構成要素。
+ * @param elasticDegX X軸変量(degree)
+ * @param elasticDegY Y軸変量(degree)
+ * @param elasticDegZ Z軸変量(degree)
+ * @throws MmdFormatException 不正フォーマットによる
+ * パース処理の中断をパーサに指示。
+ */
+ void pmdElasticRotation(float elasticDegX,
+ float elasticDegY,
+ float elasticDegZ )
+ throws MmdFormatException;
+
+}