Beispiel #1
0
    def _createGeometry(self, name, side):

        #create tibia
        self.tibia = mc.polyCube(sx=1,
                                 sy=1,
                                 sz=1,
                                 w=2,
                                 h=50,
                                 d=2,
                                 n=name + '_tibia')[0]
        mc.move(0, 28, -12)

        self.knee = mc.polyCylinder(h=5, r=2, n=name + '_knee')[0]
        mc.move(0, 54, -12, r=True)
        mc.rotate(0, 0, '90deg')
        self.tibia = mc.polyUnite(self.tibia, self.knee, n=name + '_tibia')[0]
        mc.move(0, 54, -12, self.tibia + ".scalePivot",
                self.tibia + ".rotatePivot")

        #create feamer
        self.femur = mc.polyCube(sx=1,
                                 sy=1,
                                 sz=1,
                                 w=3,
                                 h=50,
                                 d=3,
                                 n=name + '_feamer')[0]
        mc.move(0, 80, -12)
        self.hip = mc.polySphere(r=5, n=name + '_hip')
        mc.move(0, 107, -12)
        self.femur = mc.polyUnite(self.femur, self.hip, n=name + '_femur')[0]
        mc.move(0, 107, -12, self.femur + ".scalePivot",
                self.femur + ".rotatePivot")

        pass
Beispiel #2
0
    def _createGeometry(self, name, side):

        #build toe
        self.side = side
        self.name = name
        self.toe = mc.polyCube(sx=2,
                               sy=2,
                               sz=2,
                               w=5,
                               h=2,
                               d=3,
                               n=name + '_toe')[0]
        self.ball = mc.polyCylinder(h=5, n=name + '_ball')[0]
        mc.move(0, 0, -2, r=True)
        mc.rotate(0, 0, '90deg')
        self.toe = mc.polyUnite(self.toe, self.ball, n=name + '_toe')[0]
        mc.move(0, 0, -2, self.toe + ".scalePivot", self.toe + ".rotatePivot")

        #build arch
        self.arch = mc.polyCube(w=5, d=10, n=name + '_arch')[0]
        mc.move(0, 0, -7, r=True)

        #mc.select(f[8]-f[11])
        mc.select(self.arch + '.f[2]')
        mc.move(0, 3, 0, r=True)

        self.ankle = mc.polySphere(r=2.5)[0]
        mc.move(0, 3, -12, r=True)

        self.arch = mc.polyUnite(self.arch, self.ankle, n=name + '_arch')[0]

        mc.move(0, 3, -12, self.arch + ".scalePivot",
                self.arch + ".rotatePivot")
        #self.heal = mc.polyCube(sx=2, sy=2, sz=2,w=5, h=3, n=name+'_heal')
        pass
Beispiel #3
0
    def _createGeometry(self, name, side):

        #create tibia
        self.tibia = mc.polyCube(sx=1,
                                 sy=1,
                                 sz=1,
                                 w=2,
                                 h=50,
                                 d=2,
                                 n=name + '_tibia')[0]
        mc.move(0, 28, -12)

        self.knee = mc.polyCylinder(h=5, r=2, n=name + '_knee')[0]
        mc.move(0, 54, -12, r=True)
        mc.rotate(0, 0, '90deg')
        self.tibia = mc.polyUnite(self.tibia, self.knee, n=name + '_tibia')[0]

        self.llegArmor = mc.polyCube(w=8, h=30, d=8)[0]
        mc.move(0, 22, -12)

        mc.select(self.llegArmor + '.f[3]')
        mc.scale(1.5, 1, 1.5)
        mc.select(self.llegArmor + '.e[0]')
        mc.polySubdivideEdge(dv=2)
        mc.select(self.llegArmor + '.e[12]')
        mc.move(0, 2, 0, r=True)
        self.tibia = mc.polyUnite(self.tibia,
                                  self.llegArmor,
                                  n=name + '_tibia')[0]

        mc.move(0, 54, -12, self.tibia + ".scalePivot",
                self.tibia + ".rotatePivot")

        #create feamer
        self.femur = mc.polyCube(sx=1,
                                 sy=1,
                                 sz=1,
                                 w=3,
                                 h=50,
                                 d=3,
                                 n=name + '_feamer')[0]
        mc.move(0, 80, -12)
        self.hip = mc.polySphere(r=5, n=name + '_hip')
        mc.move(0, 107, -12)
        self.femur = mc.polyUnite(self.femur, self.hip, n=name + '_femur')[0]
        mc.move(0, 107, -12, self.femur + ".scalePivot",
                self.femur + ".rotatePivot")

        self._createCalfArmor(name, side)

        pass
Beispiel #4
0
    def _createCalfArmor(self, name, side):
        p1 = mc.polySphere(r=10)[0]
        mc.scale(.35, 1.5, .75)
        mc.move(5, 0, 0)

        p2 = mc.polySphere(r=10)[0]
        mc.scale(.35, 1.5, .75)
        mc.move(-5, 0, 0)

        p3 = mc.polyCylinder(r=10, sx=40)[0]
        mc.rotate(0, 0, '90deg')
        mc.scale(1.5, 5, .75)

        #claf1 = mc.polyUnite(p1,p2,p3)
        #print calf1
        #calf1 = mc.polyBoolOp(p1, p3, op=1, n='calf')[0]
        #calf2 = mc.polyBoolOp(calf1, p2, op=1, n='calf')[0]

        p4 = mc.polyCube(w=10, h=10, d=10)[0]
        mc.move(0, 10, -5)
        p5 = mc.polyCube(w=10, h=10, d=10)[0]
        mc.move(0, 10, -5)
        p6 = mc.polyCube(w=10, h=10, d=10)[0]
        mc.move(0, 10, -5)

        c1 = mc.polyBoolOp(p1, p4, op=2)[0]
        c2 = mc.polyBoolOp(p2, p5, op=2)[0]
        c3 = mc.polyBoolOp(p3, p6, op=2)[0]
        claf1 = mc.polyUnite(c1, c2, c3)
        mc.sets(e=True, forceElement=self.color1)
        mc.move(0, 45, -10)

        self.tibia = mc.polyUnite(self.tibia, claf1)

        t1 = mc.polyCube(sx=3, sy=3, sz=3, w=10, h=10, d=10, n='thigh')[0]
        t1r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        mc.scale(1, 5, 1)
        mc.move(0, 75, -12, r=True)

        t3 = mc.polyCube(sx=3, sy=3, sz=3, w=10, h=15, d=10,
                         n='thight_armor')[0]
        mc.sets(e=True, forceElement=self.color1)
        t3r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        mc.scale(1.75, 3, 1.4)

        mc.move(0, 90, -9, r=True)

        self.femur = mc.polyUnite(self.femur, t1, t3)

        pass
