vibe-openscad

tier-2-hex-bolt / claude-fable-5-1

6 run / 累計 92.7s / 累計 $0.2908

claude fable 5.1 bare

bare (provider default effort)

run detail →
render
bare render of tier-2-hex-bolt
loading STL…
success 8.3s · 264/367t · $0.0210
SCAD (33 lines)
// M8 六角ボルト(ねじ山省略)
// 頭部底面が z=0、頭部は +Z 側、シャンクは -Z 側

$fn = 96;

// パラメータ
across_flats = 13;      // 対辺距離 [mm]
head_height  = 5.3;     // 頭部高さ [mm]
shank_d      = 8;       // シャンク直径 [mm]
shank_len    = 30;      // シャンク長さ [mm]

// 対辺距離 -> 外接円直径
across_corners = across_flats / cos(30);

module hex_head() {
    // 六角柱: z=0 から z=head_height
    cylinder(d = across_corners, h = head_height, $fn = 6);
}

module shank() {
    // 円柱: z=-shank_len から z=0
    translate([0, 0, -shank_len])
        cylinder(d = shank_d, h = shank_len);
}

module m8_hex_bolt() {
    union() {
        hex_head();
        shank();
    }
}

m8_hex_bolt();
パラメータ (4) —
スライダを動かすと openscad-wasm で再レンダリング

prompt

OpenSCAD で、規格に準じた M8 サイズの六角ボルトを作ってください。
ねじ山自体は省略してよく、円柱のシャンクで構いません。

寸法は以下に従ってください:
- 頭部は六角柱で、対辺距離(across-flats)13mm、高さ 5.3mm
- シャンク(軸部)は直径 8mm、長さ 30mm の円柱
- ボルト全体の中心軸は +Z 軸方向
- 頭部の底面が原点(z=0)に来るように配置し、シャンクは z<0 側へ伸ばす

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

variant: effort

low success →
low
11.2s · 264/454t · $0.0253
SCAD (34 lines)
// M8 六角ボルト(ねじ山省略)
// 頭部底面が z=0、頭部は +Z 側、シャンクは -Z 側へ伸びる

// --- 寸法パラメータ (ISO 4014 / 4017 相当) ---
across_flats = 13;    // 頭部対辺距離 [mm]
head_height  = 5.3;   // 頭部高さ [mm]
shank_d      = 8;     // シャンク直径 [mm]
shank_len    = 30;    // シャンク長さ [mm]

// 対辺距離 -> 外接円直径(対角距離)
across_corners = across_flats / cos(30);

$fn = 96;

module hex_head() {
    // 六角柱: 円柱を6角形で近似し、辺が X 軸に平行になるよう 30° 回転
    rotate([0, 0, 30])
        cylinder(h = head_height, d = across_corners, $fn = 6);
}

module shank() {
    // 頭部底面(z=0)から -Z 方向へ伸びる円柱
    translate([0, 0, -shank_len])
        cylinder(h = shank_len, d = shank_d);
}

module m8_hex_bolt() {
    union() {
        hex_head();
        shank();
    }
}

m8_hex_bolt();
mediumnot run
—
high (default) success →
high
8.3s · 264/367t · $0.0210
SCAD (33 lines)
// M8 六角ボルト(ねじ山省略)
// 頭部底面が z=0、頭部は +Z 側、シャンクは -Z 側

$fn = 96;

// パラメータ
across_flats = 13;      // 対辺距離 [mm]
head_height  = 5.3;     // 頭部高さ [mm]
shank_d      = 8;       // シャンク直径 [mm]
shank_len    = 30;      // シャンク長さ [mm]

// 対辺距離 -> 外接円直径
across_corners = across_flats / cos(30);

module hex_head() {
    // 六角柱: z=0 から z=head_height
    cylinder(d = across_corners, h = head_height, $fn = 6);
}

module shank() {
    // 円柱: z=-shank_len から z=0
    translate([0, 0, -shank_len])
        cylinder(d = shank_d, h = shank_len);
}

