21#include "manifold/common.h"
101template <
typename Precision,
typename I>
202 size_t offset = 3 * t;
213 size_t offset = 4 * h;
214 return la::vec<Precision, 4>(
225 size_t offset = 12 * run;
229 return mat3x4(la::mat<Precision, 3, 4>(&
runTransform[offset]));
268static_assert(std::is_same<MeshGL, MeshGLP<float, uint32_t>>::value,
269 "MeshGL default index type must stay uint32_t");
271#ifndef MANIFOLD_NO_IOSTREAM
272MeshGL64 ReadOBJ(std::istream& stream);
273bool WriteOBJ(std::ostream& stream,
const MeshGL64& mesh);
la::vec< I, 3 > GetTriVerts(size_t t) const
Definition mesh.h:201
bool Backside(size_t run) const
Definition mesh.h:240
std::vector< I > mergeFromVert
Definition mesh.h:120
I NumRun() const
Number of triangle runs.
Definition mesh.h:108
std::vector< I > runIndex
Definition mesh.h:132
std::vector< float > vertProperties
Definition mesh.h:114
std::vector< float > runTransform
Definition mesh.h:143
std::vector< uint8_t > runFlags
Definition mesh.h:147
std::vector< I > mergeToVert
Definition mesh.h:124
I NumTri() const
Number of triangles.
Definition mesh.h:106
mat3x4 GetRunTransform(size_t run) const
Definition mesh.h:224
std::vector< float > halfedgeTangent
Definition mesh.h:158
bool HasNormals(size_t run) const
Definition mesh.h:260
std::vector< uint32_t > runOriginalID
Definition mesh.h:138
std::vector< I > triVerts
Definition mesh.h:117
la::vec< Precision, 4 > GetTangent(size_t h) const
Definition mesh.h:212
float tolerance
Definition mesh.h:163
I NumVert() const
Number of property vertices.
Definition mesh.h:104
std::vector< I > faceID
Definition mesh.h:153
la::vec< Precision, 3 > GetVertPos(size_t v) const
Definition mesh.h:189
I numProp
Definition mesh.h:110