public Vector3 ToVector3(PolarContext3 context) { var p2d = new PolarCircular(r, theta).ToVector2(); return(context.rotation * new Vector3(p2d.x, p2d.y, z) + context.polar); }
public Vector3 ToVector3(PolarContext3 context) => context.rotation * ToVector3() + context.polar;
public PolarCylindrical(Vector3 p, PolarContext3 context) : this(Quaternion.Inverse(context.rotation) * (p - context.polar), new PolarContext2(Vector2.zero, Mathf.Acos(context.rotation.w) * 2, context.isRightHanded)) { }
public PolarSpherical(Vector3 p, PolarContext3 context) : this(p - context.polar, context.rotation) { }