module m8_hex_bolt() {
    union() {
        hex_head();
        shank();
    }
}

m8_hex_bolt();
max success →
max
22.4s · 264/1497t · $0.0775
SCAD (37 lines)
// M8 六角ボルト(ねじ山省略・円柱シャンク)
// 頭部底面が z=0、頭部は +Z 側、シャンクは -Z 側へ伸びる

// ---- パラメータ ----
head_af   = 13;    // 頭部 対辺距離 (across-flats) [mm]
head_h    = 5.3;   // 頭部 高さ [mm]
shank_d   = 8;     // シャンク 直径 [mm]
shank_len = 30;    // シャンク 長さ [mm]

// 対辺距離 -> 六角形の外接円直径
head_d = head_af / cos(30);

$fn = 96;

// ---- 頭部(六角柱) ----
module hex_head() {
    // $fn=6 の cylinder は頂点が外接円上に乗る六角柱になる
    cylinder(d = head_d, h = head_h, $fn = 6);
}

// ---- シャンク(円柱) ----
module shank() {
    // 頭部内部にわずかに食い込ませて確実に結合させる(外形寸法は変わらない)
    eps = 0.01;
    translate([0, 0, -shank_len])
        cylinder(d = shank_d, h = shank_len + eps);
}

// ---- ボルト全体 ----
module hex_bolt() {
    union() {
        hex_head();
        shank();
    }
}

hex_bolt();
xhigh success →
xhigh
20.2s · 264/1317t · $0.0685
SCAD (23 lines)
// M8 六角ボルト (ねじ山省略・円柱シャンク)
// 中心軸: +Z, 頭部底面: z=0, シャンク: z<0 側

head_af = 13;    // 頭部 対辺距離 (across-flats) [mm]
head_h  = 5.3;   // 頭部 高さ [mm]
shank_d = 8;     // シャンク 直径 [mm]
shank_l = 30;    // シャンク 長さ [mm]

eps = 0.01;      // 面の共有による描画不具合を避けるための微小重なり

module hex_bolt_m8() {
    union() {
        // 頭部: 六角柱 (底面 z=0 ~ 上面 z=head_h)
        // cylinder の d は外接円直径なので、対辺距離から換算する
        cylinder(h = head_h, d = head_af / cos(30), $fn = 6);

        // シャンク: 円柱 (z = -shank_l ~ z = 0、頭部内へ eps だけ食い込ませる)
        translate([0, 0, -shank_l])
            cylinder(h = shank_l + eps, d = shank_d, $fn = 96);
    }
}

hex_bolt_m8();

variant: thinking

offnot run
—
adaptive (default) success →
adaptive
22.4s · 264/1497t · $0.0775
SCAD (37 lines)
// M8 六角ボルト(ねじ山省略・円柱シャンク)
// 頭部底面が z=0、頭部は +Z 側、シャンクは -Z 側へ伸びる

// ---- パラメータ ----
head_af   = 13;    // 頭部 対辺距離 (across-flats) [mm]
head_h    = 5.3;   // 頭部 高さ [mm]
shank_d   = 8;     // シャンク 直径 [mm]
shank_len = 30;    // シャンク 長さ [mm]

// 対辺距離 -> 六角形の外接円直径
head_d = head_af / cos(30);

$fn = 96;

// ---- 頭部(六角柱) ----
module hex_head() {
    // $fn=6 の cylinder は頂点が外接円上に乗る六角柱になる
    cylinder(d = head_d, h = head_h, $fn = 6);
}

// ---- シャンク(円柱) ----
module shank() {
    // 頭部内部にわずかに食い込ませて確実に結合させる(外形寸法は変わらない)
    eps = 0.01;
    translate([0, 0, -shank_len])
        cylinder(d = shank_d, h = shank_len + eps);
}

// ---- ボルト全体 ----
module hex_bolt() {
    union() {
        hex_head();
        shank();
    }
}

hex_bolt();
dynamicnot run
—