vibe-openscad

tier-2-hex-bolt / gpt-5-2025-08-07

7 run / 累計 176.9s / 累計 $0.1290

openai gpt 5 2025-08-07 bare

bare (provider default effort)

run detail →
render
bare render of tier-2-hex-bolt
loading STL…
success 19.0s · 200/1548t · $0.0157
SCAD (25 lines)
// Parameters
af = 13;           // across-flats for hex head (mm)
head_h = 5.3;      // head height (mm)
shank_d = 8;       // shank diameter (mm)
shank_len = 30;    // shank length (mm)

// Derived
head_r = af / sqrt(3);  // circumradius for hex to achieve given across-flats

// Hex head (base at z=0, extends to +Z)
module hex_head(h, r) {
    cylinder(h=h, r=r, $fn=6);
}

// Shank (extends from z=0 down to -Z)
module shank(len, d) {
    translate([0,0,-len])
        cylinder(h=len, r=d/2, $fn=96);
}

// Assemble
union() {
    hex_head(head_h, head_r);
    shank(shank_len, shank_d);
}
パラメータ (4)
スライダを動かすと openscad-wasm で再レンダリング

prompt

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

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

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

variant: effort

low success
low
18.3s · 200/938t · $0.0096
SCAD (17 lines)
// Parameters
af = 13;          // across-flats for hex head (mm)
head_h = 5.3;     // head height (mm)
shank_d = 8;      // shank diameter (mm)
shank_h = 30;     // shank length (mm)

// Derived
head_d_corners = af * 2 / sqrt(3); // diameter across corners for hex

union() {
  // Hex head: base at z=0, extends to +Z
  cylinder(h = head_h, d = head_d_corners, $fn = 6);

  // Shank: extends from z=-shank_h to z=0
  translate([0,0,-shank_h])
    cylinder(h = shank_h, d = shank_d, $fn = 128);
}
medium (default) success
medium
19.0s · 200/1548t · $0.0157
SCAD (25 lines)
// Parameters
af = 13;           // across-flats for hex head (mm)
head_h = 5.3;      // head height (mm)
shank_d = 8;       // shank diameter (mm)
shank_len = 30;    // shank length (mm)

// Derived
head_r = af / sqrt(3);  // circumradius for hex to achieve given across-flats

// Hex head (base at z=0, extends to +Z)
module hex_head(h, r) {
    cylinder(h=h, r=r, $fn=6);
}

// Shank (extends from z=0 down to -Z)
module shank(len, d) {
    translate([0,0,-len])
        cylinder(h=len, r=d/2, $fn=96);
}

// Assemble
union() {
    hex_head(head_h, head_r);
    shank(shank_len, shank_d);
}
high success
high
42.1s · 200/3743t · $0.0377
SCAD (25 lines)
// M8 Hex Bolt (simplified, no threads)
// Units: mm

across_flats = 13;   // Head across-flats
head_height  = 5.3;  // Head height
shank_diam   = 8;    // Shank diameter
shank_len    = 30;   // Shank length

function circ_d_from_af(af) = 2 * af / sqrt(3);

module hex_head(af, h) {
    // Hex head: bottom at z=0, top at z=h
    cylinder(d = circ_d_from_af(af), h = h, $fn = 6);
}

module shank(d, len) {
    // Shank: extends from z=-len to z=0
    translate([0, 0, -len])
        cylinder(d = d, h = len, $fn = 96);
}

union() {
    hex_head(across_flats, head_height);
    shank(shank_diam, shank_len);
}
maxnot run
xhighnot run

iteration: iter-png

i1 success
iter 1
44.0s · 1130/2351t · $0.0249
diff vs bare: +0/-0
  // Parameters
  af = 13;           // across-flats for hex head (mm)
  head_h = 5.3;      // head height (mm)
  shank_d = 8;       // shank diameter (mm)
  shank_len = 30;    // shank length (mm)
  
  // Derived
  head_r = af / sqrt(3);  // circumradius for hex to achieve given across-flats
  
  // Hex head (base at z=0, extends to +Z)
  module hex_head(h, r) {
      cylinder(h=h, r=r, $fn=6);
  }
  
  // Shank (extends from z=0 down to -Z)
  module shank(len, d) {
      translate([0,0,-len])
          cylinder(h=len, r=d/2, $fn=96);
  }
  
  // Assemble
  union() {
      hex_head(head_h, head_r);
      shank(shank_len, shank_d);
  }
