Time rotating with hand, possible?

I’m working on a face and basically what I want to do is have an hour hand and minute hand rotating, each hand has a circle to display the time (hour or minute), is there a way to essentially attach an object to another object to follow it’s movements, or make the text object that displays the time rotate around the watch face instead of spin

Not so much attach but it is possible to make an element rotate at the same rate so that it looks like it is.

You can do this by using expressions for the item’s x and y positions.

Suppose the distances from the centre of the hour and minute hands to the centre of the time displays are 100 and 140 pixels respectively, then:

Hour Text: #Db#
X position: (160+100sin(rad(#DWFHS#)))
Y position: (160-100
cos(rad(#DWFHS#)))

Minute Text: #Dm#
X position: (160+140sin(rad(#DWFMS#)))
Y position: (160-140
cos(rad(#DWFMS#)))

Set rotation of hour hand to: #DWFHS#
and minute hand to: #DWFMS#

Set justification of text to centre.

You may need to experiment a bit with the constants to get the text exactly where you want it.

I hope that helps.

:slight_smile:

1 Like

Thanks for the response, I set it all up and aligned the text, it rotates and follows the hand but it lowers out of the circle at 3 and 9, almost like it’s rotating on a ellipse instead of a circle, it lines right back up at 12 and 6, not quite sure why, I can probably just easily do a work around using the same expression but have the circle the time will be in separate from the hand and match it with the exact expression of the time

edit: tried having the circle separate but just the time moves down

1 Like

From the photo it looks like you are also rotating the text, is that right? If so, you don’t need to. You can just leave the text rotation at 0.

Now the other issue might be that the centre of the text object is not in fact centred in the middle of the text. This might also be a function of the font. If it is not centred then you may need to add a further small sinusoidal correction term to each of the X and Y positions to compensate.

Edit: I think I remember reading that there is a way to centre the text vertically as well - part of the Creator interface; an alignment widget (?)

Ok I’ll give it a look, thanks for all the help

1 Like

Ok. I was wrong about the widget to adjust vertical alignment of text ( It does not appear to exist; I must have been thinking of something else :blush: ).

However, the solution is much simpler than I thought; you just need to apply a constant Y offset.

For expressions, see inspection mode of test face below:

2 Likes

thank you for all the help, it worked well and just finished and published

6 Likes

Very nice! I like the overall design and the hand displays are great.

Just a small point, and of course it does not matter, but normally one expects to see the hour hand shorter than the minute hand …

Anyway, a great job, well done!

:slight_smile:

1 Like

Oh your totally right I kinda flipped them, thanks, I’ll swap the codes around

2 Likes

Hey great job. I like that face. I’m glad someone was able to help you figure out the code for it. Well done.

1 Like

Hi there. I just wanted to thank you so much for posting this. I’ve been wanting so badly to learn how to do this :blush:

1 Like

Hi there. How would this work with Fitface? I’m trying to figure it out, but can’t. Thanks :blush:

Thanks for this, I’ve been playing around with it on what may end up being my 3rd face.