2 * unique bone information
4 * License : The MIT License
5 * Copyright(c) 2013 MikuToga Partners
8 package jp.sfjp.mikutoga.typical;
13 public final class UniqBone {
15 private static final String HIDARI_LEFT = "\u5de6"; // 「左」
16 private static final String MIGI_RIGHT = "\u53f3"; // 「右」
17 private static final String HIZA_KNEE = "\u3072\u3056"; // 「ひざ」
20 private static final String KNEE_L_PFX =
21 HIDARI_LEFT + HIZA_KNEE; // 左ひざ
22 private static final String KNEE_R_PFX =
23 MIGI_RIGHT + HIZA_KNEE; // 右ひざ
26 assert "左ひざ".equals(KNEE_L_PFX);
27 assert "右ひざ".equals(KNEE_R_PFX);
36 throw new AssertionError();
40 * IK演算時の回転方向に制限を受ける「ひざボーン」か否か、
42 * <p>ボーンのプライマリ名が「左ひざ」もしくは「右ひざ」で始まれば
60 * @param boneNameJp プライマリボーン名
63 public static boolean isPrimaryKneeName(String boneNameJp){
64 if(boneNameJp.startsWith(KNEE_L_PFX)) return true;
65 if(boneNameJp.startsWith(KNEE_R_PFX)) return true;