How to use the pygltflib.FLOAT function in pygltflib

To help you get started, we’ve selected a few pygltflib examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github prideout / svg3d / test_gltf.py View on Github external
accessor = glb.accessors[prim.indices]
        assert accessor.type == "SCALAR"
        assert not accessor.sparse
        assert accessor.componentType == pygltflib.UNSIGNED_SHORT
        nindices = accessor.count
        bv = glb.bufferViews[accessor.bufferView]
        data = glb._glb_data[bv.byteOffset : bv.byteOffset + bv.byteLength]
        triangles = np.frombuffer(data, dtype=np.uint16)
        triangles = np.reshape(triangles, (-1, 3))
        assert nindices == len(triangles) * 3

        # Vertices
        accessor = glb.accessors[prim.attributes.POSITION]
        assert accessor.type == "VEC3"
        assert not accessor.sparse
        assert accessor.componentType == pygltflib.FLOAT
        nvertices = accessor.count
        bv = glb.bufferViews[accessor.bufferView]
        data = glb._glb_data[bv.byteOffset : bv.byteOffset + bv.byteLength]
        vertices = np.frombuffer(data, dtype=np.float32)
        vertices = np.reshape(vertices, (-1, 3))
        assert nvertices == len(vertices)

        faces = scale * vertices[triangles]
        cull = lambda face_index, winding: None if winding < 0 else {}
        meshes.append(svg3d.Mesh(faces, cull, style=style))

    return meshes

pygltflib

Python library for reading, writing and managing 3D objects in the Khronos Group gltf and gltf2 formats.

MIT
Latest version published 21 days ago

Package Health Score

61 / 100
Full package analysis

Similar packages