package com.akjava.gwt.three.client.java.bone;
import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Preconditions.checkNotNull;
import com.akjava.gwt.three.client.gwt.boneanimation.AnimationBone;
import com.akjava.gwt.three.client.js.THREE;
import com.akjava.gwt.three.client.js.math.Vector2;
import com.google.gwt.core.client.JsArray;
public class BoneNameUtils {
private BoneNameUtils(){}
public static Vector2 parsePlainBoneName(String boneName){
checkNotNull(boneName,"boneName is null");
checkArgument(boneName.indexOf(",")!=-1,"not plain-bone name ");
String[] name=boneName.split(",");
int atX=Integer.parseInt(name[0]);
int atY=Integer.parseInt(name[1]);
return THREE.Vector2(atX, atY);
}
public static String makePlainBoneName(int x,int y){
return x+","+y;
}
public static int findBoneByName(JsArray<AnimationBone> bones,String name){
checkNotNull(name,"boneName is null");
checkNotNull(bones,"no bones");
for(int i=0;i<bones.length();i++){
if(bones.get(i).getName().equals(name)){
return i;
}
}
return -1;
}
}