2 * PMD morph information handler
4 * License : The MIT License
5 * Copyright(c) 2010 MikuToga Partners
8 package jp.sfjp.mikutoga.pmd.parser;
10 import jp.sfjp.mikutoga.bin.parser.LoopHandler;
11 import jp.sfjp.mikutoga.bin.parser.MmdFormatException;
12 import jp.sfjp.mikutoga.bin.parser.ParseStage;
15 * PMDモデルのモーフ情報の通知用ハンドラ。
17 public interface PmdMorphHandler extends LoopHandler {
20 ParseStage MORPH_LIST = new ParseStage();
23 ParseStage MORPHVERTEX_LIST = new ParseStage();
26 ParseStage MORPHORDER_LIST = new ParseStage();
31 * <p>{@link #MORPH_LIST}ループの構成要素
33 * @param morphName モーフ名
34 * @param morphType モーフ種別。
42 * @throws MmdFormatException 不正フォーマットによる
45 void pmdMorphInfo(String morphName, byte morphType)
46 throws MmdFormatException;
51 * <p>{@link #MORPH_LIST}ループの下位{@link #MORPHVERTEX_LIST}の構成要素。
53 * <p>※ base型頂点IDの出現順がモーフ頂点IDとなる。
55 * @param serialId base型の場合は頂点ID、それ以外はモーフ頂点ID
56 * @param xPos base型の場合はX座標、それ以外はX軸変位
57 * @param yPos base型の場合はY座標、それ以外はY軸変位
58 * @param zPos base型の場合はZ座標、それ以外はZ軸変位
59 * @throws MmdFormatException 不正フォーマットによる
62 void pmdMorphVertexInfo(int serialId,
63 float xPos, float yPos, float zPos)
64 throws MmdFormatException;
67 * 各モーフ種別内のGUI表示順の通知を受け取る。
69 * <p>{@link #MORPHORDER_LIST}ループの構成要素
71 * @param morphId モーフ通し番号。同一モーフ種別内の大小関係のみ意味がある。
72 * @throws MmdFormatException 不正フォーマットによる
75 void pmdMorphOrderInfo(int morphId) throws MmdFormatException;