我正在尝试为网格存储逐帧体素信息。那就是在每个帧中,我试图存储每个体素将包含哪些原语。一切都将只是整数键,因此本质上是一个像这样的表:

FRAME 1
Voxel 1 : { 3,4,5 }
Voxel 2 : { 7,8 }
Voxel 3 : NULL
..
..
Voxel 5000 : {1223,43,42}

FRAME 2
Voxel 1 : { 3,5 }
Voxel 2 : { 7,8,0 }
Voxel 3 : NULL
..
..
Voxel 5000 : {123,413,422}

...


最好的存储方式是什么?在这一点上,我正在考虑类似


  std :: vector >


也就是说,外部向量将包含逐帧数据。内部向量将包含每个体素列表数据。

这样可以吗?或者我可以使用更好的Templete DS吗?

最佳答案

框架列表。

std::vector<Frame> frames;

框架=体素列表。

typedef std::vector<Voxel> Frame;

体素= int的列表。

typedef std::vector<int> Voxel;



颠倒使用它们的声明顺序。

typedef std::vector<int> Voxel;
typedef std::vector<Voxel> Frame;
std::vector<Frame> frames;

10-06 10:33