molstar
Version:
A comprehensive macromolecular library.
62 lines • 2.08 kB
JavaScript
/**
* Copyright (c) 2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
*
* @author Alexander Rose <alexander.rose@weirdbyte.de>
*/
import { createPrimitive } from './primitive';
import { createCage } from './cage';
var t = (1 + Math.sqrt(5)) / 2;
var a = 1;
var b = 1 / t;
var c = 2 - t;
export var dodecahedronVertices = [
c, 0, a, -c, 0, a, -b, b, b, 0, a, c, b, b, b,
b, -b, b, 0, -a, c, -b, -b, b, c, 0, -a, -c, 0, -a,
-b, -b, -b, 0, -a, -c, b, -b, -b, b, b, -b, 0, a, -c,
-b, b, -b, a, c, 0, -a, c, 0, -a, -c, 0, a, -c, 0
];
/** indices of pentagonal faces, groups of five */
export var dodecahedronFaces = [
4, 3, 2, 1, 0,
7, 6, 5, 0, 1,
12, 11, 10, 9, 8,
15, 14, 13, 8, 9,
14, 3, 4, 16, 13,
3, 14, 15, 17, 2,
11, 6, 7, 18, 10,
6, 11, 12, 19, 5,
4, 0, 5, 19, 16,
12, 8, 13, 16, 19,
15, 9, 10, 18, 17,
7, 1, 2, 17, 18
];
var dodecahedronIndices = [
4, 3, 2, 2, 1, 0, 4, 2, 0,
7, 6, 5, 5, 0, 1, 7, 5, 1,
12, 11, 10, 10, 9, 8, 12, 10, 8,
15, 14, 13, 13, 8, 9, 15, 13, 9,
14, 3, 4, 4, 16, 13, 14, 4, 13,
3, 14, 15, 15, 17, 2, 3, 15, 2,
11, 6, 7, 7, 18, 10, 11, 7, 10,
6, 11, 12, 12, 19, 5, 6, 12, 5,
4, 0, 5, 5, 19, 16, 4, 5, 16,
12, 8, 13, 13, 16, 19, 12, 13, 19,
15, 9, 10, 10, 18, 17, 15, 10, 17,
7, 1, 2, 2, 17, 18, 7, 2, 18, // 7, 1, 2, 17, 18
];
var dodecahedronEdges = [
0, 1, 0, 4, 0, 5, 1, 2, 1, 7, 2, 3, 2, 17, 3, 4, 3, 14, 4, 16,
5, 6, 5, 19, 6, 7, 6, 11, 7, 18, 8, 9, 8, 12, 8, 13, 9, 10, 9, 15,
10, 11, 10, 18, 11, 12, 12, 19, 13, 14, 13, 16, 14, 15, 15, 17, 16, 19, 17, 18,
];
var dodecahedron;
export function Dodecahedron() {
if (!dodecahedron)
dodecahedron = createPrimitive(dodecahedronVertices, dodecahedronIndices);
return dodecahedron;
}
var dodecahedronCage = createCage(dodecahedronVertices, dodecahedronEdges);
export function DodecahedronCage() {
return dodecahedronCage;
}
//# sourceMappingURL=dodecahedron.js.map