VectorXYZ endDir = lastV.subtract(slastV).normalize();
VectorXYZ headStart = lastV.subtract(endDir.mult(headLength));
VectorXZ endDirXZ = endDir.xz();
if (endDirXZ.lengthSquared() < 0.01) { //(almost) vertical vector
endDirXZ = VectorXZ.X_UNIT;
} else {
endDirXZ = endDirXZ.normalize();
}
VectorXZ endNormalXZ = endDirXZ.rightNormal();