hi JohnK and thx for looking at this.
If you’re still in the ‘research phase’ and not coding yet:
I found someone using an alternative method to the usual “conway operators” method (aka what we usually do with http://antiprism.com/ or polyHédronisme )
it’s capsid (in this site h,k display a GP(h,k) when “hex” is the geometry)
The author is Daniel Antonio Negrón.
He’s from the “bio virus” world (in demand these days…) and he’s using Caspar-Klug theory to generate these hex layouts. So it’s not 3D objects per se but he’s projecting on a 3D object every frame so may be his technic can be reused to generate a 3D GP mesh instead. He can also do trihex, snubhex and other geometries.
He has a simple presentation here: capsid/poster.pdf at master · dnanto/capsid · GitHub
Porting parts of Antiprism in BJS could also be another approach (may be using wasm and keeping C code instead of porting code to TS/JS). But I looked at Antiprism code = not simple !
I currently use Antiprism to generate GP objects like this:
Class I - GP(m,0) :
geodesic -c m,0 ico | pol_recip | antiview (or off2obj to export)
Class II - GP(m,m) :
geodesic -c m,m ico | pol_recip | antiview
or convert a Class I to Class II :
geodesic -c m,0 ico | pol_recip | conway z | antiview
Been able to do this generation step in the browser with BJS would be very nice.