Public
Edited
Jan 1, 2023
1 fork
Importers
11 stars
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
tetrahedron = [
[[ 1/2, 1/2, 1/2], [-1/2, 1/2, -1/2], [ 1/2, -1/2, -1/2]],
[[-1/2, 1/2, -1/2], [-1/2, -1/2, 1/2], [ 1/2, -1/2, -1/2]],
[[ 1/2, 1/2, 1/2], [ 1/2, -1/2, -1/2], [-1/2, -1/2, 1/2]],
[[ 1/2, 1/2, 1/2], [-1/2, -1/2, 1/2], [-1/2, 1/2, -1/2]]
]
Insert cell
Insert cell
hexahedron = [
[[-1/2, -1/2, -1/2], [ 1/2, -1/2, -1/2], [ 1/2, -1/2, 1/2], [-1/2, -1/2, 1/2]],
[[-1/2, -1/2, -1/2], [-1/2, -1/2, 1/2], [-1/2, 1/2, 1/2], [-1/2, 1/2, -1/2]],
[[-1/2, -1/2, 1/2], [ 1/2, -1/2, 1/2], [ 1/2, 1/2, 1/2], [-1/2, 1/2, 1/2]],
[[-1/2, 1/2, -1/2], [-1/2, 1/2, 1/2], [ 1/2, 1/2, 1/2], [ 1/2, 1/2, -1/2]],
[[ 1/2, -1/2, -1/2], [ 1/2, 1/2, -1/2], [ 1/2, 1/2, 1/2], [ 1/2, -1/2, 1/2]],
[[-1/2, -1/2, -1/2], [-1/2, 1/2, -1/2], [ 1/2, 1/2, -1/2], [ 1/2, -1/2, -1/2]]
]
Insert cell
cube = hexahedron // alias
Insert cell
Insert cell
octahedron = {
const a = 1 / (2 * Math.sqrt(2))
const b = 1 / 2
return [
[[-a, 0, a], [-a, 0, -a], [0, b, 0]],
[[-a, 0, -a], [ a, 0, -a], [0, b, 0]],
[[ a, 0, -a], [ a, 0, a], [0, b, 0]],
[[ a, 0, a], [-a, 0, a], [0, b, 0]],
[[ a, 0, -a], [-a, 0, -a], [0, -b, 0]],
[[-a, 0, -a], [-a, 0, a], [0, -b, 0]],
[[ a, 0, a], [ a, 0, -a], [0, -b, 0]],
[[-a, 0, a], [ a, 0, a], [0, -b, 0]]
]
}
Insert cell
Insert cell
dodecahedron = {
const a = (1 / goldenRatio) / 2
const b = (2 - goldenRatio) / 2
const c = 1 / 2
return [
[[ b, 0, c], [-b, 0, c], [-a, a, a], [ 0, c, b], [ a, a, a]],
[[-b, 0, c], [ b, 0, c], [ a, -a, a], [ 0, -c, b], [-a, -a, a]],
[[ b, 0, -c], [-b, 0, -c], [-a, -a, -a], [ 0, -c, -b], [ a, -a, -a]],
[[-b, 0, -c], [ b, 0, -c], [ a, a, -a], [ 0, c, -b], [-a, a, -a]],
[[ 0, c, -b], [ 0, c, b], [ a, a, a], [ c, b, 0], [ a, a, -a]],
[[ 0, c, b], [ 0, c, -b], [-a, a, -a], [-c, b, 0], [-a, a, a]],
[[ 0, -c, -b], [ 0, -c, b], [-a, -a, a], [-c, -b, 0], [-a, -a, -a]],
[[ 0, -c, b], [ 0, -c, -b], [ a, -a, -a], [ c, -b, 0], [ a, -a, a]],
[[ c, b, 0], [ c, -b, 0], [ a, -a, a], [ b, 0, c], [ a, a, a]],
[[ c, -b, 0], [ c, b, 0], [ a, a, -a], [ b, 0, -c], [ a, -a, -a]],
[[-c, b, 0], [-c, -b, 0], [-a, -a, -a], [-b, 0, -c], [-a, a, -a]],
[[-c, -b, 0], [-c, b, 0], [-a, a, a], [-b, 0, c], [-a, -a, a]],
]}
Insert cell
Insert cell
icosahedron = {
const a = 1 / 2
const b = 1 / (2 * goldenRatio)
return [
[[ 0, b, -a], [ b, a, 0], [-b, a, 0]],
[[ 0, b, a], [-b, a, 0], [ b, a, 0]],
[[ 0, b, a], [ 0, -b, a], [-a, 0, b]],
[[ 0, b, a], [ a, 0, b], [ 0, -b, a]],
[[ 0, b, -a], [ 0, -b, -a], [ a, 0, -b]],
[[ 0, b, -a], [-a, 0, -b], [ 0, -b, -a]],
[[ 0, -b, a], [ b, -a, 0], [-b, -a, 0]],
[[ 0, -b, -a], [-b, -a, 0], [ b, -a, 0]],
[[-b, a, 0], [-a, 0, b], [-a, 0, -b]],
[[-b, -a, 0], [-a, 0, -b], [-a, 0, b]],
[[ b, a, 0], [ a, 0, -b], [ a, 0, b]],
[[ b, -a, 0], [ a, 0, b], [ a, 0, -b]],
[[ 0, b, a], [-a, 0, b], [-b, a, 0]],
[[ 0, b, a], [ b, a, 0], [ a, 0, b]],
[[ 0, b, -a], [-b, a, 0], [-a, 0, -b]],
[[ 0, b, -a], [ a, 0, -b], [ b, a, 0]],
[[ 0, -b, -a], [-a, 0, -b], [-b, -a, 0]],
[[ 0, -b, -a], [ b, -a, 0], [ a, 0, -b]],
[[ 0, -b, a], [-b, -a, 0], [-a, 0, b]],
[[ 0, -b, a], [ a, 0, b], [ b, -a, 0]]
]
}
Insert cell
Insert cell
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more