pub fn from_2d(&self, pos: &Point<f64>, vel: &Point<f64>) -> (f64, f64) {
let pos = self.projection_of(*pos - self.edge.p1);
let vel = self.projection_of(*vel);
pub fn from_2d(&self, pos: &Point<f64>, vel: &Point<f64>) -> (f64, f64) {
let pos = self.projection_of(*pos - self.edge.p1);
let vel = self.projection_of(*vel);