Example #1
0
    def on_timer(self, event):

        model = np.eye(4, dtype=np.float32)
        #scale(model, 1, 1, 1)
        self.cube['model'] = model

        self.view = np.eye(4)
        xrotate(self.view, self.rotate[0])
        yrotate(self.view, self.rotate[1])
        zrotate(self.view, self.rotate[2])
        translate(self.view, *self.translate)

        self.listener.waitForTransform("/robot", "/wrist_joint", rospy.Time(), rospy.Duration(4))
        
        pos, rot = self.listener.lookupTransform("/robot", "/wrist_joint", rospy.Time(0))

        print list(pos)
        
        self.translate[0] = -list(pos)[0] * 10
        self.translate[1] = -list(pos)[1] * 10
        self.translate[2] = -5

        self.cube['view'] = self.view



        self.update()
Example #2
0
    def on_key_press(self, event):
        """Controls -
        a(A) - move left
        d(D) - move right
        w(W) - move up
        s(S) - move down
        x/X - rotate about x-axis cw/anti-cw
        y/Y - rotate about y-axis cw/anti-cw
        z/Z - rotate about z-axis cw/anti-cw
        space - reset view
        p(P) - print current view
        i(I) - zoom in
        o(O) - zoom out
        """
        self.translate = [0, 0, 0]
        self.rotate = [0, 0, 0]

        if(event.text == 'p' or event.text == 'P'):
            print(self.view)
        elif(event.text == 'd' or event.text == 'D'):
            self.translate[0] = 0.3
        elif(event.text == 'a' or event.text == 'A'):
            self.translate[0] = -0.3
        elif(event.text == 'w' or event.text == 'W'):
            self.translate[1] = 0.3
        elif(event.text == 's' or event.text == 'S'):
            self.translate[1] = -0.3
        elif(event.text == 'o' or event.text == 'O'):
            self.translate[2] = 0.3
        elif(event.text == 'i' or event.text == 'I'):
            self.translate[2] = -0.3
        elif(event.text == 'x'):
            self.rotate = [1, 0, 0]
        elif(event.text == 'X'):
            self.rotate = [-1, 0, 0]
        elif(event.text == 'y'):
            self.rotate = [0, 1, 0]
        elif(event.text == 'Y'):
            self.rotate = [0, -1, 0]
        elif(event.text == 'z'):
            self.rotate = [0, 0, 1]
        elif(event.text == 'Z'):
            self.rotate = [0, 0, -1]
        elif(event.text == ' '):
            self.view = self.default_view

        translate(self.view, -self.translate[0], -self.translate[1],
                  -self.translate[2])
        xrotate(self.view, self.rotate[0])
        yrotate(self.view, self.rotate[1])
        zrotate(self.view, self.rotate[2])

        self.program['u_view'] = self.view
        self.update()
Example #3
0
    def on_key_press(self, event):
        """Controls -
        a(A) - move left
        d(D) - move right
        w(W) - move up
        s(S) - move down
        x/X - rotate about x-axis cw/anti-cw
        y/Y - rotate about y-axis cw/anti-cw
        z/Z - rotate about z-axis cw/anti-cw
        space - reset view
        p(P) - print current view
        i(I) - zoom in
        o(O) - zoom out
        """
        self.translate = [0, 0, 0]
        self.rotate = [0, 0, 0]

        if (event.text == 'p' or event.text == 'P'):
            print(self.view)
        elif (event.text == 'd' or event.text == 'D'):
            self.translate[0] = 0.3
        elif (event.text == 'a' or event.text == 'A'):
            self.translate[0] = -0.3
        elif (event.text == 'w' or event.text == 'W'):
            self.translate[1] = 0.3
        elif (event.text == 's' or event.text == 'S'):
            self.translate[1] = -0.3
        elif (event.text == 'o' or event.text == 'O'):
            self.translate[2] = 0.3
        elif (event.text == 'i' or event.text == 'I'):
            self.translate[2] = -0.3
        elif (event.text == 'x'):
            self.rotate = [1, 0, 0]
        elif (event.text == 'X'):
            self.rotate = [-1, 0, 0]
        elif (event.text == 'y'):
            self.rotate = [0, 1, 0]
        elif (event.text == 'Y'):
            self.rotate = [0, -1, 0]
        elif (event.text == 'z'):
            self.rotate = [0, 0, 1]
        elif (event.text == 'Z'):
            self.rotate = [0, 0, -1]
        elif (event.text == ' '):
            self.view = self.default_view

        translate(self.view, -self.translate[0], -self.translate[1],
                  -self.translate[2])
        xrotate(self.view, self.rotate[0])
        yrotate(self.view, self.rotate[1])
        zrotate(self.view, self.rotate[2])

        self.program['u_view'] = self.view
        self.update()
