—
tier-1-mug / gpt-5.1-codex
5 run / 累計 217.9s / 累計 $0.3224
openai gpt 5.1 codex bare
bare (provider default effort)
run detail → render
$fn = 128;
mug_outer_d = 80;
mug_height = 100;
wall_thickness = 4;
bottom_thickness = 6;
handle_ring_outer = 12;
handle_ring_inner = 6;
handle_depth = 18;
handle_overlap = 2;
handle_offset = mug_outer_d/2 + handle_ring_outer - handle_overlap;
module mug_body() {
difference() {
cylinder(h = mug_height, r = mug_outer_d/2);
translate([0, 0, bottom_thickness])
cylinder(h = mug_height - bottom_thickness + 0.1, r = mug_outer_d/2 - wall_thickness);
}
}
module ring_handle() {
translate([handle_offset, 0, mug_height/2])
rotate([-90, 0, 0])
linear_extrude(height = handle_depth, center = true, convexity = 10)
difference() {
circle(r = handle_ring_outer);
circle(r = handle_ring_inner);
}
}
union() {
mug_body();
ring_handle();
} パラメータ (8) —
スライダを動かすと openscad-wasm で再レンダリング
prompt
OpenSCAD で、外径 80mm、高さ 100mm、肉厚 4mm のマグカップを作ってください。 底面の厚みは 6mm とし、内側はくり抜いて飲み物を入れられる形状にしてください。 さらに、側面には外径方向に飛び出す半径 12mm の取手(リング状の取手)を付けてください。 取手はカップの中心高さあたりに付け、外周から十分にはみ出して指を通せる形にしてください。 完成したコード全体を ```openscad ... ``` のフェンスで囲んで出力してください。コードのみで、追加の説明は不要です。
variant: effort
SCAD (35 lines)
$fn = 128;
mug_outer_d = 80;
mug_height = 100;
wall_thickness = 4;
bottom_thickness = 6;
handle_ring_outer = 12;
handle_ring_inner = 6;
handle_depth = 18;
handle_overlap = 2;
handle_offset = mug_outer_d/2 + handle_ring_outer - handle_overlap;
module mug_body() {
difference() {
cylinder(h = mug_height, r = mug_outer_d/2);
translate([0, 0, bottom_thickness])
cylinder(h = mug_height - bottom_thickness + 0.1, r = mug_outer_d/2 - wall_thickness);
}
}
module ring_handle() {
translate([handle_offset, 0, mug_height/2])
rotate([-90, 0, 0])
linear_extrude(height = handle_depth, center = true, convexity = 10)
difference() {
circle(r = handle_ring_outer);
circle(r = handle_ring_inner);
}
}
union() {
mug_body();
ring_handle();
} —
—
—
iteration: iter-png
diff vs bare: +0/-0
$fn = 128;
mug_outer_d = 80;
mug_height = 100;
wall_thickness = 4;
bottom_thickness = 6;
handle_ring_outer = 12;
handle_ring_inner = 6;
handle_depth = 18;
handle_overlap = 2;
handle_offset = mug_outer_d/2 + handle_ring_outer - handle_overlap;
module mug_body() {
difference() {
cylinder(h = mug_height, r = mug_outer_d/2);
translate([0, 0, bottom_thickness])
cylinder(h = mug_height - bottom_thickness + 0.1, r = mug_outer_d/2 - wall_thickness);
}
}
module ring_handle() {
translate([handle_offset, 0, mug_height/2])
rotate([-90, 0, 0])
linear_extrude(height = handle_depth, center = true, convexity = 10)
difference() {
circle(r = handle_ring_outer);
circle(r = handle_ring_inner);
}
}
union() {
mug_body();
ring_handle();
}
SCAD (35 lines)
$fn = 128;
mug_outer_d = 80;
mug_height = 100;
wall_thickness = 4;
bottom_thickness = 6;
handle_ring_outer = 12;
handle_ring_inner = 6;
handle_depth = 18;
handle_overlap = 2;
handle_offset = mug_outer_d/2 + handle_ring_outer - handle_overlap;
module mug_body() {
difference() {
cylinder(h = mug_height, r = mug_outer_d/2);
translate([0, 0, bottom_thickness])
cylinder(h = mug_height - bottom_thickness + 0.1, r = mug_outer_d/2 - wall_thickness);
}
}
module ring_handle() {
translate([handle_offset, 0, mug_height/2])
rotate([-90, 0, 0])
linear_extrude(height = handle_depth, center = true, convexity = 10)
difference() {
circle(r = handle_ring_outer);
circle(r = handle_ring_inner);
}
}
union() {
mug_body();
ring_handle();
}
diff vs i1: +0/-0
$fn = 128;
mug_outer_d = 80;
mug_height = 100;
wall_thickness = 4;
bottom_thickness = 6;
handle_ring_outer = 12;
handle_ring_inner = 6;
handle_depth = 18;
handle_overlap = 2;
handle_offset = mug_outer_d/2 + handle_ring_outer - handle_overlap;
module mug_body() {
difference() {
cylinder(h = mug_height, r = mug_outer_d/2);
translate([0, 0, bottom_thickness])
cylinder(h = mug_height - bottom_thickness + 0.1, r = mug_outer_d/2 - wall_thickness);
}
}
module ring_handle() {
translate([handle_offset, 0, mug_height/2])
rotate([-90, 0, 0])
linear_extrude(height = handle_depth, center = true, convexity = 10)
difference() {
circle(r = handle_ring_outer);
circle(r = handle_ring_inner);
}
}
union() {
mug_body();
ring_handle();
}
SCAD (35 lines)
$fn = 128;
mug_outer_d = 80;
mug_height = 100;
wall_thickness = 4;
bottom_thickness = 6;
handle_ring_outer = 12;
handle_ring_inner = 6;
handle_depth = 18;
handle_overlap = 2;
handle_offset = mug_outer_d/2 + handle_ring_outer - handle_overlap;
module mug_body() {
difference() {
cylinder(h = mug_height, r = mug_outer_d/2);
translate([0, 0, bottom_thickness])
cylinder(h = mug_height - bottom_thickness + 0.1, r = mug_outer_d/2 - wall_thickness);
}
}
module ring_handle() {
translate([handle_offset, 0, mug_height/2])
rotate([-90, 0, 0])
linear_extrude(height = handle_depth, center = true, convexity = 10)
difference() {
circle(r = handle_ring_outer);
circle(r = handle_ring_inner);
}
}
union() {
mug_body();
ring_handle();
}
diff vs i2: +0/-0
$fn = 128;
mug_outer_d = 80;
mug_height = 100;
wall_thickness = 4;
bottom_thickness = 6;
handle_ring_outer = 12;
handle_ring_inner = 6;
handle_depth = 18;
handle_overlap = 2;
handle_offset = mug_outer_d/2 + handle_ring_outer - handle_overlap;
module mug_body() {
difference() {
cylinder(h = mug_height, r = mug_outer_d/2);
translate([0, 0, bottom_thickness])
cylinder(h = mug_height - bottom_thickness + 0.1, r = mug_outer_d/2 - wall_thickness);
}
}
module ring_handle() {
translate([handle_offset, 0, mug_height/2])
rotate([-90, 0, 0])
linear_extrude(height = handle_depth, center = true, convexity = 10)
difference() {
circle(r = handle_ring_outer);
circle(r = handle_ring_inner);
}
}
union() {
mug_body();
ring_handle();
}
SCAD (35 lines)
$fn = 128;
mug_outer_d = 80;
mug_height = 100;
wall_thickness = 4;
bottom_thickness = 6;
handle_ring_outer = 12;
handle_ring_inner = 6;
handle_depth = 18;
handle_overlap = 2;
handle_offset = mug_outer_d/2 + handle_ring_outer - handle_overlap;
module mug_body() {
difference() {
cylinder(h = mug_height, r = mug_outer_d/2);
translate([0, 0, bottom_thickness])
cylinder(h = mug_height - bottom_thickness + 0.1, r = mug_outer_d/2 - wall_thickness);
}
}
module ring_handle() {
translate([handle_offset, 0, mug_height/2])
rotate([-90, 0, 0])
linear_extrude(height = handle_depth, center = true, convexity = 10)
difference() {
circle(r = handle_ring_outer);
circle(r = handle_ring_inner);
}
}
union() {
mug_body();
ring_handle();
}