vibe-openscad

iter-png-3/gemini-3.1-flash-lite / tier-1-mug

success tier 1

bare (gemini 3.1 flash-lite)

render
bare render of tier-1-mug
loading STL…
success 2.6s · 1540/303t · $0.0008
SCAD (30 lines)
$fn = 100;

// マグカップ本体
union() {
    difference() {
        // 外形: 直径80mm, 高さ100mm
        cylinder(h = 100, d = 80);
        
        // 内側のくり抜き: 底面厚6mm, 側面厚4mm
        translate([0, 0, 6])
        cylinder(h = 100, d = 80 - 4 * 2);
    }

    // 取手: 外径方向に飛び出す半径12mmの断面を持つリング
    // リングの中心位置を調整し、カップの外壁に接続
    translate([40 - 2, 0, 50]) {
        rotate([0, 90, 0]) {
            // 半径12mmのトーラス(major_radiusは中心軸からの距離)
            // minor_radiusを12mmに設定
            torus(major_radius = 14, minor_radius = 6);
        }
    }
}

// トーラス作成用モジュール
module torus(major_radius, minor_radius) {
    rotate_extrude()
    translate([major_radius, 0, 0])
    circle(r = minor_radius);
}

meta

runIditer-png-3_gemini-3.1-flash-lite-e9999fa41ddd-2026-09-05T10-43-06-808Z
matrixIditer-png-3/gemini-3.1-flash-lite
signaturee9999fa41ddd1684…
providergoogle
modelgemini-3.1-flash-lite
harnessbare
statussuccess
duration2.64s (wallclock: load + prompt eval + generation + network)
tokens1540 in / 303 out
wallclock tok/s114.9 tok/s (end-to-end)
cost$0.0008
createdAt2026-09-05T10:43:06.808Z
gitCommit6126da97a014
openscadOpenSCAD version 2026.04.27

iteration chain

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

prompt

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

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