Пример #1
0
 def __init__(self):
     Y0, Y1 = [0., 0, -0.25, np.pi],  [0., 0, -0.5, np.pi]
     steps = [pmt.SmoothLine(Y0, Y1, duration=1.),
              pmt.Cst(Y1, duration=1.),
              pmt.SmoothLine(Y1, Y0, duration=1.),
              pmt.Cst(Y0, duration=1.)]
     pmt.CompositeTraj.__init__(self, steps)        
Пример #2
0
 def __init__(self):
     Y0, Y1 = [0., 0, -0.25, np.pi/2-np.deg2rad(30)],  [0., 0, -0.25, np.pi/2+np.deg2rad(30)]
     steps = [pmt.SmoothLine(Y0, Y1, duration=2.),
              pmt.Cst(Y1, duration=1.),
              pmt.SmoothLine(Y1, Y0, duration=2.),
              pmt.Cst(Y0, duration=1.)]
     pmt.CompositeTraj.__init__(self, steps)
 def __init__(self,
              l=1.1,
              r=1,
              z=-0.25,
              v=3,
              dt_trans=0.203,
              dalpha=np.deg2rad(16),
              eps_l=0.33):
     c1, c2 = np.array([-l, 0, z]), np.array([l, 0, z])
     circle1 = pmt.Circle(c2, r, v, -np.pi / 2 + dalpha, np.pi - 2 * dalpha)
     circle2 = pmt.Circle(c1, r, v, np.pi / 2 + dalpha, np.pi - 2 * dalpha)
     l1s, l1e = np.array([-l + eps_l, -r, z]), np.array([l - eps_l, -r, z])
     line1 = pmt.Line(l1s, l1e, v)
     l2s, l2e = np.array([l - eps_l, r, z]), np.array([-l + eps_l, r, z])
     line2 = pmt.Line(l2s, l2e, v)
     trans1 = pmt.SmoothLine(line1.get(line1.duration),
                             circle1.get(0),
                             duration=dt_trans)
     trans2 = pmt.SmoothLine(circle1.get(circle1.duration),
                             line2.get(0),
                             duration=dt_trans)
     trans3 = pmt.SmoothLine(line2.get(line2.duration),
                             circle2.get(0),
                             duration=dt_trans)
     trans4 = pmt.SmoothLine(circle2.get(circle2.duration),
                             line1.get(0),
                             duration=dt_trans)
     steps = [
         line1, trans1, circle1, trans2, line2, trans3, circle2, trans4
     ]
     pmt.CompositeTraj.__init__(self, steps)
Пример #4
0
 def __init__(self):
     oval = pmt.Oval(l=1, r=1, v=2.5, z=-0.25)
     Y0, Y1 = [-2.5, -1, 0, np.pi/2], oval.get(0.)
     takeoff = pmt.SmoothLine(Y0, Y1, duration=1.)
     Y2 =  [2.5, -1, 0, 0]
     landing = pmt.SmoothLine(oval.get(oval.duration), Y0, duration=5.)
     #goback = pmt.Line(Y2[:3], Y0[:3], v=1., psi=0)
     wait = pmt.Cst(Y0, duration=2.)
     steps = [takeoff, oval, landing, wait]
     pmt.CompositeTraj.__init__(self, steps)
Пример #5
0
 def __init__(self, l=1., r=1, z=-0.25, v=3):
     c1, c2 = np.array([-l, 0, z]), np.array([l, 0, z])
     p1, p2 = np.array([-l, -r, z]), np.array([l, -r, z])
     eps_l, eps_alpha = 0.5, np.deg2rad(10)
     p1bis, p2bis = np.array([-l+eps_l, -r, z]), np.array([l-eps_l, -r, z])
     p3, p4 = np.array([l, r, z]), np.array([-l, r, z])
     circle1 = pmt.Circle(c2, r, v, -np.pi/2, np.pi)
     line1 = pmt.Line(p1bis, p2bis, v)
     circle2 = pmt.Circle(c1, r, v, np.pi/2, np.pi)
     Y0 = circle2.get(circle2.duration)
     Y1 = circle1.get(0)
     Y2 = circle1.get(circle1.duration)
     Y3 = circle2.get(0)
     steps = [#pmt.SmoothLine(circle2.get(circle2.duration), line1.get(0), duration=0.16),
              #line1,
              #pmt.SmoothLine(line1.get(line1.duration), Y1, duration=0.16),
              pmt.SmoothLine(Y0, Y1, duration=0.7),
              circle1,
              pmt.SmoothLine(Y2, Y3, duration=0.7),
              circle2]
     pmt.CompositeTraj.__init__(self, steps)