On 7/22/06, kirby urner <[EMAIL PROTECTED]> wrote: > Note that the tricks I use to build this data structure (globaldata) > aren't necessarily going to scale when we move to the higher frequency > hexapents (12 pentagons, more hexagons).
Actually, I'm thinking they scale pretty well. Given a set of hexapent faces, say a list of 5- and 6-tuples, we name each face after the corner vertices, just as we normally do in geometry. Tuples are hashable keys, so we could call (1,3,13,5,7) a face (I'm just inventing the sequence), except to avoid duplicates we'd take advantage of ordinality to make (1,3,5,7,13) the *unique* reference to some pentagon. >From this face data, we have the same ability to distill (a) all unique edges (as vertex-pair tuples) and (b) all neighbors of a cell = those with exactly one edge in common. We can brute force our way through this if we're lazy and operating at a low enough frequency. Once developed, the resulting data structure may be saved to a file for recycling. So far, I haven't found a way to make Rick Bono's dome.exe (mentioned earlier) output buckyballs (x3 frequency) in a format that conserves faces as such. However, I'm thinking Adrian's Packinon might well do the job. So using gm.py to automatically build a globaldata dictionary for a higher frequency hexapent shouldn't be too problematic, using integers for vertices, and tuples for edges and faces. globaldata, recall, keys each face to a list of neighboring faces, so we're talking all 5- and 6-tuples. A separate lookup function could then retrieve pre-rendered data from a stash. Walking the globe is one thing. Doing so in real time -- well, that depends on what you're looking to see. I haven't forgotten that we want a compass control as part of the GUI, so that the 90-45 degree points mix with the 60-72 degree motif of the hexapent. Also, we of course want our labeled vertices to map to XYZ coordinate data, or whatever info will help with the OpenGL or whatever. Kirby _______________________________________________ Edu-sig mailing list [email protected] http://mail.python.org/mailman/listinfo/edu-sig
