如何从点列表转到对象

时间:2014-07-16 17:14:32

标签: c++ graphics stl 3d 3ds

我目前正在编写一个生成布里渊区域的c ++程序(如果你不知道它们是什么样的那么好)。输出是由它们的x,y和z坐标定义的点列表。我想将点列表转换为.stl或.3ds中的实体对象。如果有可能我想让c ++程序创建3d文件,因为当你将它们写入txt时,点列表文件是几个演出所以你不能将列表作为一个整体加载到ram而不会崩溃电脑。有没有人有一个想法如何做到这一点?

2 个答案:

答案 0 :(得分:1)

STL格式只是由其坐标定义的三角形列表。如果您已经生成了三角形,那么编写STL几乎只需要列出(x,y,z)值的三元组。

STL可以用ASCII或二进制编写。如果您还没有查看ASCII STL文件,请执行此操作。如果您想要样品,请告诉我。

您可以一次将文件写入一个三角形。

答案 1 :(得分:0)

我不知道.3ds或.stl的文件格式,但我假设可以通过块生成(写n点,用其他点更新等)。

我的想法是:
- 按块读取文件(例如:行)
- 处理点数 - 保存那个块 - 继续下一步。

可能需要保存虚拟数据(例如:如果文件格式.3ds有一个标题,其中包含有关文件中包含的总点数的信息,在这种情况下放0,当处理计数点和后者时保存正确的值)。