最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

compression - Is it possible to subdivide the surface of a 3D Sphere (Earth) using 256 sided polygons? - Stack Overflow

programmeradmin3浏览0评论

Background for purpose sparse/compressible data structure/compressible honeycumbs, vague description to give you an idea: This would allow an array of [0..255] connection points hopefully. If all of the connection points would be empty it could be collapsed. Also 0..255 is a nice 8 bit index. Which would allow for example 64 bit indexes to be divided into 8x8 bit indexes to seek more efficiently across the earth/3d sphere for a max of 8 trips to DRAM 100 or 80 nanoseconds.

For example: Array[A,B,C,D,E] of connection points, or whatever resolution is desired.

Revealing the invention a little bit: Where the array consists out of multiple arrays connected together. Two data structures: 1: Array of pointer. 2: Array of data.

The intermediate arrays are pointers. The final array is data.

Two new concepts introduced based on nil pointer: empty pointer, full pointer. Using 64 KB of first virtual memory addresses would be safest: empty = 1; full = 2; Could also be implemented as: empty:=@empty; full:=@full; to use these virtual memory addresses as an indicator like nil, so that the compiler pulls them out of virtual memory space, like reserved addresses, like 0/nil.

then code to handle these pointers is something like: if not nil if not empty if not full then contains data pointer.

Also set/get would compress/expand data structure as necessery as count goes from 1 to 0 or from 256 to 255 or less.

Count could be a byte to save space.

Alternatively the counter could be left out to save memory and instead scan the array to see if all are empty or all or full, and if so remove the array and replace by single pointer in upper array to save memory and collapse/remove/recycle the pointer array.

memory consumption would be: pointer array: 256 x the size of a pointer + optionally 1 counter of 1 byte. data array: 256 x the size of a data element. root pointer: size of a pointer.

Background for purpose sparse/compressible data structure/compressible honeycumbs, vague description to give you an idea: This would allow an array of [0..255] connection points hopefully. If all of the connection points would be empty it could be collapsed. Also 0..255 is a nice 8 bit index. Which would allow for example 64 bit indexes to be divided into 8x8 bit indexes to seek more efficiently across the earth/3d sphere for a max of 8 trips to DRAM 100 or 80 nanoseconds.

For example: Array[A,B,C,D,E] of connection points, or whatever resolution is desired.

Revealing the invention a little bit: Where the array consists out of multiple arrays connected together. Two data structures: 1: Array of pointer. 2: Array of data.

The intermediate arrays are pointers. The final array is data.

Two new concepts introduced based on nil pointer: empty pointer, full pointer. Using 64 KB of first virtual memory addresses would be safest: empty = 1; full = 2; Could also be implemented as: empty:=@empty; full:=@full; to use these virtual memory addresses as an indicator like nil, so that the compiler pulls them out of virtual memory space, like reserved addresses, like 0/nil.

then code to handle these pointers is something like: if not nil if not empty if not full then contains data pointer.

Also set/get would compress/expand data structure as necessery as count goes from 1 to 0 or from 256 to 255 or less.

Count could be a byte to save space.

Alternatively the counter could be left out to save memory and instead scan the array to see if all are empty or all or full, and if so remove the array and replace by single pointer in upper array to save memory and collapse/remove/recycle the pointer array.

memory consumption would be: pointer array: 256 x the size of a pointer + optionally 1 counter of 1 byte. data array: 256 x the size of a data element. root pointer: size of a pointer.

Share Improve this question asked yesterday oOooOo 2911 gold badge2 silver badges16 bronze badges 1
  • Have you ever looked at the polygons on a football? – Martin Brown Commented yesterday
Add a comment  | 

1 Answer 1

Reset to default 0

If I understand the question (ignoring the apparent mention of a "256-sided polygon"!), then you can divide the surface of a sphere into 256 areas, very simply with 16 meridians and 15 parallels on a Mercator projection.

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论