如何将 REAL32 转换为矢量

How to convert a REAL32 to a Vector

所以我想读取项目的 STL 文件,运行 遇到不知道如何读取 REAL32 数字并将其转换为可用浮点值的问题。

TLDR 如何读取 12 字节 REAL32 并将其转换为 3 坐标

(来自维基百科)

foreach triangle                      - 50 bytes:
    REAL32[3] – Normal vector             - 12 bytes
    REAL32[3] – Vertex 1                  - 12 bytes
    REAL32[3] – Vertex 2                  - 12 bytes
    REAL32[3] – Vertex 3                  - 12 bytes
    UINT16    – Attribute byte count      -  2 bytes
end

Real32 不是 12 字节长。每个顶点有3个real32数,每个分别对应x、y、z坐标。每个坐标由 4 个字节表示,即 little endian 格式的 32 位,这种格式称为 real32。 您可以编写一个将 4 字节 real32 数字转换为双精度的函数。