vibe-openscad

tier-1-mug / gemini-3.5-flash

2 run / 累計 5.9s / 累計 $0.0059

gemini flash 3.5 bare

bare (provider default effort)

run detail →
render
bare render of tier-1-mug
loading STL…
success 2.9s · 142/304t · $0.0029
SCAD (35 lines)
$fn = 100;

// パラメータ設定
outer_diameter = 80;
total_height = 100;
wall_thickness = 4;
bottom_thickness = 6;

handle_inner_radius = 12; // 指を通す部分の半径
handle_thickness = 8;     // 取っ手の輪の太さ
handle_outer_radius = handle_inner_radius + handle_thickness;

difference() {
    union() {
        // カップ外側
        cylinder(d = outer_diameter, h = total_height);

        // 取っ手 (中心高さに配置)
        translate([outer_diameter / 2 - wall_thickness, 0, total_height / 2]) {
            rotate([90, 0, 0]) {
                // ドーナツ形状 (トーラス)
                rotate_extrude() {
                    translate([handle_outer_radius, 0, 0]) {
                        circle(r = handle_thickness / 2);
                    }
                }
            }
        }
    }

    // カップ内側のくり抜き
    translate([0, 0, bottom_thickness]) {
        cylinder(d = outer_diameter - (wall_thickness * 2), h = total_height);
    }
}
パラメータ (6)
スライダを動かすと openscad-wasm で再レンダリング

prompt

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

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

variant: thinking

offnot run
adaptivenot run
dynamic (default) success
dynamic
2.9s · 142/304t · $0.0029
SCAD (35 lines)
$fn = 100;

// パラメータ設定
outer_diameter = 80;
total_height = 100;
wall_thickness = 4;
bottom_thickness = 6;

handle_inner_radius = 12; // 指を通す部分の半径
handle_thickness = 8;     // 取っ手の輪の太さ
handle_outer_radius = handle_inner_radius + handle_thickness;

difference() {
    union() {
        // カップ外側
        cylinder(d = outer_diameter, h = total_height);

        // 取っ手 (中心高さに配置)
        translate([outer_diameter / 2 - wall_thickness, 0, total_height / 2]) {
            rotate([90, 0, 0]) {
                // ドーナツ形状 (トーラス)
                rotate_extrude() {
                    translate([handle_outer_radius, 0, 0]) {
                        circle(r = handle_thickness / 2);
                    }
                }
            }
        }
    }

    // カップ内側のくり抜き
    translate([0, 0, bottom_thickness]) {
        cylinder(d = outer_diameter - (wall_thickness * 2), h = total_height);
    }
}