private void Rotate(int vectorIndex, bool inverse, Space space) { Vector3 eulerAngles = new Vector3(0, 0, 0); eulerAngles[vectorIndex] = inverse ? -this.deltaRotation : this.deltaRotation; PartTransform.Rotate(this.part, eulerAngles, space); }
private string SetRotation(int vectorIndex, string value, Space space) { float fValue = float.Parse(value, CultureInfo.InvariantCulture.NumberFormat); Vector3 partEulerAngles = (space == Space.Self) ? this.part.transform.localRotation.eulerAngles : this.part.transform.rotation.eulerAngles; Vector3 eulerAngles = new Vector3(0, 0, 0); eulerAngles[vectorIndex] = fValue - partEulerAngles[vectorIndex]; PartTransform.Rotate(this.part, eulerAngles, space); return(value); }
private void Rotate(int vectorIndex, bool inverse) { Vector3 eulerAngles = new Vector3(0, 0, 0); eulerAngles[vectorIndex] = inverse ? -deltaRotation : deltaRotation; if (part.isCompund) { CompoundPartTransform.Rotate((CompoundPart)part, eulerAngles, referenceSpace, compoundTargetSelected); } else { PartTransform.Rotate(part, eulerAngles, referenceSpace); } }
private string SetRotation(int vectorIndex, string value) { float fValue = float.Parse(value, CultureInfo.InvariantCulture.NumberFormat); Quaternion rotation = PartUtil.GetRotation(part, referenceSpace, compoundTargetSelected); Vector3 partEulerAngles = rotation.eulerAngles; Vector3 eulerAngles = new Vector3(0, 0, 0); eulerAngles[vectorIndex] = fValue - partEulerAngles[vectorIndex]; if (part.isCompund) { CompoundPartTransform.Rotate((CompoundPart)part, eulerAngles, referenceSpace, compoundTargetSelected); } else { PartTransform.Rotate(part, eulerAngles, referenceSpace); } return(value); }