Merge pull request 'Added a new view of the 120-cell's 5-cells with more colours' (#25) from feature-120-cell-details into main
Reviewed-on: #25
This commit is contained in:
commit
1bf3187f33
@ -1,6 +1,11 @@
|
||||
CHANGELOG
|
||||
=========
|
||||
|
||||
## v1.2 - 18/1/2026
|
||||
|
||||
Added a second visualisation of the 120-cell's 5-cells without the 120-cell links
|
||||
and with more colours added so you can get a sense of the individual 5-cells.
|
||||
|
||||
## v1.1 - 1/1/2026
|
||||
|
||||
The 120-cell now includes a visualisation of its inscribed 5-cells, which honestly
|
||||
|
||||
@ -9,12 +9,11 @@ export const get_colours = (basis) => {
|
||||
const luminance = hslb['color'][2];
|
||||
const scheme = new ColorScheme;
|
||||
scheme.from_hue(hue).scheme("tetrade").distance(0.75);
|
||||
const colours = scheme.colors().slice(1, 9);
|
||||
colours.reverse();
|
||||
const scolours = scheme.colors();
|
||||
const colours = [ ...scolours, ...scolours, ...scolours, ...scolours, ...scolours, ...scolours, ...scolours, ...scolours ];
|
||||
const hsl = colours.map((c) => Color("#" + c).hsl());
|
||||
const resaturated = hsl.map((hslc) => hslc.saturationl(saturation).rgbNumber());
|
||||
resaturated.unshift(basis);
|
||||
console.log(resaturated);
|
||||
return resaturated;
|
||||
}
|
||||
|
||||
|
||||
@ -36,7 +36,7 @@
|
||||
<script type="module" src="/main.js"></script>
|
||||
<div id="description"></div>
|
||||
<div id="release_notes"></div>
|
||||
<div id="info"><a href="#" id="show_notes">release 1.1</a> |
|
||||
<div id="info"><a href="#" id="show_notes">release 1.2</a> |
|
||||
|
||||
by <a target="_blank" href="https://mikelynch.org/">Mike Lynch</a> |
|
||||
<a target="_blank" href="https://git.tilde.town/bombinans/fourdjs">source</a></div>
|
||||
|
||||
4
main.js
4
main.js
@ -1,6 +1,10 @@
|
||||
import * as THREE from 'three';
|
||||
|
||||
const RELEASE_NOTES = `
|
||||
<p><b>v1.2 - 18/1/2026</b></p>
|
||||
|
||||
<p>Added a second visualisation of the 120-cell's 5-cells without the 120-cell links and with more colours added so you can get a sense of the individual 5-cells.</p>
|
||||
|
||||
<p><b>v1.1 - 1/1/2026</b></p>
|
||||
|
||||
<p>The 120-cell now includes a visualisation of its inscribed 5-cells, which honestly
|
||||
|
||||
19
polytopes.js
19
polytopes.js
@ -475,7 +475,7 @@ export const cell120_inscribed = () => {
|
||||
|
||||
export const cell120_inscribed_cell5 = () => {
|
||||
const nodes = make_120cell_vertices();
|
||||
const links = auto_detect_edges(nodes, 4);
|
||||
const links = [];
|
||||
|
||||
for( const cstr in CELLINDEX.INDEX120 ) {
|
||||
label_nodes(nodes, CELLINDEX.INDEX120[cstr], Number(cstr));
|
||||
@ -483,17 +483,25 @@ export const cell120_inscribed_cell5 = () => {
|
||||
|
||||
links.map((l) => l.label = 0);
|
||||
|
||||
const CELL5S = CELLINDEX.CELL120_CELL5.cell5s;
|
||||
|
||||
for( const c5 in CELL5S ) {
|
||||
const nodes5 = nodes.filter((n) => CELL5S[c5].includes(n.id));
|
||||
const links5 = auto_detect_edges(nodes5, 5);
|
||||
links5.map((l) => l.label = Number(c5));
|
||||
links.push(...links5);
|
||||
}
|
||||
|
||||
const show_links = Array.from({ length: 128 }, (_, i) => i);
|
||||
|
||||
return {
|
||||
name: '120-cell-5-cell',
|
||||
name: '120 5-cells',
|
||||
nodes: nodes,
|
||||
links: links,
|
||||
options: [
|
||||
{ name: "5-cells", links: [ 0, 1, 2, 3, 4, 5, 6, 7, 8 ] },
|
||||
],
|
||||
description: `The 120-cell with one of its 5-cells.`,
|
||||
{ name: "none", links: show_links},
|
||||
],
|
||||
description: `The 120 5-cells from the 120-cell, without the latter's links. This colouring is pretty arbitrary, being based on the algorithm which partitioned the nodes: a later version will have something that's based on the symmetries of the 600-cells which each of the 5-cells has its nodes in.`,
|
||||
}
|
||||
}
|
||||
|
||||
@ -913,6 +921,7 @@ export const build_all = () => {
|
||||
cell600(),
|
||||
cell600_layered(),
|
||||
cell120_inscribed(),
|
||||
cell120_inscribed_cell5(),
|
||||
cell120_layered()
|
||||
];
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user