/** * Adds an animation to be available for playing to this * <code>AnimControl</code>. * * @param anim The animation to add. */ public void addAnimClip(AnimClip anim) { animClipMap.put(anim.getName(), anim); }
public ClipAction(AnimClip clip) { this.clip = clip; setLength(clip.getLength()); }
String name = SAXUtil.parseString(attribs.getValue("name")); animClip = new AnimClip(name); } else if (qName.equals("bonehierarchy")) { assert elementStack.peek().equals("skeleton");
animClip.setTracks(trackList); tracks.clear(); } else if (qName.equals("keyframe")) {
public String toString() { return clip.toString(); }
/** * Remove an animation so that it is no longer available for playing. * * @param anim The animation to remove. */ public void removeAnimClip(AnimClip anim) { if (!animClipMap.containsKey(anim.getName())) { throw new IllegalArgumentException("Given animation does not exist " + "in this AnimControl"); } animClipMap.remove(anim.getName()); }
@Override public void doInterpolate(double t) { AnimTrack[] tracks = clip.getTracks(); for (AnimTrack track : tracks) { if (track instanceof TransformTrack) { TransformTrack tt = (TransformTrack) track; if(getMask() != null && !getMask().contains(tt.getTarget())){ continue; } interpolateTransformTrack(t, tt); } else if (track instanceof MorphTrack) { interpolateMorphTrack(t, (MorphTrack) track); } } }
for (int i = 0; i < animList.size(); i++) { AnimClip anim = animList.get(i); anims.put(anim.getName(), anim);