Example #4
0
    def on_timer(self, event):
        # self.phi += .5
        model = np.eye(4, dtype=np.float32)
        scale(model, 1, 1, 1)
        # rotate(model, self.phi, 0, 0, 1)
        self.cube['model'] = model

        self.view = np.eye(4)
        xrotate(self.view, self.rotate[0])
        yrotate(self.view, self.rotate[1])
        zrotate(self.view, self.rotate[2])
        translate(self.view, *self.translate)

        self.cube['view'] = self.view

        self.update()
Example #5
0
    def on_timer(self, event):
        # self.phi += .5
        model = np.eye(4, dtype=np.float32)
        scale(model, 1, 1, 1)
        # rotate(model, self.phi, 0, 0, 1)
        self.cube['model'] = model

        self.view = np.eye(4)
        xrotate(self.view, self.rotate[0])
        yrotate(self.view, self.rotate[1])
        zrotate(self.view, self.rotate[2])
        translate(self.view, *self.translate)

        self.cube['view'] = self.view

        self.update()
Example #6
0
    def on_key_press(self, event):
        """Controls -
        a(A) - move left
        d(D) - move right
        w(W) - move up
        s(S) - move down
        x/X - rotate about x-axis cw/anti-cw
        y/Y - rotate about y-axis cw/anti-cw
        z/Z - rotate about z-axis cw/anti-cw
        space - reset view
        p(P) - print current view
        i(I) - zoom in
        o(O) - zoom out
        6 - Move light right
        4 - Move light left
        8 - Move light up
        5 - Move light down
        7 - Move light up (depthwise)
        1 - Move light down (depthwise)
        """
        self.translate = [0, 0, 0]
        self.rotate = [0, 0, 0]

        if (event.text == 'p' or event.text == 'P'):
            print(self.view)
        elif (event.text == 'd' or event.text == 'D'):
            self.translate[0] = 30.
        elif (event.text == 'a' or event.text == 'A'):
            self.translate[0] = -30.
        elif (event.text == 'w' or event.text == 'W'):
            self.translate[1] = 30.
        elif (event.text == 's' or event.text == 'S'):
            self.translate[1] = -30.
        elif (event.text == 'o' or event.text == 'O'):
            self.translate[2] = 30.
        elif (event.text == 'i' or event.text == 'I'):
            self.translate[2] = -30.
        elif (event.text == 'x'):
            self.rotate = [1, 0, 0]
        elif (event.text == 'X'):
            self.rotate = [-1, 0, 0]
        elif (event.text == 'y'):
            self.rotate = [0, 1, 0]
        elif (event.text == 'Y'):
            self.rotate = [0, -1, 0]
        elif (event.text == 'z'):
            self.rotate = [0, 0, 1]
        elif (event.text == 'Z'):
            self.rotate = [0, 0, -1]
        elif (event.text == 'h'):
            self.rotate = [0, 0, 0]
        elif (event.text == 'j'):
            self.rotate = [90, 0, 0]
        elif (event.text == 'k'):
            self.rotate = [180, 0, 0]
        elif (event.text == 'l'):
            self.rotate = [270, 0, 0]
        elif (event.text == ' '):
            self.view = self.default_view
        elif (event.text == '6'):
            self.lightx += 100.
        elif (event.text == '4'):
            self.lightx += -100.
        elif (event.text == '8'):
            self.lighty += 100.
        elif (event.text == '5'):
            self.lighty += -100.
        elif (event.text == '7'):
            self.lightz += 100.
        elif (event.text == '1'):
            self.lightz += -100.

        translate(self.view, -self.translate[0], -self.translate[1],
                  -self.translate[2])
        xrotate(self.view, self.rotate[0])
        yrotate(self.view, self.rotate[1])
        zrotate(self.view, self.rotate[2])

        self.program[
            "u_light_position"] = self.lightx, self.lighty, self.lightz
        self.program['u_view'] = self.view
        self.update()