def addObjects(self): # self.length0 = vec.getDistance(self.guide.apos[0], self.guide.apos[1]) if self.settings["neutralRotation"]: t = tra.getTransformFromPos(self.guide.pos["root"]) else: t = self.guide.tra["root"] t = tra.setMatrixScale(t) self.ik_cns = pri.addTransform(self.root, self.getName("ik_cns"), t) self.ctl = self.addCtl(self.ik_cns, "ctl", t, self.color_ik, self.settings["icon"], w=self.settings["ctlSize"] * self.size, h=self.settings["ctlSize"] * self.size, d=self.settings["ctlSize"] * self.size, tp=self.parentCtlTag) params = [ s for s in ["tx", "ty", "tz", "ro", "rx", "ry", "rz", "sx", "sy", "sz"] if self.settings["k_" + s] ] att.setKeyableAttributes(self.ctl, params) if self.settings["joint"]: self.jnt_pos.append([self.ctl, 0, None, self.settings["uniScale"]]) if self.settings["k_ro"]: rotOderList = ["XYZ", "YZX", "ZXY", "XZY", "YXZ", "ZYX"] att.setRotOrder(self.ctl, rotOderList[self.settings["default_rotorder"]])
def addObjects(self): """Add all the objects needed to create the component.""" if self.settings["neutralRotation"]: t = transform.getTransformFromPos(self.guide.pos["root"]) else: t = self.guide.tra["root"] if self.settings["mirrorBehaviour"] and self.negate: scl = [1, 1, -1] else: scl = [1, 1, 1] t = transform.setMatrixScale(t, scl) self.ik_cns = primitive.addTransform(self.root, self.getName("ik_cns"), t) self.ctl = self.addCtl(self.ik_cns, "ctl", t, self.color_ik, self.settings["icon"], w=self.settings["ctlSize"] * self.size, h=self.settings["ctlSize"] * self.size, d=self.settings["ctlSize"] * self.size, tp=self.parentCtlTag) # we need to set the rotation order before lock any rotation axis if self.settings["k_ro"]: rotOderList = ["XYZ", "YZX", "ZXY", "XZY", "YXZ", "ZYX"] attribute.setRotOrder( self.ctl, rotOderList[self.settings["default_rotorder"]]) params = [ s for s in ["tx", "ty", "tz", "ro", "rx", "ry", "rz", "sx", "sy", "sz"] if self.settings["k_" + s] ] attribute.setKeyableAttributes(self.ctl, params) if self.settings["joint"]: self.jnt_pos.append([self.ctl, 0, None, self.settings["uniScale"]])
def addObjects(self): """Add all the objects needed to create the component.""" ctlSize = vector.getDistance(self.guide.apos[0], self.guide.apos[1]) / 3.0 t_root = self.guide.tra["root"] t_root = transform.setMatrixScale(t_root) self.ik_cns = primitive.addTransform(self.root, self.getName("ik_cns"), t_root) t = transform.setMatrixPosition(t_root, self.guide.pos["top"]) self.top_npo = primitive.addTransform(self.ik_cns, self.getName("top_npo"), t) self.top_ctl = self.addCtl(self.top_npo, "top_ctl", t, self.color_ik, "arrow", w=ctlSize, ro=datatypes.Vector(1.5708, 1.5708, 0), tp=self.parentCtlTag) attribute.setKeyableAttributes(self.top_ctl, ["ty"]) t = transform.setMatrixPosition(t_root, self.guide.pos["bottom"]) self.bottom_npo = primitive.addTransform(self.top_npo, self.getName("bottom_npo"), t) self.bottom_npo.rz.set(180) self.bottom_ctl = self.addCtl(self.bottom_npo, "bottom_ctl", t, self.color_ik, "arrow", w=ctlSize, ro=datatypes.Vector(1.5708, 1.5708, 0), tp=self.parentCtlTag) self.bottom_ctl.rz.set(0) attribute.setKeyableAttributes(self.bottom_ctl, ["ty"]) self.bottom_pivot = primitive.addTransform( self.bottom_npo, self.getName("bottom_pivot"), transform.getTransform(self.top_ctl)) t = transform.setMatrixPosition(t_root, self.guide.pos["ext"]) self.ext_npo = primitive.addTransform(self.bottom_pivot, self.getName("ext_npo"), t) self.ext_npo.rz.set(-90) self.ext_ctl = self.addCtl(self.ext_npo, "ext_ctl", t, self.color_ik, "arrow", w=ctlSize, ro=datatypes.Vector(1.5708, 1.5708, 0), tp=self.parentCtlTag) self.ext_ctl.rz.set(0) attribute.setKeyableAttributes(self.ext_ctl, ["ty"]) t = transform.setMatrixPosition(t_root, self.guide.pos["int"]) self.int_npo = primitive.addTransform(self.ext_npo, self.getName("int_npo"), t) self.int_npo.rz.set(180) self.int_ctl = self.addCtl(self.int_npo, "int_ctl", t, self.color_ik, "arrow", w=ctlSize, ro=datatypes.Vector(1.5708, 1.5708, 0), tp=self.parentCtlTag) self.int_ctl.rz.set(0) attribute.setKeyableAttributes(self.int_ctl, ["ty"]) self.int_pivot = primitive.addTransform( self.int_npo, self.getName("int_pivot"), transform.getTransform(self.ext_ctl)) self.anchor = primitive.addTransform( self.int_pivot, self.getName("int_npo"), transform.getTransform(self.ik_cns)) if self.settings["joint"]: self.jnt_pos.append([self.anchor, 0, None, False])