class Mittsu::IcosahedronGeometry

Public Class Methods

new(radius = 1.0, detail = 0) click to toggle source
Calls superclass method
# File lib/mittsu/extras/geometries/icosahedron_geometry.rb, line 7
def initialize(radius = 1.0, detail = 0)
  t = (1.0 + ::Math.sqrt(5)) / 2.0

  vertices = [
    - 1,  t,  0,    1,  t,  0,   - 1, - t,  0,    1, - t,  0,
    0, - 1,  t,    0,  1,  t,    0, - 1, - t,    0,  1, - t,
    t,  0, - 1,    t,  0,  1,   - t,  0, - 1,   - t,  0,  1
  ]

  indices = [
    0, 11,  5,    0,  5,  1,    0,  1,  7,    0,  7, 10,    0, 10, 11,
    1,  5,  9,    5, 11,  4,   11, 10,  2,   10,  7,  6,    7,  1,  8,
    3,  9,  4,    3,  4,  2,    3,  2,  6,    3,  6,  8,    3,  8,  9,
    4,  9,  5,    2,  4, 11,    6,  2, 10,    8,  6,  7,    9,  8,  1
  ]

  super(vertices, indices, radius, detail)

  @type = 'IcosahedronGeometry'

  @parameters = {
    radius: radius,
    detail: detail
  }
end