Beispiel #5
0
    def _createGeometry(self, segmentLength, offset):


        mc.select(cl=True)
        #section 1 cunstruction
        self.r_hand_p_n_1 = mc.polySphere(r=.6,n="r_hand_p_n_1")
        mc.move(offset,2,.25)
        self.r_hand_p_b_1 = mc.polyCylinder(r=.25,h=.5,n="r_hand_p_b_1")
        mc.move(offset,2.6,.25)
        self.r_hand_p_p_1 = mc.polyCube(sx=2, sy=2, sz=2, h=segmentLength)
        mc.move(offset,3.25+self.segOffset,.25)
        self.r_hand_p_n_2_a = mc.polyCylinder(ax=[1,0,0], sx=2, sy=2, sz=2, h=.3, r=.5,n='r_hand_p_n_2_a')
        mc.move(offset+.35,4.25+(2*self.segOffset),.25) #1.875 + .35
        self.r_hand_p_n_2_b = mc.polyCylinder(ax=[1,0,0], sx=2, sy=2, sz=2, h=.3, r=.5,n='r_hand_p_n_2_b')
        mc.move(offset-.35,4.25+(2*self.segOffset),.25) #1.875 -.35

        #section 1 unite

        self.r_hand_p_s_1 = mc.polyUnite(self.r_hand_p_n_1, self.r_hand_p_b_1, self.r_hand_p_p_1,
                                         self.r_hand_p_n_2_a, self.r_hand_p_n_2_b, n='r_hand_p_s_1')[0]
        mc.move(offset,2,.25, self.r_hand_p_s_1+".scalePivot", self.r_hand_p_s_1+".rotatePivot")

        #section 2 construction
        self.r_hand_p_n_2_c = mc.polyCylinder(ax=[1,0,0], sx=2, sy=2, sz=2, h=.3, r=.5,n='r_hand_p_n_2_c')
        mc.move(offset,4.25+(2*self.segOffset),.25)
        self.r_hand_p_p_2 = mc.polyCube(sx=2, sy=2, sz=2, h=segmentLength)
        mc.move(offset,5.25+(3*self.segOffset),.25)
        self.r_hand_p_n_3_a = mc.polyCylinder(ax=[1,0,0], sx=2, sy=2, sz=2, h=.3, r=.5,n='r_hand_p_n_3_a')
        mc.move(offset+.35,6.25+(4*self.segOffset),.25) #1.875 + .35
        self.r_hand_p_n_3_b = mc.polyCylinder(ax=[1,0,0], sx=2, sy=2, sz=2, h=.3, r=.5,n='r_hand_p_n_3_b')
        mc.move(offset-.35,6.25+(4*self.segOffset),.25) #1.875 -.35

        #section 2 unite

        self.r_hand_p_s_2 = mc.polyUnite(self.r_hand_p_n_2_c, self.r_hand_p_p_2, self.r_hand_p_n_3_a,
                                         self.r_hand_p_n_3_b, n='r_hand_p_s_2')[0]
        mc.move(offset,4.25+(2*self.segOffset),.25, self.r_hand_p_s_2+".scalePivot", self.r_hand_p_s_2+".rotatePivot")

        #section 3 construction
        self.r_hand_p_n_3_c = mc.polyCylinder(ax=[1,0,0], sx=2, sy=2, sz=2, h=.3, r=.5,n='r_hand_p_n_3_c')
        mc.move(offset,6.25+(4*self.segOffset),.25)
        self.r_hand_p_p_3 = mc.polyCube(sx=2, sy=2, sz=2, h=segmentLength)
        mc.move(offset,7.25+(5*self.segOffset),.25)

        #section 3 unite

        self.r_hand_p_s_3 = mc.polyUnite(self.r_hand_p_n_3_c, self.r_hand_p_p_3, n='r_hand_p_s_3')[0]
        mc.move(offset,6.25+(4*self.segOffset),.25, self.r_hand_p_s_3+".scalePivot", self.r_hand_p_s_3+".rotatePivot")
Beispiel #6
0
    def _createGeometry(self, name):
        '''
        #create tibia
        self.tibia = mc.polyCube(sx=1, sy=1, sz=1, w=2,h=50, d=2, n=name+'_tibia')[0]
        mc.move(0,28,-12)

        self.knee = mc.polyCylinder(h=5,r=2,n=name+'_knee')[0]
        mc.move(0,54,-12,r=True)
        mc.rotate(0,0,'90deg')
        self.tibia = mc.polyUnite(self.tibia,self.knee, n=name+'_tibia')[0]
        mc.move(0,54,-12, self.tibia+".scalePivot", self.tibia+".rotatePivot")

        #create feamer
        self.femur = mc.polyCube(sx=1, sy=1, sz=1, w=3,h=50, d=3, n=name+'_feamer')[0]
        mc.move(0,80,-12)
        self.hip = mc.polySphere(r=5,n=name+'_hip')
        mc.move(0,107,-12)
        self.femur = mc.polyUnite(self.femur,self.hip, n=name+'_femur')[0]
        mc.move(0,107,-12, self.femur+".scalePivot", self.femur+".rotatePivot")
        pass
        '''

        self.spine = mc.polyCylinder(h=75, r=2, n=name + '_spine')[0]
        mc.move(0, 30, 0)
        self.pelvic = mc.polyCylinder(h=40, r=2, n=name + '_pelvic')[0]
        mc.rotate(0, 0, '90deg')
        self.clavical = mc.polyCylinder(h=56, r=2, n=name + '_clavical')[0]
        mc.rotate(0, 0, '90deg')
        mc.move(0, 67, 0)

        #self.hip = mc.polySphere(r=5,n=name+'_hip')

        self.torso = mc.polyUnite(self.spine, self.pelvic, n=name)[0]
