Thanks for the quick reply!
That’s interesting - Moddable uses
graphics_fill_circle(ctx, center, radius);
if a full circle is drawn (like in my example above), otherwise
graphics_fill_radial(ctx, r, GOvalScaleModeFillCircle, inset_thickness, from, to);
is used.
I noticed years ago (when programming a watchface in C) the same problem with graphics_fill_circle(). The workaround was to use graphics_fill_radial() instead which made it possible to center a circle on the watchface.
So with Moddable a workaround would be to do something like
render.drawCircle(black, cx, cy, 4, 0, 180);
render.drawCircle(black, cx, cy, 4, 180, 360);
or
render.drawCircle(black, cx, cy, 4, -180, 180);
In these cases Moddable uses graphics_fill_radial() to draw a full circle, and the circle has a diameter of 8 pixels, centered on the watchface.
But now I wonder why Moddable doesn’t always use graphics_fill_radial(), but does things differently for a full circle drawn from 0° to 360°?