2

i would like to move the pointers on the measuring device so that they go back and forth. Due to the inclination of the main object, however, I cannot simply change the rotation of the Z-axis, because the pointer then moves incorrectly, since the main point is aligned to a straight horizontal line. Can I rotate the object in edit mode so that the slope is the "new standard"? Hope my englisch is not too bad.

enter image description here

VICUBE Animation
  • 501
  • 3
  • 14
  • The needle has some rotation to it, have you tried the objects local orientation? – Psyonic Jun 29 '21 at 09:26
  • Hello what do you mean with the objects local orientation or where can you change that? – VICUBE Animation Jun 29 '21 at 09:31
  • you can choose another orientation for the needle origin so that it rotates the way you want – moonboots Jun 29 '21 at 09:41
  • or follow this method, which is probably better: https://blender.stackexchange.com/questions/129834/how-do-i-rotate-an-object-along-its-own-axis-windmill – moonboots Jun 29 '21 at 09:48
  • maybe provide your blend file so we don't have to guess how you did it and what the exact solution could look like ;) – Chris Jun 29 '21 at 09:50
  • The middle, top of your viewport, click on the button that says "Global" and change it to local – Psyonic Jun 29 '21 at 11:01
  • Thank you for all of your answers! It's really great that so many people help you! Unfortunately, I cannot attach the .blend file because I had bought the basic model and am therefore not allowed to publish it :( The simplest solution is actually to set the "Transform Orientations" to Local and then you can simply rotate it in the correct axis. When I work with keyframes, it sometimes makes small errors (deviations), but with a few keyframes in between you can actually compensate for this quite well. – VICUBE Animation Jun 29 '21 at 12:21

1 Answers1

3

If you rotate your indicator around Z axis first, and then rotate it by another axis, it works:

However, notice how rotating it around X axis doesn't just change X rotation in the Numbers panel - this is because Blender automatically calculates the rotations needed for your object to rotate along chosen axis as if it didn't have some rotations already (as if it had the rotations applied, "baked" into the mesh).

The logic behind that is simple: Rotating something around axis Z by a degrees and then around axis X by b degrees is not the same as rotating it around X by b and then around Z by a - it's like with division, it's not associative.

This is why you can precise the order of rotation - since I rotated the indicator around Z first, if I change the order to have Z before X, I will not get weird transformations in this case:

(notice ZXY Euler order)

This is of course not a general solution, because sometimes there's a lot of transformations you want to make, e.g. if the indicator rotates around 2 axes and the meter or whatever the indicator is a part of, rotates around all 3 axes, this will not solve your problem. "Part of" is the key here, you should parent one object to the other if it's supposed to follow it, as in this answer by Moonbot: How do I rotate an object along it's own axis (windmill)

If the problem is not in animation or something else dynamic, but just in modelling, often you can just change the orientation from global to local or custom (the plus sign):

Markus von Broady
  • 36,563
  • 3
  • 30
  • 99