Beispiel #7
0
    def _createGeometry(self, side):
        mc.select(cl=True)
        self.r_hand_palm = mc.polyCube(sx=4,
                                       sy=4,
                                       sz=4,
                                       w=10,
                                       h=10,
                                       d=3,
                                       n='R_palm')[0]
        mc.move(0, 5, -1.5)
        self.r_hand_heal = mc.polyCube(w=10, h=2, d=2, n='R_heal')[0]
        mc.move(0, 1, 1, r=True)

        if side == Side.right:
            mc.select(self.r_hand_heal + '.e[7]')
        elif side == Side.left:
            mc.select(self.r_hand_heal + '.e[6]')

        mc.move(0, 2, 0, r=True)

        self.r_hand = mc.polyUnite(self.r_hand_heal,
                                   self.r_hand_palm,
                                   n='r_hand')[0]

        self.r_hand_n_1 = mc.polySphere(r=1.2, n="r_hand_n_1")[0]
        mc.move(-3.75, 9.25, -.5)
        self.r_hand_n_2 = mc.polySphere(r=1.2, n="r_hand_n_2")[0]
        mc.move(-1.25, 9.25, -.5)
        self.r_hand_n_3 = mc.polySphere(r=1.2, n="r_hand_n_3")[0]
        mc.move(1.25, 9.25, -.5)
        self.r_hand_n_4 = mc.polySphere(r=1.2, n="r_hand_n_4")[0]
        mc.move(3.75, 9.25, -.5)
        self.r_hand_n_t = mc.polySphere(r=1.2, n="r_hand_n_t")[0]

        if side == Side.right:
            mc.move(4.5, 2, 1.5)
        elif side == Side.left:
            mc.move(-4.5, 2, 1.5)

        #self.hand = mc.polyCBoolOp(self.r_hand, self.r_hand_n_1, self.r_hand_n_2, self.r_hand_n_3, self.r_hand_n_4, self.r_hand_n_t,
        #                       op=2, n='r_hand')

        ### we did this becuase maya is stupid, and 2014 does not have polyCBoolOp()

        self.hand = mc.polyBoolOp(self.r_hand,
                                  self.r_hand_n_1,
                                  op=2,
                                  n='r_hand')[0]
        self.hand = mc.polyBoolOp(self.hand, self.r_hand_n_2, op=2,
                                  n='r_hand')[0]
        self.hand = mc.polyBoolOp(self.hand, self.r_hand_n_3, op=2,
                                  n='r_hand')[0]
        self.hand = mc.polyBoolOp(self.hand, self.r_hand_n_4, op=2,
                                  n='r_hand')[0]
        self.hand = mc.polyBoolOp(self.hand, self.r_hand_n_t, op=2,
                                  n='r_hand')[0]
Beispiel #8
0
    def _createGeometry(self, name, side):

        #create radius
        self.radius = mc.polyCube(sx=1, sy=1, sz=1, w=2,h=40, d=2, n=name+'_radius')[0]
        mc.move(0,20,0)

        self.elbow = mc.polyCylinder(h=5,r=2,n=name+'_elbow')[0]
        mc.move(0,41,0,r=True)
        mc.rotate(0,0,'90deg')
        self.radius = mc.polyUnite(self.radius,self.elbow, n=name+'_radius')[0]
        mc.move(0,41,0, self.radius+".scalePivot", self.radius+".rotatePivot")

        #create humerus
        self.humerus = mc.polyCube(sx=1, sy=1, sz=1, w=3,h=40, d=3, n=name+'_humerus')[0]
        mc.move(0,62,0)
        self.shoulder = mc.polySphere(r=5,n=name+'_shoulder')
        mc.move(0,84,0)
        self.humerus = mc.polyUnite(self.humerus,self.shoulder, n=name+'_humerus')[0]
        mc.move(0,84,0, self.humerus+".scalePivot", self.humerus+".rotatePivot")
        pass
Beispiel #9
0
    def _createGeometry(self, side):
        mc.select(cl=True)
        self.n_t = mc.polySphere(r=1.2, n="n_t")
        mc.move(self.sideModifyer * 4.5, 2, 1.5)
        self.b_1 = mc.polyCylinder(r=.75, h=2)
        mc.move(self.sideModifyer * 6.5, 2, 1.5)
        mc.rotate(0, 0, 90)

        self.s_1 = mc.polyCube(sx=1, sy=3, sz=1, h=5, w=2, d=2)[0]
        mc.move(self.sideModifyer * 8.5, 3.5, 1.5)
        mc.select(self.s_1 + '.f[7]')
        mc.move(-1, 0, 0, r=True)
        mc.select(self.s_1 + '.e[26]')
        mc.move(-1, 0, 0, r=True)
        mc.select(self.s_1 + '.e[23]')
        mc.move(.123, 0, 0, r=True)
        mc.select(self.s_1 + '.f[3]')
        mc.move(0, -.5, 0, r=True)

        self.n_2_a = mc.polyCylinder(ax=[0, 0, 1],
                                     sx=2,
                                     sy=2,
                                     sz=2,
                                     h=.6,
                                     r=1.0,
                                     n='n_2_a')
        mc.move(self.sideModifyer * 8.5, 6.5, 1.5 + .7)  #1.875 + .35
        self.n_2_b = mc.polyCylinder(ax=[0, 0, 1],
                                     sx=2,
                                     sy=2,
                                     sz=2,
                                     h=.6,
                                     r=1.0,
                                     n='n_2_b')
        mc.move(self.sideModifyer * 8.5, 6.5, 1.5 - .7)  #1.875 -.35

        self.s_1 = mc.polyUnite(self.n_t,
                                self.s_1,
                                self.n_2_a,
                                self.n_2_b,
                                self.b_1,
                                n='segment_1')

        #section 2 construction
        self.n_2_c = mc.polyCylinder(ax=[0, 0, 1],
                                     sx=2,
                                     sy=2,
                                     sz=2,
                                     h=.6,
                                     r=1.0,
                                     n='n_2_c')[0]
        mc.move(self.sideModifyer * 8.5, 6.5, 1.5)
        self.p_2 = mc.polyCube(sx=2, sy=2, sz=2, h=4, w=2, d=2)[0]
        mc.move(self.sideModifyer * 8.5, 9.5, 1.5)
        mc.select(self.p_2 + '.f[4:7]')  #f[5] on a one segment
        mc.scale(.8, 1, .75)

        #section 2 unite

        self.s_2 = mc.polyUnite(self.n_2_c, self.p_2, n='p_s_2')[0]
        mc.move(self.sideModifyer * 8.5, 6.5, 1.5, self.s_2 + ".scalePivot",
                self.s_2 + ".rotatePivot")
