vibe-openscad

iter-png-3/gpt-5.4-nano / tier-1-mug

success tier 1

bare (gpt 5.4 nano)

render
bare render of tier-1-mug
loading STL…
success 5.0s · 1383/493t · $0.0004
SCAD (59 lines)
// Mug with hollow interior and outward ring handle (radial)

$fn = 128;

// Dimensions from prompt
outer_d  = 80;     // outer diameter
body_h   = 100;    // height
wall_t   = 4;      // side thickness
bottom_t = 6;     // bottom thickness

outer_r = outer_d/2;
inner_r = outer_r - wall_t;

// Handle (ring) parameters
handle_major_r = 12;   // "半径 12mm" => ring major radius
handle_zc = body_h/2;  // attach at cup center height
handle_th = 10;        // ring cross-section thickness along Z
finger_hole_d = 6;    // finger hole diameter

module mug() {
    difference() {
        // outer shell
        cylinder(h=body_h, r=outer_r);

        // hollow interior leaving bottom thickness
        translate([0,0,bottom_t])
            cylinder(h=body_h - bottom_t, r=inner_r);
    }
}

// Ring handle created as a torus, oriented to protrude radially outward (+X)
module ring_handle(major_r, zc, ring_th, hole_d) {
    // Torus minor radius is set by ring_th/2.
    // The finger hole is modeled by subtracting a smaller torus (same major radius).
    minor_outer = max(0.5, ring_th/2);
    minor_inner = max(0.5, minor_outer - hole_d/2);

    rotate([0,90,0]) {
        // Place torus so that its center lies at the cup outer surface (x = outer_r)
        // => it protrudes outward from the cup.
        translate([outer_r, 0, zc])
            difference() {
                // outer torus
                rotate_extrude(angle=360)
                    translate([major_r, 0, 0])
                        circle(r=minor_outer);

                // inner cutout torus to form finger hole
                rotate_extrude(angle=360)
                    translate([major_r, 0, 0])
                        circle(r=minor_inner);
            }
    }
}

union() {
    mug();
    ring_handle(handle_major_r, handle_zc, handle_th, finger_hole_d);
}
パラメータ (7)
スライダを動かすと openscad-wasm で再レンダリング

meta

runIditer-png-3_gpt-5.4-nano-2b32ef376696-2026-04-27T17-08-54-835Z
matrixIditer-png-3/gpt-5.4-nano
signature2b32ef3766967340…
provideropenai
modelgpt-5.4-nano-2026-03-17
harnessbare
statussuccess
duration4.96s (wallclock: load + prompt eval + generation + network)
tokens1383 in / 493 out
wallclock tok/s99.4 tok/s (end-to-end)
cost$0.0004
createdAt2026-04-27T17:08:54.835Z
gitCommitaf54e116f6f8
openscadOpenSCAD version 2026.04.27

iteration chain

各 iteration step は独立した benchmark run です。parentRunId で前段にリンクします。

prompt

OpenSCAD で、外径 80mm、高さ 100mm、肉厚 4mm のマグカップを作ってください。
底面の厚みは 6mm とし、内側はくり抜いて飲み物を入れられる形状にしてください。
さらに、側面には外径方向に飛び出す半径 12mm の取手(リング状の取手)を付けてください。
取手はカップの中心高さあたりに付け、外周から十分にはみ出して指を通せる形にしてください。

完成したコード全体を ```openscad ... ``` のフェンスで囲んで出力してください。コードのみで、追加の説明は不要です。