/**
 * @author Abe Pazos / https://hamoid.com
 */

THREE.DodecahedronGeometry = function ( radius, detail ) {

	this.parameters = {
		radius: radius,
		detail: detail
	};

	var t = ( 1 + Math.sqrt( 5 ) ) / 2;
	var r = 1 / t;

	var vertices = [

		// (±1, ±1, ±1)
		-1, -1, -1,		-1, -1,	1,
		-1,	 1, -1,		-1,	 1,	1,
		 1, -1, -1,		 1, -1,	1,
		 1,	 1, -1,		 1,	 1,	1,

		// (0, ±1/φ, ±φ)
		 0, -r, -t,		 0, -r,	t,
		 0,	 r, -t,		 0,	 r,	t,

		// (±1/φ, ±φ, 0)
		-r, -t,	0,		-r,	t,	0,
		 r, -t,	0,		 r,	t,	0,

		// (±φ, 0, ±1/φ)
		-t,	0, -r,		 t,	0, -r,
		-t,	0,	r,		 t,	0,	r
	];

	var indices = [
			3, 11,	7,			3,	7, 15,			3, 15, 13,
			7, 19, 17,			7, 17,	6,			7,	6, 15,
		 17,	4,	8,		 17,	8, 10, 		 17, 10,	6,
			8,	0, 16,			8, 16,	2,			8,	2, 10,
			0, 12,	1,			0,	1, 18,			0, 18, 16,
			6, 10,	2, 			6,	2, 13,			6, 13, 15,
			2, 16, 18,			2, 18,	3,			2,	3, 13,
		 18,	1,	9,		 18,	9, 11,		 18, 11,	3,
			4, 14, 12, 			4, 12,	0, 			4,	0,	8,
		 11,	9,	5,		 11,	5, 19,		 11, 19,	7,
		 19,	5, 14,		 19, 14,	4,		 19,	4, 17,
			1, 12, 14, 			1, 14,	5, 			1,	5,	9
	];

	THREE.PolyhedronGeometry.call( this, vertices, indices, radius, detail );

};

THREE.DodecahedronGeometry.prototype = Object.create( THREE.Geometry.prototype );

/**
 * @author Abe Pazos / https://hamoid.com
 */

THREE.DodecahedronGeometry = function ( radius, detail ) {

	this.parameters = {
		radius: radius,
		detail: detail
	};

	var t = ( 1 + Math.sqrt( 5 ) ) / 2;
	var r = 1 / t;

	var vertices = [

		// (±1, ±1, ±1)
		-1, -1, -1,    -1, -1,  1,
		-1,  1, -1,    -1,  1,  1,
		 1, -1, -1,     1, -1,  1,
		 1,  1, -1,     1,  1,  1,

		// (0, ±1/φ, ±φ)
		 0, -r, -t,     0, -r,  t,
		 0,  r, -t,     0,  r,  t,

		// (±1/φ, ±φ, 0)
		-r, -t,  0,    -r,  t,  0,
		 r, -t,  0,     r,  t,  0,

		// (±φ, 0, ±1/φ)
		-t,  0, -r,     t,  0, -r,
		-t,  0,  r,     t,  0,  r
	];

	var indices = [
		 3, 11,  7,      3,  7, 15,      3, 15, 13,
		 7, 19, 17,      7, 17,  6,      7,  6, 15,
		17,  4,  8,     17,  8, 10,     17, 10,  6,
		 8,  0, 16,      8, 16,  2,      8,  2, 10,
		 0, 12,  1,      0,  1, 18,      0, 18, 16,
		 6, 10,  2,      6,  2, 13,      6, 13, 15,
		 2, 16, 18,      2, 18,  3,      2,  3, 13,
		18,  1,  9,     18,  9, 11,     18, 11,  3,
		 4, 14, 12,      4, 12,  0,      4,  0,  8,
		11,  9,  5,     11,  5, 19,     11, 19,  7,
		19,  5, 14,     19, 14,  4,     19,  4, 17,
		 1, 12, 14,      1, 14,  5,      1,  5,  9
	];

	THREE.PolyhedronGeometry.call( this, vertices, indices, radius, detail );

};

THREE.DodecahedronGeometry.prototype = Object.create( THREE.Geometry.prototype );

Fix whitespace