Added 24-cell

feature-120-cell-layers
Mike Lynch 2023-11-01 11:43:54 +11:00
parent 50214adbe3
commit 4bf38858ea
1 changed files with 12 additions and 21 deletions

View File

@ -185,7 +185,14 @@ export const cell24 = () => {
index_nodes(nodes); index_nodes(nodes);
const links = auto_detect_edges(nodes, 8); const links = auto_detect_edges(nodes, 8);
links.map((l) => l.label = 0);
for( const p of [ 1, 2, 3 ] ) {
const nodes16 = nodes.filter((n) => n.label === p);
const links16 = auto_detect_edges(nodes16, 6);
links16.map((l) => l.label = p);
links.push(...links16);
}
// links.map((l) => { // links.map((l) => {
// const ls = [ l.source, l.target ].map((nid) => node_by_id(nodes, nid).label); // const ls = [ l.source, l.target ].map((nid) => node_by_id(nodes, nid).label);
// for ( const c of [1, 2, 3] ) { // for ( const c of [1, 2, 3] ) {
@ -196,6 +203,7 @@ export const cell24 = () => {
// }); // });
return { return {
name: '24-cell',
nodes: nodes, nodes: nodes,
links: links, links: links,
geometry: { geometry: {
@ -204,32 +212,14 @@ export const cell24 = () => {
}, },
base: {}, base: {},
options: [ options: [
[ 'One inscribed 16-cell', {} ], { name: 'none', links: [ 0 ] },
[ 'All inscribed 16-cells', {} ], { name: 'one 16-cell', links: [ 0, 1 ] },
{ name: 'three 16-cells', links: [ 0, 1, 2, 3 ] }
] ]
}; };
} }
const cell24_some_inscribed = (ps) => {
const t = cell24();
const i_links = [];
for( const p of ps ) {
const nodes16 = t.nodes.filter((n) => n.label === p);
const links16 = auto_detect_edges(nodes16, 6);
links16.map((l) => l.label = p);
i_links.push(...links16);
}
t.links.push(...i_links);
return t;
}
export const cell24_inscribed = () => cell24_some_inscribed([1]);
export const cell24_all_inscribed = () => cell24_some_inscribed([1,2,3]);
@ -780,6 +770,7 @@ export const build_all = () => {
cell5(), cell5(),
cell16(), cell16(),
tesseract(), tesseract(),
cell24(),
cell120_inscribed() cell120_inscribed()
]; ];
} }