Beispiel #10
0
    def _createGeometry(self, segmentLength, offset):

        voff = 9.25

        mc.select(cl=True)
        #section 1 construction
        self.r_hand_p_n_1 = mc.polySphere(r=1.2, n="_n_1")
        mc.move(offset, voff + 0, -.5)
        self.r_hand_p_b_1 = mc.polyCylinder(r=.75, h=3, n="_b_1")
        mc.move(offset, voff + 2, -.5)
        self.r_hand_p_p_1 = mc.polyCube(sx=2,
                                        sy=2,
                                        sz=2,
                                        h=segmentLength,
                                        w=2,
                                        d=2)
        mc.move(offset, voff + 2.25 + self.segOffset, -.5)
        self.r_hand_p_n_2_a = mc.polyCylinder(ax=[1, 0, 0],
                                              sx=2,
                                              sy=2,
                                              sz=2,
                                              h=.6,
                                              r=1.0,
                                              n='_n_2_a')
        mc.move(offset + .7, voff + 3.75 + (2 * self.segOffset),
                -.5)  #1.875 + .35
        self.r_hand_p_n_2_b = mc.polyCylinder(ax=[1, 0, 0],
                                              sx=2,
                                              sy=2,
                                              sz=2,
                                              h=.6,
                                              r=1.0,
                                              n='_n_2_b')
        mc.move(offset - .7, voff + 3.75 + (2 * self.segOffset),
                -.5)  #1.875 -.35

        #section 1 unite

        self.r_hand_p_s_1 = mc.polyUnite(self.r_hand_p_n_1,
                                         self.r_hand_p_b_1,
                                         self.r_hand_p_p_1,
                                         self.r_hand_p_n_2_a,
                                         self.r_hand_p_n_2_b,
                                         n='r_hand_p_s_1')[0]
        mc.move(offset, voff + 0, -.5, self.r_hand_p_s_1 + ".scalePivot",
                self.r_hand_p_s_1 + ".rotatePivot")

        #section 2 construction
        self.r_hand_p_n_2_c = mc.polyCylinder(ax=[1, 0, 0],
                                              sx=2,
                                              sy=2,
                                              sz=2,
                                              h=.6,
                                              r=1.0,
                                              n='r_hand_p_n_2_c')
        mc.move(offset, voff + 3.75 + (2 * self.segOffset), -.5)
        self.r_hand_p_p_2 = mc.polyCube(sx=2,
                                        sy=2,
                                        sz=2,
                                        h=segmentLength,
                                        w=2,
                                        d=2)
        mc.move(offset, voff + 5.25 + (3 * self.segOffset), -.5)
        self.r_hand_p_n_3_a = mc.polyCylinder(ax=[1, 0, 0],
                                              sx=2,
                                              sy=2,
                                              sz=2,
                                              h=.6,
                                              r=1.0,
                                              n='r_hand_p_n_3_a')
        mc.move(offset + .7, voff + 6.75 + (4 * self.segOffset),
                -.5)  #1.875 + .35
        self.r_hand_p_n_3_b = mc.polyCylinder(ax=[1, 0, 0],
                                              sx=2,
                                              sy=2,
                                              sz=2,
                                              h=.6,
                                              r=1.0,
                                              n='r_hand_p_n_3_b')
        mc.move(offset - .7, voff + 6.75 + (4 * self.segOffset),
                -.5)  #1.875 -.35

        #section 2 unite

        self.r_hand_p_s_2 = mc.polyUnite(self.r_hand_p_n_2_c,
                                         self.r_hand_p_p_2,
                                         self.r_hand_p_n_3_a,
                                         self.r_hand_p_n_3_b,
                                         n='r_hand_p_s_2')[0]
        mc.move(offset, voff + 3.75 + (2 * self.segOffset), -.5,
                self.r_hand_p_s_2 + ".scalePivot",
                self.r_hand_p_s_2 + ".rotatePivot")

        #section 3 construction
        self.r_hand_p_n_3_c = mc.polyCylinder(ax=[1, 0, 0],
                                              sx=2,
                                              sy=2,
                                              sz=2,
                                              h=.6,
                                              r=1.0,
                                              n='r_hand_p_n_3_c')[0]
        mc.move(offset, voff + 6.75 + (4 * self.segOffset), -.5)
        self.r_hand_p_p_3 = mc.polyCube(sx=2,
                                        sy=2,
                                        sz=2,
                                        h=segmentLength,
                                        w=2,
                                        d=2)[0]
        mc.move(offset, voff + 8.25 + (5 * self.segOffset), -.5)
        mc.select(self.r_hand_p_p_3 + '.f[4:7]')  #f[5] on a one segment
        mc.scale(.8, 1, .75)

        #section 3 unite

        self.r_hand_p_s_3 = mc.polyUnite(self.r_hand_p_n_3_c,
                                         self.r_hand_p_p_3,
                                         n='r_hand_p_s_3')[0]
        mc.move(offset, voff + 6.75 + (4 * self.segOffset), -.5,
                self.r_hand_p_s_3 + ".scalePivot",
                self.r_hand_p_s_3 + ".rotatePivot")
