示例#1
0
    def visualise(self, actor_c, starting_state, delay):
            state = copy.deepcopy(starting_state)
            visualiser = Visualisation(state)
            vis = visualiser.visualise()
            plt.show()
            while state.check_game_score() == 0:
                visualiser.make_dead(state.get_board())
                vis = visualiser.visualise()
                if delay > 0:
                    plt.show(block = False)
                    plt.pause(delay)
                    plt.close()
                else: 
                    plt.show(block = True)

                action = actor_c.choose_action(state.state(), state.get_available_moves(), 0)
                state.move(action)
            visualiser.make_dead(state.get_board())
            vis = visualiser.visualise()
            plt.show()
示例#2
0
    def creerPanelMatplotlib(self):

        #initialisation de la visualisation
        self.Visu = Visualisation(self, self.model.Aquifere.getVarList())
        sizerVisu = wx.BoxSizer(wx.VERTICAL)

        #ajout d'un item avec une proportion dans le sizer (95% et 5% ici) avec comme flag wxExpand
        sizerVisu.Add(self.Visu, 95, wx.EXPAND)
        basSizer = wx.BoxSizer(wx.HORIZONTAL)
        basSizer.Add(self.Visu.GetToolBar(), 0)
        self.pos = wx.StaticText(self, -1, ' x: y:', size=(100, 40))
        self.pos.SetOwnBackgroundColour('LIGHT GRAY')
        basSizer.Add(self.pos, 5, wx.EXPAND)
        self.notify = wx.StaticText(self, -1, '')
        font = wx.Font(16, wx.SWISS, wx.NORMAL, wx.NORMAL)
        self.notify.SetFont(font)
        self.notify.SetOwnForegroundColour('RED')
        basSizer.AddSpacer((0, 5), 0)
        basSizer.Add(self.notify, 5, wx.EXPAND)
        sizerVisu.Add(basSizer, 5, wx.EXPAND)
        self.matplot = sizerVisu
        self.model.setVisu(self.Visu)
        self.Visu.setVisu(self.model, self.model.getGlist())
示例#3
0
from Visualisation import *
from Simulator import *
import time

# Configuratie
VISUALISATION = True

if __name__ == "__main__":
    w = World(10)
    sim = Simulator(w)

    if VISUALISATION:
        vis = Visualisation(sim)
    else:
        while True:
            # Create new world and print to screen
            print(sim.update())
            # slow down simulation
            time.sleep(0.5)
示例#4
0
print(f"Classical FK: \n{T}\n")

### Jacobian ###


def AdJoint(T):
    R = T[0:3, 0:3]
    p = T[0:3, 3]
    return np.r_[np.c_[np.transpose(R),
                       np.dot(np.transpose(R), Skew(p))], np.c_[np.zeros(
                           (3, 3)), np.transpose(R)]]


def JacobianSpace(s_list, thetas):
    Js = np.array(s_list.T).copy().astype(float)
    T_J = np.eye(4)

    for i in range(1, len(thetas)):
        se3 = Get_s_mul_theta(omega_list[i - 1], v_list[i - 1], thetas[i - 1])

        T_J = np.dot(T_J, MatrixExp6(se3))
        Js[:, i] = np.dot(AdJoint(T_J), np.array(s_list.T)[:, i])

    return Js


print(f"Jacobian spatial: \n{JacobianSpace(S_list, q)}\n")

print()
visual.Visualisation(q, links_length)