He estado masticando esto por un tiempo y pensé que abriría una pregunta y trataría de obtener algunas ideas al respecto. Tal vez algo encenderá una bombilla.Estructura de datos muy grande necesaria. En busca de ideas
Necesito construir una rejilla hexagonal y esa rejilla hexagonal tendrá un mínimo de 10 x 10 y un máximo de 500x500 - y posiblemente más grande. Obviamente, esta es una grilla masiva en el extremo superior y, naturalmente, tendrá que dividirse.
Aquí está la mayor parte del problema.
- 500x500 cuadrícula de hexágonos. aprox.
- No cambian muy a menudo, pero pueden cambiar.
- Descomponerlo en secciones de 50x50 o 100x100 es muy factible; sin embargo, es posible que alguien corra de un extremo del mapa al otro, así que tengo que ser capaz de manejar todo en algún momento, incluso si está en secciones
- Esto obviamente creará una gran pérdida de memoria.
Puedo almacenar los datos (vars compartidos) como simple byteArray o incluso en plainText. La información por hex es muy simple, es la cantidad que hay. No "tengo" que guardar los datos. (Sería una característica)
La estructura básica por hexágono es:
- color hexadecimal (con contorno obviamente) (o una imagen de mapa de bits) blitting cualquiera!
- TextField con un número en él. (Máximo 2 dígitos)
Eso es más o menos toda la información que se necesita.
Si no hubiera la posibilidad de que el hexágono cambie en absoluto, esto sería bastante trivial.
Tengo curiosidad por saber si alguien tiene alguna idea al respecto. (cualquier verdad absoluta no estaría mal;)
Editar: Oh, la información en los hexes viene a través de una corriente tcp. Esto no es un problema, como dije, los datos son simplistas por hex. Y mi analizador es muy rápido, así que no es un problema.
Actualización: La posibilidad de tener que crear y mantener 250,000 objetos (hexágonos) es lo que más me hace hacer esta pregunta. Es por eso que estoy buscando ideas. (250k objetos en flash están bien laf)
No es muy claro por su descripción cuál es el problema. Una matriz de 500x500 de estructuras de datos bastante pequeñas no va a ser grande en la memoria. Solo podría ser un par de megabytes si todo lo que necesita almacenar es un color RGB y un int. ¿Cuál es el problema exactamente? –
250,000 posible objeto es por qué pregunté. solo por el mapa – Feltope
250,000 objetos es solo un problema si los objetos son enormes. Pero especificó que su estructura de datos tiene un color (4 bytes) y un int (4 bytes). Esa es una pequeña cantidad de datos (~ 2MB). ¿Cuántas de estas cosas hexagonales necesita para mostrar de forma simultánea? Presumiblemente no todos los 250,000 al mismo tiempo ... –