public override ParametersAsTransform getCurrentTransformParameters() { var toReturn = new ParametersAsTransform(); toReturn.position = origin + new Vector3(parameters[0].value, parameters[1].value, parameters[2].value); return(toReturn); }
public override ParametersAsTransform getCurrentTransformParameters() { float theta = Mathf.Deg2Rad * parameters[0].value; float phi = Mathf.Deg2Rad * parameters[1].value; float radius = parameters[2].value; var toReturn = new ParametersAsTransform(); toReturn.position = origin + new Vector3(Mathf.Sin(theta), Mathf.Sin(phi), Mathf.Cos(theta)) * radius; var forwardVec = toReturn.position - origin; forwardVec.Normalize(); toReturn.rotation = Quaternion.LookRotation(forwardVec, Vector3.RotateTowards(forwardVec, Vector3.up, Mathf.Deg2Rad * 90, 0.0f)); return(toReturn); }