Designing 3D-printable table lamps and pendant shades presents an engineering challenge: while the decorative shade requires organic, thin-walled, translucent geometry (best printed in high-speed continuous Vase Mode), the mounting base must be rigid, thermally safe, mechanically weighted, and wired with proper strain relief.

Most decorative 3D models available online ignore electrical realities—lacking cable escape channels, failing to account for heat dissipation, or hardcoding one specific light socket.

To solve this, we created LampMaker 3D, an open-source parametric lighting generator in Blender 5.x engineered specifically for 3D printing with standard electrical hardware.


1. Supported Socket Hardware Standards

Different lighting applications require specific mounting geometry and thermal clearances. The generator parameterizes socket interfaces across 5 industry standards:

Socket Standard Hole Diameter Application Dock Interface Features
Bambu Lab LED Kit 001 $\varnothing 60.2\text{ mm}$ Low-voltage USB table lamp $9.5\text{ mm}$ recess, friction lip, center air buffer, $4.8\text{ mm}$ cable track
E27 (Edison Screw) $\varnothing 41.2\text{ mm}$ Mains pendant / Table lamp Standard shade-ring clamp, $6.8\text{ mm}$ 2-conductor cable channel
E14 (Small Edison) $\varnothing 29.2\text{ mm}$ Compact desk lamp / Sconce Threaded collar clamp, $5.8\text{ mm}$ cord channel
E26 (US Standard) $\varnothing 40.2\text{ mm}$ Standard US desk lamp Threaded collar clamp, $6.8\text{ mm}$ cord channel
Tea Light $\varnothing 38.6\text{ mm}$ Cordless table ambient $18.0\text{ mm}$ deep cup for wax or battery LED candles

2. Two-Piece Interlocking Architecture

Rather than printing a lamp as a single fragile monolithic body, LampMaker 3D splits the design into two functional modules:

        +-----------------------------------+
        |      Lampshade (Vase Mode)        |  <-- Single continuous spiral perimeter
        |      (Thin, Translucent PLA/PETG) |      Diffuses light, 0 retractions
        +-----------------------------------+
        |  Female Slip Collar (+0.35mm)     |
        +===================================+
        |  Male Mounting Collar             |
        |  Solid Weighted Base Dock         |  <-- Multi-wall, high infill for stability
        |  [Recessed Cable Track (Z=0..4mm)]|      Flush cord exit, thermal chimney
        +-----------------------------------+

1. The Heavy Base Dock

  • Sliced solid ($3\text{–}4$ perimeters, $25%\text{ infill}$) to provide a low center of gravity.
  • Under-Base Cable Track: Recessed channel extending from the center socket recess to the outer perimeter ($z = 0\text{ to }4.2\text{ mm}$) with a flush $90^\circ$ exit slot. This guarantees the power cord exits flat, eliminating rocking.
  • Thermal Chimney: Convective air intake vents allow passive chimney airflow past the LED module.

2. The Vase-Mode Lampshade

  • Sliced in continuous spiral vase mode ($0.6\text{–}0.8\text{ mm}$ line width) for print speeds under $1.5\text{ hours}$.
  • Concentric Slip Collar: Features a $+0.35\text{ mm}$ radial clearance ($0.70\text{ mm}$ diametric clearance) that slides snugly over the base collar without light leaks or tilt.

3. Parametric Silhouettes & Cross-Sections

The vertical silhouette profile is controlled by Monotone Cubic Hermite splines:

    Lip Flare  (r_lip)   \             /
                          \           /
    Neck Waist (r_neck)    |         |
                          /           \
    Belly Flare(r_belly) /             \
                        |               |
    Base Dock  (r_base) +---------------+  Z = 0

Intermediate cross-sections can transition between arbitrary mathematical profiles:

  • Fluted Star: Star contours with adjustable flutes and sharpness exponents.
  • Squircle (Superellipse): Continuous algebraic transition from circle to square via Lamé curve exponent $p$:
$$|x|^p + |y|^p = r^p$$
  • Harmonic Waves: Multi-frequency sinusoidal ripples.

4. Multiplicative Diamond Knurling

To give lampshades crystalline light refraction, the generator supports dual-spiral diamond knurling:

def evaluate_knurl_relief(u, theta, num_knurls=24, depth=1.8):
    """Calculates dual helical knurl displacement."""
    # Right-handed and left-handed helical angles
    phi1 = theta * num_knurls + u * 4.0 * math.pi
    phi2 = theta * num_knurls - u * 4.0 * math.pi
    
    # Multiplicative wave crests
    wave = (math.cos(phi1) * 0.5 + 0.5) * (math.cos(phi2) * 0.5 + 0.5)
    return wave * depth

Smooth Docking Margins

Relief textures must not interfere with the base mounting interface or the top thermal chimney. The generator applies cosine-blended fade zones:

$$w_{\text{fade}}(z) = \begin{cases} 0, & z < z_{\text{collar}} \\ \frac{1}{2}\left(1 - \cos\left(\pi \frac{z - z_{\text{collar}}}{z_{\text{fade}}}\right)\right), & z_{\text{collar}} \le z < z_{\text{collar}} + z_{\text{fade}} \\ 1, & \text{body region} \end{cases}$$

This ensures that the female collar remains a pristine, untextured cylinder for a perfect mechanical fit over the base.