vibe-openscad

iter-png-2/gemini-3.5-flash / tier-1-mug

success tier 1

bare (gemini 3.5 flash)

render
bare render of tier-1-mug
loading STL…
success 18.5s · 1683/430t · $0.0064
SCAD (35 lines)
$fn = 100;

// マグカップの寸法
cup_height = 100;
cup_outer_radius = 40; // 外径 80mm のため、半径は 40mm
cup_wall_thickness = 4;
cup_bottom_thickness = 6;

// 取手(リング状)の寸法
// 「指を通せる形」にするため、リングの内半径(穴の半径)を 12mm とします。
handle_inner_radius = 12; 
handle_thickness = 4;     // 取手自体の肉厚(チューブの半径)
handle_radius = handle_inner_radius + handle_thickness; // トーラスの中心半径 (16mm)

// 取手をカップ外壁にしっかりと結合させつつ、内壁(r=36)に突き出さない位置に配置
// 取手の最内端がカップの肉厚の中間(x=38)に位置するように計算
handle_x = (cup_outer_radius - cup_wall_thickness / 2) + handle_radius + handle_thickness;

difference() {
    union() {
        // マグカップ本体(外側)
        cylinder(h=cup_height, r=cup_outer_radius);
        
        // 取手(中心の高さに配置)
        translate([handle_x, 0, cup_height / 2])
        rotate([90, 0, 0])
        rotate_extrude()
        translate([handle_radius, 0, 0])
        circle(r=handle_thickness);
    }
    
    // 内側のくり抜き
    translate([0, 0, cup_bottom_thickness])
        cylinder(h=cup_height - cup_bottom_thickness + 1, r=cup_outer_radius - cup_wall_thickness);
}
パラメータ (6)
スライダを動かすと openscad-wasm で再レンダリング

meta

runIditer-png-2_gemini-3.5-flash-04b6fbef80b1-2026-05-20T00-16-19-609Z
matrixIditer-png-2/gemini-3.5-flash
signature04b6fbef80b1e2d1…
providergoogle
modelgemini-3.5-flash
harnessbare
statussuccess
duration18.45s (wallclock: load + prompt eval + generation + network)
tokens1683 in / 430 out
wallclock tok/s23.3 tok/s (end-to-end)
cost$0.0064
createdAt2026-05-20T00:16:19.609Z
gitCommitc16a216592f0
openscadOpenSCAD version 2026.04.27

iteration chain

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

prompt

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

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