p.scaleAdd(radius, p, center);
private static Point3f intersect(final Point3f p1, final Point3f p2, final Vector3f n, final Point3f p3) { // http://paulbourke.net/geometry/planeline/ final Vector3f v1 = new Vector3f(); v1.sub(p3, p1); final Vector3f v2 = new Vector3f(); v2.sub(p2, p1); final float u = (n.dot(v1)) / (n.dot(v2)); final Point3f res = new Point3f(); res.scaleAdd(u, v2, p1); return res; } }