Beispiel #11
0
    def _createGeometry(self, name, side):

        #build toe
        self.side = side
        self.name = name
        self.toe = mc.polyCube(sx=2,
                               sy=2,
                               sz=2,
                               w=5,
                               h=2,
                               d=3,
                               n=name + '_toe')[0]
        self.ball = mc.polyCylinder(h=5, n=name + '_ball')[0]
        mc.move(0, 0, -2, r=True)
        mc.rotate(0, 0, '90deg')
        self.toe = mc.polyUnite(self.toe, self.ball, n=name + '_toe')[0]

        self.toeBox = mc.polyCube(w=8, h=4, d=3, n=name + '_toeBox')[0]
        mc.sets(e=True, forceElement=self.color1)
        mc.move(0, .9, 0, r=True)
        #e1
        mc.select(self.toeBox + '.e[1]')
        mc.move(0, -1, 0, r=True)

        self.toeBoxBase = mc.polyCube(w=8, h=4, d=3, n=name + '_toeBoxBase')[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, .9, 1, r=True)
        #e1
        mc.select(self.toeBoxBase + '.e[2]')
        mc.move(0, -2, 0, r=True)
        mc.select(self.toeBoxBase + '.e[1]')
        mc.move(0, -1, 0, r=True)
        mc.select(self.toeBoxBase + '.f[2]')
        mc.scale(1.25, 1, 1)
        mc.move(0, 0, -1, r=True)

        self.toeToeBox = mc.polyCube(w=8, h=3, d=3, n=name + '_toeToeBox')[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, .4, 4, r=True)
        #f0
        mc.select(self.toeToeBox + '.f[0]')
        mc.scale(.75, .75, 1)

        mc.move(0, 0, -2, self.toe + ".scalePivot", self.toe + ".rotatePivot")

        self.toe = mc.polyUnite(self.toe, self.toeBox)
        self.toe = mc.polyUnite(self.toe, self.toeToeBox)
        self.toe = mc.polyUnite(self.toe, self.toeBoxBase, n=name + '_toe')

        #build arch
        self.arch = mc.polyCube(w=5, d=10, n=name + '_arch')[0]
        mc.move(0, 0, -7, r=True)

        #mc.select(f[8]-f[11])
        mc.select(self.arch + '.f[2]')
        mc.move(0, 3, 0, r=True)

        self.ankle = mc.polySphere(r=2.5)[0]
        mc.move(0, 3, -12, r=True)

        self.arch = mc.polyUnite(self.arch, self.ankle, n=name + '_arch')[0]

        self.archArmor = mc.polyCube(w=8, h=4, d=8)[0]
        mc.sets(e=True, forceElement=self.color1)
        mc.move(0, .9, -6, r=True)

        self.archArmor2 = mc.polyCube(w=8, h=4, d=8)[0]
        mc.sets(e=True, forceElement=self.color1)
        mc.move(0, 4.9, -6, r=True)
        mc.select(self.archArmor2 + '.e[1]')
        mc.move(0, -3.75, 0, r=True)
        mc.select(self.archArmor2 + '.e[2]')
        #mc.move(0,-.5,0,r=True)
        mc.scale(.5, 1, 1)

        self.archArmor3 = mc.polyCube(w=8, h=4, d=8)[0]
        mc.sets(e=True, forceElement=self.color1)
        mc.move(0, 4.9, -8.5, r=True)
        mc.select(self.archArmor3 + '.e[1]')
        mc.move(0, 0, -4, r=True)
        mc.scale(.5, 1, 1)
        mc.select(self.archArmor3 + '.e[2]')
        #mc.move(0,-.5,0,r=True)
        mc.scale(.5, 1, 1)

        self.archArmorBase = mc.polyCube(w=8, h=4, d=8)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, .9, -6, r=True)

        mc.select(self.archArmorBase + '.f[0]')
        mc.scale(1.25, 1, 1)
        mc.select(self.archArmorBase + '.f[2]')
        mc.scale(1.25, 1, 1)
        mc.select(self.archArmorBase + '.e[1]')
        mc.move(0, -2, 0, r=True)
        mc.select(self.archArmorBase + '.e[2]')
        mc.move(0, -.5, 0, r=True)

        self.archArmorBase2 = mc.polyCube(w=8, h=4, d=4)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, .9, -12, r=True)
        mc.select(self.archArmorBase2 + '.f[0]')
        mc.scale(1.25, 1, 1)
        mc.select(self.archArmorBase2 + '.f[2]')
        mc.scale(1.25, 1, 1)
        mc.select(self.archArmorBase2 + '.e[3]')
        mc.move(0, 1, 1.75, r=True)
        mc.select(self.archArmorBase2 + '.e[1]')
        mc.move(0, -.5, 0, r=True)

        self.archArmorBase3 = mc.polyCube(w=8, h=4, d=4)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, 4.9, -12, r=True)
        mc.select(self.archArmorBase3 + '.f[0]')
        mc.scale(1.25, 1, 1)
        mc.select(self.archArmorBase3 + '.f[2]')
        mc.scale(1.25, 1, 1)
        mc.select(self.archArmorBase3 + '.f[1]')
        mc.scale(.5, 1, 1)
        mc.move(0, -1, 0, r=True)
        mc.select(self.archArmorBase3 + '.e[0]')
        mc.move(0, -.5, 0, r=True)
        mc.select(self.archArmorBase3 + '.e[1]')
        mc.move(0, 0, -2.5, r=True)
        mc.select(self.archArmorBase3 + '.e[2]')
        mc.move(0, 0, -1.5, r=True)

        self.archArmorBase4 = mc.polyCube(w=8, h=4, d=4)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, 4.9, -15.5, r=True)
        mc.select(self.archArmorBase4 + '.f[0]')
        mc.scale(1.25, 1, 1)
        mc.select(self.archArmorBase4 + '.f[2]')
        mc.scale(1.25, 1, 1)
        mc.select(self.archArmorBase4 + '.f[1]')

        mc.scale(.5, 1, 1)
        mc.move(0, -2, 0, r=True)
        mc.select(self.archArmorBase4 + '.f[3]')
        mc.scale(1, 1, 1.25)
        mc.select(self.archArmorBase4 + '.e[0]')
        mc.move(0, -3, .5, r=True)
        mc.select(self.archArmorBase4 + '.e[1]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.archArmorBase4 + '.e[2]')
        mc.move(0, 0, 1, r=True)
        mc.select(self.archArmorBase4 + '.e[3]')
        mc.move(0, -2, -.75, r=True)
        mc.scale(.75, 1, 1)

        self.archArmorBase5 = mc.polyCube(w=8, h=4, d=5)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, .9, -15.6, r=True)
        mc.select(self.archArmorBase5 + '.f[1]')
        mc.move(0, -3, 0, r=True)
        mc.scale(1.25, 1, 1.25)
        mc.select(self.archArmorBase5 + '.f[2]')
        mc.scale(.75, 1, 1)
        #mc.select(self.archArmorBase5+'.e[3]')
        #mc.move(0,1,0,r=True)
        mc.select(self.archArmorBase5 + '.e[2]')
        mc.move(0, 1, 0, r=True)

        self.arch = mc.polyUnite(self.arch, self.archArmor)
        self.arch = mc.polyUnite(self.arch, self.archArmor2)
        self.arch = mc.polyUnite(self.arch, self.archArmor3)
        self.arch = mc.polyUnite(self.arch, self.archArmorBase2)
        self.arch = mc.polyUnite(self.arch, self.archArmorBase3)
        self.arch = mc.polyUnite(self.arch, self.archArmorBase4)
        self.arch = mc.polyUnite(self.arch, self.archArmorBase5)
        self.arch = mc.polyUnite(self.arch,
                                 self.archArmorBase,
                                 n=name + '_arch')[0]

        mc.move(0, 3, -12, self.arch + ".scalePivot",
                self.arch + ".rotatePivot")
        #self.heal = mc.polyCube(sx=2, sy=2, sz=2,w=5, h=3, n=name+'_heal')

        pass
