Forum: Poser Python Scripting


Subject: Useful Code Snippets

structure opened this issue on Jun 27, 2019 ยท 94 posts


structure posted Wed, 12 August 2020 at 7:16 PM Forum Coordinator

Dealing with figure IK

class IK:
    def SetIK( self, figure = None , status = 0 , parts = 2 ):
        # status    : 0 = off, 1 = on , 2 = toggle
        # setup parts dictionary (ikrange)
        ikrange =   {
                        0   :   (0,1),          # legs
                        1   :   (2,3),          # arms
                        2   :   (0,1,2,3),      # all
                        3   :   (0,None),       # left leg
                        4   :   (1,None),       # Right leg
                        5   :   (2,None),       # left arm
                        6   :   (3,None),       # right arm
                        7   :   (0,2),          # left leg + left arm
                        8   :   (1,3),          # right leg + right arm
                        9   :   (0,3),          # left leg + right arm
                        10  :   (1,2)           # right leg + left arm
                    }
        if figure:
            IkNames=figure.IkNames()
            if status==0 or status ==1:             # turn off / on
                [figure.SetIkStatus(ik,status) for ik in ikrange[parts] if not ik==None]
            elif status==2:                         # toggle
                [figure.SetIkStatus(ik,not figure.IkStatus(ik)) for ik in ikrange[parts] if not ik==None]
        else:
            return False

Locked Out