docs: def vector_drive(self, vx, vy, vw, tm_diff):
          """Call this from your :func:`PhysicsEngine.update_sim` function.
             Will update the robot's position on the simulation field.
             
             This moves the robot using a velocity vector relative to the robot
             instead of by speed/rotation speed.
             
             :param vx: Speed in x direction relative to robot in ft/s
             :param vy: Speed in y direction relative to robot in ft/s
             :param vw: Clockwise rotational speed in rad/s
             :param tm_diff:         Amount of time speed was traveled
          """
  
          # if the robot is disabled, don't do anything
          if not self.robot_enabled:
              return
  
          angle = vw * tm_diff
          vx = vx * tm_diff
          vy = vy * tm_diff
  
          x = vx * math.sin(angle) + vy * math.cos(angle)
          y = vx * math.cos(angle) + vy * math.sin(angle)
  
          self.distance_drive(x, y, angle)