Beispiel #12
0
    def _createGeometry(self, name, side):

        #create radius
        self.radius = mc.polyCube(sx=1,
                                  sy=1,
                                  sz=1,
                                  w=2,
                                  h=40,
                                  d=2,
                                  n=name + '_radius')[0]
        mc.move(0, 20, 0)

        self.elbow = mc.polyCylinder(h=5, r=2, n=name + '_elbow')[0]
        mc.move(0, 41, 0, r=True)
        mc.rotate(0, 0, '90deg')
        self.radius = mc.polyUnite(self.radius, self.elbow,
                                   n=name + '_radius')[0]
        mc.move(0, 41, 0, self.radius + ".scalePivot",
                self.radius + ".rotatePivot")

        #create humerus
        self.humerus = mc.polyCube(sx=1,
                                   sy=1,
                                   sz=1,
                                   w=3,
                                   h=40,
                                   d=3,
                                   n=name + '_humerus')[0]
        mc.move(0, 62, 0)
        self.shoulder = mc.polySphere(r=5, n=name + '_shoulder')
        mc.move(0, 84, 0)
        self.humerus = mc.polyUnite(self.humerus,
                                    self.shoulder,
                                    n=name + '_humerus')[0]
        mc.move(0, 84, 0, self.humerus + ".scalePivot",
                self.humerus + ".rotatePivot")
        pass

        ######### shoulders ############
        t1 = mc.polyCube(sx=3, sy=3, sz=3, w=15, h=15, d=15, n='l_shoulder')[0]
        mc.sets(e=True, forceElement=self.color4)
        t1r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        #mc.scale(1,5,1)
        mc.move(self.sideMult * 5, 90, 0, r=True)

        t2 = mc.polyCube(sx=3, sy=3, sz=3, w=10, h=15, d=10, n='r_shoulder')[0]
        mc.sets(e=True, forceElement=self.color4)
        t2r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        mc.scale(1, 2.5, 1)
        mc.move(0, 63, 0, r=True)

        t3 = mc.polyCube(sx=3, sy=3, sz=3, w=10, h=15, d=10, n='r_shoulder')[0]
        mc.sets(e=True, forceElement=self.color1)
        t3r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        mc.scale(1.2, 2.25, 1)

        mc.move(0, 63, -1, r=True)

        t4 = mc.polyCube(sx=3, sy=3, sz=3, w=10, h=15, d=10, n='r_shoulder')[0]
        mc.sets(e=True, forceElement=self.color4)
        t4r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        mc.scale(1, 2.5, 1)
        mc.move(0, 20, 0, r=True)

        t5 = mc.polyCube(sx=3, sy=3, sz=3, w=10, h=15, d=10, n='r_shoulder')[0]
        mc.sets(e=True, forceElement=self.color1)
        t5r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        mc.scale(1.2, 2.25, 1.0)
        mc.move(0, 20, -1, r=True)

        self.elbowArmor = mc.polyCube(sx=3,
                                      sy=3,
                                      sz=3,
                                      w=8,
                                      h=15,
                                      d=9,
                                      n='r_shoulder')[0]
        mc.sets(e=True, forceElement=self.color1)
        t5r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        mc.move(0, 41, -1, r=True)

        self.humerus = mc.polyUnite(self.humerus, t1, t2, t3)

        self.radius = mc.polyUnite(self.radius, t4, t5)