SCAD (25 lines)
// Parameters
af = 13;           // across-flats for hex head (mm)
head_h = 5.3;      // head height (mm)
shank_d = 8;       // shank diameter (mm)
shank_len = 30;    // shank length (mm)

// Derived
head_r = af / sqrt(3);  // circumradius for hex to achieve given across-flats

// Hex head (base at z=0, extends to +Z)
module hex_head(h, r) {
    cylinder(h=h, r=r, $fn=6);
}

// Shank (extends from z=0 down to -Z)
module shank(len, d) {
    translate([0,0,-len])
        cylinder(h=len, r=d/2, $fn=96);
}

// Assemble
union() {
    hex_head(head_h, head_r);
    shank(shank_len, shank_d);
}
i2 success
iter 2
17.2s · 1130/1126t · $0.0127
diff vs i1: +0/-0
  // Parameters
  af = 13;           // across-flats for hex head (mm)
  head_h = 5.3;      // head height (mm)
  shank_d = 8;       // shank diameter (mm)
  shank_len = 30;    // shank length (mm)
  
  // Derived
  head_r = af / sqrt(3);  // circumradius for hex to achieve given across-flats
  
  // Hex head (base at z=0, extends to +Z)
  module hex_head(h, r) {
      cylinder(h=h, r=r, $fn=6);
  }
  
  // Shank (extends from z=0 down to -Z)
  module shank(len, d) {
      translate([0,0,-len])
          cylinder(h=len, r=d/2, $fn=96);
  }
  
  // Assemble
  union() {
      hex_head(head_h, head_r);
      shank(shank_len, shank_d);
  }
SCAD (25 lines)
// Parameters
af = 13;           // across-flats for hex head (mm)
head_h = 5.3;      // head height (mm)
shank_d = 8;       // shank diameter (mm)
shank_len = 30;    // shank length (mm)

// Derived
head_r = af / sqrt(3);  // circumradius for hex to achieve given across-flats

// Hex head (base at z=0, extends to +Z)
module hex_head(h, r) {
    cylinder(h=h, r=r, $fn=6);
}

// Shank (extends from z=0 down to -Z)
module shank(len, d) {
    translate([0,0,-len])
        cylinder(h=len, r=d/2, $fn=96);
}

// Assemble
union() {
    hex_head(head_h, head_r);
    shank(shank_len, shank_d);
}
i3 success
iter 3
17.3s · 1130/1122t · $0.0126
diff vs i2: +0/-0
  // Parameters
  af = 13;           // across-flats for hex head (mm)
  head_h = 5.3;      // head height (mm)
  shank_d = 8;       // shank diameter (mm)
  shank_len = 30;    // shank length (mm)
  
  // Derived
  head_r = af / sqrt(3);  // circumradius for hex to achieve given across-flats
  
  // Hex head (base at z=0, extends to +Z)
  module hex_head(h, r) {
      cylinder(h=h, r=r, $fn=6);
  }
  
  // Shank (extends from z=0 down to -Z)
  module shank(len, d) {
      translate([0,0,-len])
          cylinder(h=len, r=d/2, $fn=96);
  }
  
  // Assemble
  union() {
      hex_head(head_h, head_r);
      shank(shank_len, shank_d);
  }
SCAD (25 lines)
// Parameters
af = 13;           // across-flats for hex head (mm)
head_h = 5.3;      // head height (mm)
shank_d = 8;       // shank diameter (mm)
shank_len = 30;    // shank length (mm)

// Derived
head_r = af / sqrt(3);  // circumradius for hex to achieve given across-flats

// Hex head (base at z=0, extends to +Z)
module hex_head(h, r) {
    cylinder(h=h, r=r, $fn=6);
}

// Shank (extends from z=0 down to -Z)
module shank(len, d) {
    translate([0,0,-len])
        cylinder(h=len, r=d/2, $fn=96);
}

// Assemble
union() {
    hex_head(head_h, head_r);
    shank(shank_len, shank_d);
}