forked from tinyobjloader/tinyobjloader
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathloader.py
More file actions
33 lines (24 loc) · 904 Bytes
/
Copy pathloader.py
File metadata and controls
33 lines (24 loc) · 904 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from tinyobjloader import ObjReader, ObjReaderConfig
class LoadException(Exception):
pass
class Loader:
"""
A light wrapper around ObjReader to provide a convenient interface for testing.
"""
def __init__(self, triangulate):
self.reader = ObjReader()
config = ObjReaderConfig()
config.triangulate = triangulate
self.config = config
def load(self, mesh_path):
if not self.reader.ParseFromFile(mesh_path, self.config):
raise LoadException(self.reader.Error() or self.reader.Warning())
def loads(self, mesh_string):
if not self.reader.ParseFromString(mesh_string, "", self.config):
raise LoadException(self.reader.Error() or self.reader.Warning())
@property
def shapes(self):
return self.reader.GetShapes()
@property
def attrib(self):
return self.reader.GetAttrib()