Beispiel #13
0
    def _createGeometry(self, name):

        #self.spine = mc.polyCylinder(h=75,r=2,n=name+'_spine')[0]
        #mc.move(0,30,0)
        self.pelvic = mc.polyCylinder(h=40, r=2, n=name + '_pelvic')[0]
        mc.rotate(0, 0, '90deg')
        self.clavical = mc.polyCylinder(h=56, r=2, n=name + '_clavical')[0]
        mc.rotate(0, 0, '90deg')
        mc.move(0, 67, 0)

        #self.hip = mc.polySphere(r=5,n=name+'_hip')
        self.hipPlate = mc.polyCube(w=50, d=10, h=5)
        mc.move(0, 15, 0)

        self.hipPlate2 = mc.polyCube(w=8, d=5, h=35)[0]
        mc.move(12, 0, 15)
        mc.select(self.hipPlate2 + '.e[10]')
        mc.move(0, 3, 0, r=True)
        mc.select(self.hipPlate2 + '.e[0]')
        mc.move(0, 3, 0, r=True)
        mc.select(self.hipPlate2 + '.e[6]')
        mc.move(0, -3, 0, r=True)
        mc.select(self.hipPlate2 + '.e[1]')
        mc.move(0, -3, 0, r=True)
        mc.select(self.hipPlate2 + '.e[4]')
        mc.move(3, 0, 0, r=True)
        mc.select(self.hipPlate2)
        mc.rotate(-10, 0, 0)

        self.hipPlate3 = mc.polyCube(w=15, d=5, h=35)[0]
        mc.move(23.5, 0, 15)
        mc.select(self.hipPlate3 + '.e[11]')
        mc.move(0, 10, 0, r=True)
        mc.select(self.hipPlate3 + '.e[0]')
        mc.move(0, 3, 0, r=True)
        mc.select(self.hipPlate3 + '.e[7]')
        mc.move(-6, -3, 0, r=True)
        mc.select(self.hipPlate3 + '.e[1]')
        mc.move(0, -3, 0, r=True)
        mc.select(self.hipPlate3 + '.e[5]')
        mc.move(-3, 0, 0, r=True)
        mc.select(self.hipPlate3)
        mc.rotate(-10, 0, 0)

        self.hipPlate4 = mc.polyCube(w=8, d=5, h=35)[0]
        mc.move(-12, 0, 15)
        mc.select(self.hipPlate4 + '.e[11]')
        mc.move(0, 3, 0, r=True)
        mc.select(self.hipPlate4 + '.e[0]')
        mc.move(0, 3, 0, r=True)
        mc.select(self.hipPlate4 + '.e[7]')
        mc.move(0, -3, 0, r=True)
        mc.select(self.hipPlate4 + '.e[1]')
        mc.move(0, -3, 0, r=True)
        mc.select(self.hipPlate4 + '.e[5]')
        mc.move(-3, 0, 0, r=True)
        mc.select(self.hipPlate4)
        mc.rotate(-10, 0, 0)

        self.hipPlate5 = mc.polyCube(w=15, d=5, h=35)[0]
        mc.move(-23.5, 0, 15)
        mc.select(self.hipPlate5 + '.e[10]')
        mc.move(0, 10, 0, r=True)
        mc.select(self.hipPlate5 + '.e[0]')
        mc.move(0, 3, 0, r=True)
        mc.select(self.hipPlate5 + '.e[6]')
        mc.move(6, -3, 0, r=True)
        mc.select(self.hipPlate5 + '.e[1]')
        mc.move(0, -3, 0, r=True)
        mc.select(self.hipPlate5 + '.e[4]')
        mc.move(3, 0, 0, r=True)
        mc.select(self.hipPlate5)
        mc.rotate(-10, 0, 0)

        self.hipPlate = mc.polyUnite(self.hipPlate, self.hipPlate2,
                                     self.hipPlate3, self.hipPlate4,
                                     self.hipPlate5)

        self.crotchPlate1 = mc.polyCube(w=10, d=20, h=20)[0]
        mc.select(self.crotchPlate1 + '.e[3]')
        mc.move(0, 2, 0, r=True)
        mc.scale(.75, 1, 1)
        self.crotchPlate2 = mc.polyCube(w=10, d=10, h=20)[0]
        mc.move(0, 0, 15)
        mc.select(self.crotchPlate2 + '.e[0]')
        mc.move(0, 2, -5, r=True)
        mc.scale(.75, 1, 1)

        mc.select(self.crotchPlate2)
        self.crotchPlate1_1 = mc.duplicate(rr=True)
        mc.sets(e=True, forceElement=self.color1)
        mc.move(0, 2, -3, r=True)
        mc.scale(1.5, 1, 1)

        self.crotchPlate3 = mc.polyCube(w=10, d=20, h=10)[0]
        mc.move(0, 15, 10)
        mc.select(self.crotchPlate3 + '.e[1]')
        mc.move(0, 0, -6, r=True)
        mc.scale(.75, 1, 1)

        mc.select(self.crotchPlate3)
        self.crotchPlate3_1 = mc.duplicate(rr=True)
        mc.sets(e=True, forceElement=self.color1)
        mc.move(0, 2, -3, r=True)
        mc.scale(1.5, 1, 1)

        mc.select(self.crotchPlate3)
        self.crotchPlate3_2 = mc.duplicate(rr=True)
        mc.sets(e=True, forceElement=self.color3)
        mc.move(0, 0, 1, r=True)
        mc.scale(.75, .75, 1)

        #self.crotchPlate4 = mc.polyCube(w=10,d=20,h=10)[0]
        #mc.move(0,-15,0)
        self.pelvic = mc.polyUnite(self.pelvic, self.crotchPlate2,
                                   self.crotchPlate3, self.crotchPlate1_1,
                                   self.crotchPlate3_1, self.crotchPlate3_2)
        self.pelvic = mc.polyUnite(self.pelvic, self.crotchPlate1)
        self.pelvic = mc.polyUnite(self.pelvic, self.hipPlate)[0]

        #self.torso = mc.polyUnite(self.spine,self.pelvic,n=name)[0]
        self.torso = self.pelvic

        ######### Cockpit ##############

        self.cockpit = mc.polyCube(w=10, d=2, h=10)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, 25, 8, r=True)
        mc.select(self.cockpit + '.e[1]')
        mc.move(0, 5, 5, r=True)

        self.cockpit2 = mc.polyCube(w=10, d=2, h=10)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(0, 35, 10, r=True)
        mc.select(self.cockpit2 + '.e[1]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.cockpit2 + '.e[2]')
        mc.move(0, 2, 10, r=True)
        self.cockpit = mc.polyUnite(self.cockpit, self.cockpit2)

        self.cockpitWall1 = mc.polyCube(w=2, h=30, d=10)[0]
        mc.move(0, 25, 0, r=True)
        mc.select(self.cockpitWall1 + '.e[1]')
        mc.move(0, 0, 15, r=True)

        self.cockpitWall2 = mc.polyCube(w=2, h=20, d=20)[0]
        mc.move(6.5, 32, 0, r=True)
        mc.select(self.cockpitWall2 + '.e[1]')
        mc.move(0, 0, 15, r=True)

        self.cockpitWall3 = mc.polyCube(w=2, h=20, d=20)[0]
        mc.move(-6.5, 32, 0, r=True)
        mc.select(self.cockpitWall3 + '.e[1]')
        mc.move(0, 0, 15, r=True)

        self.cockpitWall4 = mc.polyCube(w=2, h=20, d=20)[0]
        mc.move(6.5, 52, 0, r=True)
        mc.select(self.cockpitWall4 + '.e[0]')
        mc.move(0, 0, 15, r=True)

        self.cockpitWall5 = mc.polyCube(w=2, h=20, d=20)[0]
        mc.move(-6.5, 52, 0, r=True)
        mc.select(self.cockpitWall5 + '.e[0]')
        mc.move(0, 0, 15, r=True)

        self.cockpitWall6 = mc.polyCube(w=15, h=20, d=2)
        mc.move(0, 32, -10, r=True)
        self.cockpitWall7 = mc.polyCube(w=15, h=20, d=2)
        mc.move(0, 52, -10, r=True)

        self.cockpit = mc.polyUnite(self.cockpit, self.cockpitWall1,
                                    self.cockpitWall2, self.cockpitWall3,
                                    self.cockpitWall4, self.cockpitWall5,
                                    self.cockpitWall6, self.cockpitWall7)

        self.lRibs1 = mc.polyCube(w=10, d=20, h=5)[0]
        mc.sets(e=True, forceElement=self.color1)
        mc.move(12, 25, 0, r=True)
        mc.select(self.lRibs1 + '.e[1]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.lRibs1 + '.e[2]')
        mc.move(0, 0, 2, r=True)
        mc.select(self.lRibs1 + '.e[7]')
        mc.move(-2, 1, 0, r=True)
        mc.polyBevel()

        self.lRibs2 = mc.polyCube(w=5, d=15, h=5)[0]
        mc.sets(e=True, forceElement=self.color1)
        mc.move(12, 30, 0, r=True)
        mc.select(self.lRibs2 + '.e[1]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.lRibs2 + '.e[2]')
        mc.move(0, 0, 2, r=True)
        mc.select(self.lRibs2 + '.e[7]')
        mc.move(-2, 1, 0, r=True)
        mc.polyBevel()

        self.lRibs3 = mc.polyCube(w=2, d=20, h=10)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(8, 30, 0, r=True)
        mc.select(self.lRibs3 + '.e[1]')
        mc.move(0, 0, 2, r=True)
        mc.select(self.lRibs3 + '.e[2]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.lRibs3 + '.e[7]')
        mc.move(2, 1, 0, r=True)
        mc.polyBevel()

        self.lRibs4 = mc.polyCube(w=8, d=30, h=10)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(8, 40, 0, r=True)
        mc.select(self.lRibs4 + '.e[1]')
        mc.move(0, 0, 5, r=True)
        mc.select(self.lRibs4 + '.e[2]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.lRibs4 + '.e[7]')
        mc.move(5, 1, 0, r=True)
        mc.polyBevel()

        self.lRibs = mc.polyUnite(self.lRibs1, self.lRibs2, self.lRibs3,
                                  self.lRibs4)

        self.rRibs1 = mc.polyCube(w=10, d=20, h=5)[0]
        mc.sets(e=True, forceElement=self.color1)
        mc.move(-12, 25, 0, r=True)
        mc.select(self.rRibs1 + '.e[1]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.rRibs1 + '.e[2]')
        mc.move(0, 0, 2, r=True)
        mc.select(self.rRibs1 + '.e[6]')
        mc.move(2, 1, 0, r=True)
        mc.polyBevel()

        self.rRibs2 = mc.polyCube(w=5, d=15, h=5)[0]
        mc.sets(e=True, forceElement=self.color1)
        mc.move(-12, 30, 0, r=True)
        mc.select(self.rRibs2 + '.e[1]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.rRibs2 + '.e[2]')
        mc.move(0, 0, 2, r=True)
        mc.select(self.rRibs2 + '.e[6]')
        mc.move(2, 1, 0, r=True)
        mc.polyBevel()

        self.rRibs3 = mc.polyCube(w=2, d=20, h=10)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(-8, 30, 0, r=True)
        mc.select(self.rRibs3 + '.e[1]')
        mc.move(0, 0, 2, r=True)
        mc.select(self.rRibs3 + '.e[2]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.rRibs3 + '.e[6]')
        mc.move(-2, 1, 0, r=True)
        mc.polyBevel()

        self.rRibs4 = mc.polyCube(w=8, d=30, h=10)[0]
        mc.sets(e=True, forceElement=self.color2)
        mc.move(-8, 40, 0, r=True)
        mc.select(self.rRibs4 + '.e[1]')
        mc.move(0, 0, 5, r=True)
        mc.select(self.rRibs4 + '.e[2]')
        mc.move(0, 0, -2, r=True)
        mc.select(self.rRibs4 + '.e[6]')
        mc.move(-5, 1, 0, r=True)
        mc.polyBevel()

        self.rRibs = mc.polyUnite(self.rRibs1, self.rRibs2, self.rRibs3,
                                  self.rRibs4)

        self.cockpit = mc.polyUnite(self.cockpit, self.lRibs, self.rRibs)
        ########## CHEST #############

        self.chest1 = mc.polyCube(w=10, d=2, h=10)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(0, 47, 23, r=True)
        mc.select(self.chest1 + '.e[1]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.chest1 + '.e[3]')
        mc.move(0, 2, 0, r=True)
        mc.select(self.chest1 + '.e[2]')
        mc.move(0, 0, -20, r=True)

        self.chest2 = mc.polyCube(w=10, d=2, h=10)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(0, 57, 23, r=True)
        mc.select(self.chest2 + '.e[0]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.chest2 + '.e[3]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest2 + '.e[2]')
        mc.move(0, 0, -20, r=True)

        self.chest3 = mc.polyCube(w=20, d=2, h=10)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(15, 57, 23, r=True)
        mc.select(self.chest3 + '.e[0]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.chest3 + '.e[3]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest3 + '.e[2]')
        mc.move(0, 0, -20, r=True)
        mc.select(self.chest3 + '.e[5]')
        mc.move(0, 0, -5, r=True)

        self.chest4 = mc.polyCube(w=20, d=2, h=10)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(-15, 57, 23, r=True)
        mc.select(self.chest4 + '.e[0]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.chest4 + '.e[3]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest4 + '.e[2]')
        mc.move(0, 0, -20, r=True)
        mc.select(self.chest4 + '.e[4]')
        mc.move(0, 0, -5, r=True)

        self.chest5 = mc.polyCube(w=10, d=2, h=5)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(0, 67, 13, r=True)
        mc.select(self.chest5 + '.e[0]')
        mc.move(0, -2.5, 10, r=True)
        mc.select(self.chest5 + '.e[3]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest5 + '.e[2]')
        mc.move(0, 0, -20, r=True)
        mc.select(self.chest5 + '.f[1]')
        #mc.move(0,0,-20,r=True)
        mc.scale(.5, 1, .5)

        self.chest6 = mc.polyCube(w=20, d=2, h=5)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(15, 64.5, 13, r=True)
        mc.select(self.chest6 + '.e[0]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.chest6 + '.e[3]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest6 + '.e[2]')
        mc.move(0, 0, -20, r=True)
        mc.select(self.chest6 + '.e[5]')
        mc.move(0, 0, -5, r=True)
        mc.select(self.chest6 + '.e[1]')
        mc.move(0, 0, -10, r=True)

        self.chest7 = mc.polyCube(w=20, d=2, h=5)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(-15, 64.5, 13, r=True)
        mc.select(self.chest7 + '.e[0]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.chest7 + '.e[3]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest7 + '.e[2]')
        mc.move(0, 0, -20, r=True)
        mc.select(self.chest7 + '.e[4]')
        mc.move(0, 0, -5, r=True)
        mc.select(self.chest7 + '.e[1]')
        mc.move(0, 0, -10, r=True)

        self.chest8 = mc.polyCube(w=10, d=2, h=5)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(10, 67.5, 3, r=True)
        mc.select(self.chest8 + '.e[0]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.chest8 + '.e[3]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest8 + '.e[2]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest8 + '.e[5]')
        mc.move(0, 0, -5, r=True)
        mc.select(self.chest8 + '.e[1]')
        mc.move(0, 0, -1, r=True)

        self.chest9 = mc.polyCube(w=10, d=2, h=5)[0]
        mc.sets(e=True, forceElement=self.color3)
        mc.move(-10, 67.5, 3, r=True)
        mc.select(self.chest9 + '.e[0]')
        mc.move(0, 0, 10, r=True)
        mc.select(self.chest9 + '.e[3]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest9 + '.e[2]')
        mc.move(0, 0, -10, r=True)
        mc.select(self.chest9 + '.e[4]')
        mc.move(0, 0, -5, r=True)
        mc.select(self.chest9 + '.e[1]')
        mc.move(0, 0, -1, r=True)

        self.chest = mc.polyUnite(self.chest1, self.chest2, self.chest3,
                                  self.chest4, self.chest5, self.chest6,
                                  self.chest7, self.chest8, self.chest9)

        ######### shoulders ############
        t1 = mc.polyCube(sx=3, sy=3, sz=3, w=15, h=15, d=15, n='l_shoulder')[0]
        mc.sets(e=True, forceElement=self.color4)
        t1r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        #mc.scale(1,5,1)
        mc.move(25, 67, 0, r=True)

        t2 = mc.polyCube(sx=3, sy=3, sz=3, w=15, h=15, d=15, n='r_shoulder')[0]
        mc.sets(e=True, forceElement=self.color4)
        t2r = mc.polyBevel(ws=1, oaf=1, o=.5, sa=30)[0]
        #mc.scale(1,5,1)
        mc.move(-25, 67, 0, r=True)

        self.clavical = mc.polyUnite(self.clavical, t1, t2)