vibe-openscad

tier-2-hex-bolt / claude-haiku-4-5-20251001

5 run / 累計 12.7s / 累計 $0.0103

claude haiku 4.5 2025-10-01 bare

bare (provider default effort)

run detail →
render
bare render of tier-2-hex-bolt
loading STL…
success 3.3s · 252/212t · $0.0013
SCAD (15 lines)
module hex_bolt_m8() {
    // 六角形の対辺距離 13mm から、外接円の半径を計算
    // 対辺距離 = sqrt(3) * 外接円半径
    // 外接円半径 = 対辺距離 / sqrt(3)
    hex_radius = 13 / sqrt(3);
    
    // 頭部:六角柱
    cylinder(h = 5.3, r = hex_radius, $fn = 6);
    
    // シャンク:円柱(z < 0 側へ伸ばす)
    translate([0, 0, -30])
        cylinder(h = 30, r = 4, $fn = 32);
}

hex_bolt_m8();

prompt

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

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

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

variant: thinking

off (default) success
off
3.3s · 252/212t · $0.0013
SCAD (15 lines)
module hex_bolt_m8() {
    // 六角形の対辺距離 13mm から、外接円の半径を計算
    // 対辺距離 = sqrt(3) * 外接円半径
    // 外接円半径 = 対辺距離 / sqrt(3)
    hex_radius = 13 / sqrt(3);
    
    // 頭部:六角柱
    cylinder(h = 5.3, r = hex_radius, $fn = 6);
    
    // シャンク:円柱(z < 0 側へ伸ばす)
    translate([0, 0, -30])
        cylinder(h = 30, r = 4, $fn = 32);
}

hex_bolt_m8();
adaptivenot run
dynamicnot run

iteration: iter-png

i1 success
iter 1
2.0s · 1220/256t · $0.0025
diff vs bare: +0/-0
  module hex_bolt_m8() {
      // 六角形の対辺距離 13mm から、外接円の半径を計算
      // 対辺距離 = sqrt(3) * 外接円半径
      // 外接円半径 = 対辺距離 / sqrt(3)
      hex_radius = 13 / sqrt(3);
      
      // 頭部:六角柱
      cylinder(h = 5.3, r = hex_radius, $fn = 6);
      
      // シャンク:円柱(z < 0 側へ伸ばす)
      translate([0, 0, -30])
          cylinder(h = 30, r = 4, $fn = 32);
  }
  
  hex_bolt_m8();
SCAD (15 lines)
module hex_bolt_m8() {
    // 六角形の対辺距離 13mm から、外接円の半径を計算
    // 対辺距離 = sqrt(3) * 外接円半径
    // 外接円半径 = 対辺距離 / sqrt(3)
    hex_radius = 13 / sqrt(3);
    
    // 頭部:六角柱
    cylinder(h = 5.3, r = hex_radius, $fn = 6);
    
    // シャンク:円柱(z < 0 側へ伸ばす)
    translate([0, 0, -30])
        cylinder(h = 30, r = 4, $fn = 32);
}

hex_bolt_m8();
i2 success
iter 2
1.8s · 1220/251t · $0.0025
diff vs i1: +1/-1
  module hex_bolt_m8() {
      // 六角形の対辺距離 13mm から、外接円の半径を計算
      // 対辺距離 = sqrt(3) * 外接円半径
      // 外接円半径 = 対辺距離 / sqrt(3)
      hex_radius = 13 / sqrt(3);
      
      // 頭部:六角柱
      cylinder(h = 5.3, r = hex_radius, $fn = 6);
      
      // シャンク:円柱(z < 0 側へ伸ばす)
      translate([0, 0, -30])
-         cylinder(h = 30, r = 4, $fn = 32);
+         cylinder(h = 30, r = 8/2, $fn = 32);
  }
  
  hex_bolt_m8();
SCAD (15 lines)
module hex_bolt_m8() {
    // 六角形の対辺距離 13mm から、外接円の半径を計算
    // 対辺距離 = sqrt(3) * 外接円半径
    // 外接円半径 = 対辺距離 / sqrt(3)
    hex_radius = 13 / sqrt(3);
    
    // 頭部:六角柱
    cylinder(h = 5.3, r = hex_radius, $fn = 6);
    
    // シャンク:円柱(z < 0 側へ伸ばす)
    translate([0, 0, -30])
        cylinder(h = 30, r = 8/2, $fn = 32);
}

hex_bolt_m8();
i3 success
iter 3
2.3s · 1222/290t · $0.0027
diff vs i2: +0/-0
  module hex_bolt_m8() {
      // 六角形の対辺距離 13mm から、外接円の半径を計算
      // 対辺距離 = sqrt(3) * 外接円半径
      // 外接円半径 = 対辺距離 / sqrt(3)
      hex_radius = 13 / sqrt(3);
      
      // 頭部:六角柱
      cylinder(h = 5.3, r = hex_radius, $fn = 6);
      
      // シャンク:円柱(z < 0 側へ伸ばす)
      translate([0, 0, -30])
          cylinder(h = 30, r = 8/2, $fn = 32);
  }
  
  hex_bolt_m8();
SCAD (15 lines)
module hex_bolt_m8() {
    // 六角形の対辺距離 13mm から、外接円の半径を計算
    // 対辺距離 = sqrt(3) * 外接円半径
    // 外接円半径 = 対辺距離 / sqrt(3)
    hex_radius = 13 / sqrt(3);
    
    // 頭部:六角柱
    cylinder(h = 5.3, r = hex_radius, $fn = 6);
    
    // シャンク:円柱(z < 0 側へ伸ばす)
    translate([0, 0, -30])
        cylinder(h = 30, r = 8/2, $fn = 32);
}

hex_bolt_m8();