# RotateAround in local coordinates?

 0 Hey. So there’s an object that is rotated around some point in space. Both the point and the object are children to another object. The parent moves and rotates itself. Now, I want the parent’s rotation to stop messing around with the child’s RotateAround. How do I accomplish that, as it seems that there’s no RotateAround local overload available?This is how the child is being rotated: ``````function FixedUpdate(){ if (doRotateArrow) { this.transform.parent.RotateAround(rotationCenter.position, Vector3(1,0,0), 200 * Time.deltaTime); counterToggled = true; if (fixedCounter >= 900) { doRotateArrow = false; counterToggled = false; this.transform.parent.localEulerAngles.x = 0; this.transform.parent.localEulerAngles.y = 180; this.transform.parent.localEulerAngles.z = 180; `````` this.transform.parent.localPosition.x = 0; this.transform.parent.localPosition.y = 1.05; this.transform.parent.localPosition.z = 0; fixedCounter = 0; RearrangeArrow(); } } ``````if (counterToggled) fixedCounter++; ``````}And this is how the parent is being rotated: ``````void Update (){ float mousex = Input.mousePosition.x; xtilt = ((mousex - Screen.width/2) / (Screen.width/2)) * 2f; transform.rotation = Quaternion.AngleAxis(xtilt,new Vector3(0,-1,0)); ``````} more ▼ asked Jan 16 '12 at 12:36 PM krides 23 ● 6 ● 9 ● 11 add new comment (comments are locked) 10|3000 characters needed characters left ▼ Viewable by all users

 0 I see in your "child" script that you're rotating the parent and not the child (transform.parent.RotateAround) and also you're rotating the parent itself in its own script. About rotating in local system, transform.Rotate already applies to local system by default if you don't specify Space.World as third parameter (e.g. transform.Rotate(Vector3.right * 200 * Time.deltaTime) should rotate the object around its X axis. more ▼ answered Jan 16 '12 at 04:24 PM SkaredCreations 136 ● 2 Okay, actually, I think I failed in explaining what I was trying to accomplish with my code, but never mind, I have already figured that out. I just had to replace my existing rotation direction with a local one. Like this:transform.parent.RotateAround (rotationCenter.position, transform.parent.transform.right, 200* Time.deltaTime);This works perfectly. Answering your other question, the “parent” refers to a median empty object that is child to the global parent that is being rotated by mouse and parent to this. Jan 16 '12 at 06:09 PM krides add new comment (comments are locked) 10|3000 characters needed characters left ▼ Viewable by all users

By Email:

Topics:

x984
x955
x441
x149
x87

asked: Jan 16 '12 at 12:36 PM

Seen: 955 times

Last Updated: Jan 16 '12 at 06:09 PM