Skip to content

Commit bd92a36

Browse files
committed
test missing normal in face definition
1 parent eff0935 commit bd92a36

File tree

2 files changed

+50
-1
lines changed

2 files changed

+50
-1
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Comment
2+
mtllib simple.mtl
3+
o Simple
4+
v 0.01 0.02 0.03
5+
v 0.04 0.05 0.06
6+
v 0.07 0.08 0.09
7+
v 0.11 0.12 0.13
8+
vt 10 11
9+
vt 12 13
10+
vt 14 15
11+
vt 16 17
12+
vn 20 21 22
13+
usemtl Material.simple
14+
f 2/3/1 1/2/1 3/1/1
15+
o SimpleB
16+
v 1.0 0.0 1.0
17+
v -1.0 0.0 1.0
18+
v 1.0 0.0 -1.0
19+
v -1.0 0.0 -1.0
20+
vt 0.0 1.0
21+
vt 0.0 0.0
22+
vt 1.0 0.0
23+
vt 1.0 1.0
24+
vn 0.0 1.0 0.0
25+
usemtl Material2.simple
26+
f 6/7/2 5/6/2 7/5/2
27+
f 6/7/ 5/6/ 7/5/
28+
f 6/7/2 5/6/2 7/5/2

tests/test_parser.py

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,7 @@ def testObjColors(self):
179179
self.assertEqual(self.mesh2.materials[0].vertex_format, "T2F_C3F_N3F_V3F")
180180

181181
def test_undefined_uvs(self):
182-
"""obj file were some uv entries are undefiend"""
182+
"""obj file were some uv entries are undefined"""
183183
meshes = pywavefront.Wavefront(fixture('simple_missing_uv.obj'))
184184
self.mesh2 = meshes.mesh_list[1]
185185

@@ -199,6 +199,27 @@ def test_undefined_uvs(self):
199199

200200
self.assertEqual(self.mesh2.materials[0].vertex_format, "T2F_N3F_V3F")
201201

202+
def test_undefined_normals(self):
203+
"""obj file were some uv entries are undefined"""
204+
meshes = pywavefront.Wavefront(fixture('simple_missing_normal.obj'))
205+
self.mesh2 = meshes.mesh_list[1]
206+
207+
self.assertEqual(self.mesh2.materials[0].vertices, [
208+
1.0, 0.0, 0.0, 1.0, 0.0, -1.0, 0.0, 1.0,
209+
0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 1.0,
210+
0.0, 1.0, 0.0, 1.0, 0.0, 1.0, 0.0, -1.0,
211+
212+
1.0, 0.0, 20, 21, 22, -1.0, 0.0, 1.0,
213+
0.0, 0.0, 20, 21, 22, 1.0, 0.0, 1.0,
214+
0.0, 1.0, 20, 21, 22, 1.0, 0.0, -1.0,
215+
216+
1.0, 0.0, 0.0, 1.0, -0.0, -1.0, 0.0, 1.0,
217+
0.0, 0.0, 0.0, 1.0, -0.0, 1.0, 0.0, 1.0,
218+
0.0, 1.0, 0.0, 1.0, -0.0, 1.0, 0.0, -1.0,
219+
])
220+
221+
self.assertEqual(self.mesh2.materials[0].vertex_format, "T2F_N3F_V3F")
222+
202223

203224
class TestMtlParser(unittest.TestCase):
204225
def setUp(self):

0 commit comments

Comments
 (0)