Skeleton constructor
Skeleton(
- SkeletonData data
Implementation
Skeleton(this.data) {
for (int i = 0; i < data.bones.length; i++) {
final BoneData boneData = data.bones[i];
Bone bone;
if (boneData.parent == null) {
bone = Bone(boneData, this, null);
} else {
final Bone parent = bones[boneData.parent!.index];
bone = Bone(boneData, this, parent);
parent.children.add(bone);
}
bones.add(bone);
}
for (int i = 0; i < data.slots.length; i++) {
final SlotData slotData = data.slots[i];
final Bone bone = bones[slotData.boneData.index];
final Slot slot = Slot(slotData, bone);
slots.add(slot);
drawOrder.add(slot);
}
for (int i = 0; i < data.ikConstraints.length; i++) {
final IkConstraintData? ikConstraintData = data.ikConstraints[i];
if (ikConstraintData != null) {
ikConstraints.add(IkConstraint(ikConstraintData, this));
}
}
for (int i = 0; i < data.transformConstraints.length; i++) {
final TransformConstraintData? transformConstraintData =
data.transformConstraints[i];
if (transformConstraintData != null) {
transformConstraints
.add(TransformConstraint(transformConstraintData, this));
}
}
for (int i = 0; i < data.pathConstraints.length; i++) {
final PathConstraintData pathConstraintData = data.pathConstraints[i];
pathConstraints.add(PathConstraint(pathConstraintData, this));
}
color = Color(1.0, 1.0, 1.0, 1.0);
updateCache();
}