CadQuery script that generates a clock face for use with comonly available clock mechanism kits. (You have to bring your own clock hands: they should be part of the kit.)
The model is designed for two-color printing with manual filament change in mind: all the markings raise above the surface of the clock (height is configurable).
Parameters are part of the source code, stored at the start. Just edit them manually (I don't think there's a standardized “customizer”-like interface for CadQuery), names should be self-explanatory.
The script generates two models: the clock face and a test piece. Use the test piece to verify your color change setup and check that you can properly print the numerals.
The font is Oranienbaum from Google Fonts. It was printed in eSun ABS+ Natural (the white disc) and eSun ASA Black (markings).
thickness = 4
radius = 105
markings_thickness = 0.8
annuli_line_width = 1.4
hour_mark_mult = 3
outer_annulus_marked = False
outer_annulus_offset = 2
outer_annulus_width = 1.4
numerals = "roman" # roman, arabic, none
numerals_rotated = True
numerals_offset = 4
numerals_size = 23
numerals_font = "Oranienbaum"
numerals_font_kind = "regular" # regular, italic, bold
inner_annulus_marked = True
inner_annulus_offset = 4
inner_annulus_width = 6
central_hole_dia = 7.8
central_hole_cbore_dia = 15
central_hole_cbore_depth = 2
bottom_chamfer = 0.4
I tried to use the octogram spiral infill for the top layer to make it prettier, but the result is not as even as I would like; I recommend monotonic infill instead.
Check your slicer preview before printing. Check numerals or other markings sit directly on top of the dial (see below for explanation.)
The script was tested with (and probably requires) a recent version of CadQuery2: the current stable version of CQ-editor (v0.2) is too old, use nightly.
CadQuery has issues with self-intersecting geometry. This happens when using some fonts: the lines of the type are intersecting instead of cleanly delimiting the outline. This makes CQ unable to properly determine what's inside and outside. Usual result is numerals floating above the clock face dial, parts missing etc. If this happens, you have to use different font.
The author hasn't provided the model origin yet.