module MiniScad::DSL

Public Instance Methods

cube(x, y, z, center: false) click to toggle source
# File lib/mini_scad.rb, line 9
def cube(x, y, z, center: false)
  Cube.new(x, y, z, center: center)
end
cylinder(r1, r2 = r1, h, n: 16, center: false) click to toggle source
# File lib/mini_scad.rb, line 17
def cylinder(r1, r2 = r1, h, n: 16, center: false)
  Cylinder.new(r1, r2, h, n: n, center: center)
end
none() click to toggle source
# File lib/mini_scad.rb, line 5
def none
  None.new
end
rounded_cube4(x, y, z, r, n: 16) click to toggle source
# File lib/mini_scad.rb, line 21
def rounded_cube4(x, y, z, r, n: 16)
  a = cylinder(r, z).translate(r,         r, 0)
  b = cylinder(r, z).translate(x - r,     r, 0)
  c = cylinder(r, z).translate(r,     y - r, 0)
  d = cylinder(r, z).translate(x - r, y - r, 0)

  (a + b + c + d).hull
end
rounded_cube8(x, y, z, r, n: 16) click to toggle source
# File lib/mini_scad.rb, line 30
def rounded_cube8(x, y, z, r, n: 16)
  a = sphere(r).translate(r,     r,     r)
  b = sphere(r).translate(r,     r,     z - r)
  c = sphere(r).translate(x - r, r,     r)
  d = sphere(r).translate(x - r, r,     z - r)
  e = sphere(r).translate(r,     y - r, r)
  f = sphere(r).translate(r,     y - r, z - r)
  g = sphere(r).translate(x - r, y - r, r)
  h = sphere(r).translate(x - r, y - r, z - r)

  (a + b + c + d + e + f + g + h).hull
end
sphere(r) click to toggle source
# File lib/mini_scad.rb, line 13
def sphere(r)
  Sphere.new(r)
end