Commit Graph

126 Commits

Author SHA1 Message Date
cd864fa1ba
Move half-edge assembler to separate .c file 2014-05-16 20:10:43 +02:00
dfd978f714
Refactor parse_obj() and move some subroutines to new functions 2014-05-16 19:57:43 +02:00
0ecd0d8e9f
Merge branch 'master' into refactor
Conflicts:
	src/half_edge.c
2014-05-16 19:15:29 +02:00
f62e280cea
Reimplement dummy-edge logic
This will also work for more complex structures such as
testscube2_mitSpitze_offen.obj.
2014-05-16 19:04:38 +02:00
29f06e91f4
Add testcube .obj for non-trivial normals 2014-05-16 19:04:22 +02:00
8ec744867c
Remove obsolete usleep call in gl_draw.c 2014-05-16 15:09:27 +02:00
852cb7cca5
Add more .obj files for testing normals 2014-05-16 15:09:14 +02:00
69dc76a59e
Finalize consistency tests 2014-05-16 15:08:51 +02:00
49dc760681
Merge branch 'master' into refactor 2014-05-16 14:53:47 +02:00
a2b604de2f
Finalize half-edge consistency tests 2014-05-16 01:11:21 +02:00
a3bac07c2b
Add fps counter (by Malte) 2014-05-16 00:32:38 +02:00
be95307ceb
Rm trailing whitespace in barcelona chair 2014-05-16 00:16:34 +02:00
15e5ab1c23
New fill_vertices() method, simplify some data types 2014-05-16 00:15:29 +02:00
491a5fbe91
Finish up the new parsing modules 2014-05-15 22:42:22 +02:00
23dbcf2c58
Improve allocation logic 2014-05-15 19:04:51 +02:00
242af84c99
Remove obsolete macro
It is already in half_edge.c and since it refers to a static
function it has no place here.
2014-05-15 18:52:52 +02:00
aaa485f072
Try to fix normals for open edges
Probably still not correct, depending on the complexity
of the object.
2014-05-15 18:52:28 +02:00
3687646974
Fix include order 2014-05-15 18:51:48 +02:00
baed4a52f8
Fix inline comment 2014-05-15 18:51:41 +02:00
307df91fcf
Use REALLOC macro for improved readability 2014-05-15 18:50:57 +02:00
a4026b63e6
Fix doxygen comment 2014-05-15 18:34:07 +02:00
80ccc24564
Update .gitignore 2014-05-15 18:33:53 +02:00
fd9d15c4ea
Add more user controls, draw faces as separate polygons
This also fixes drawing of open objects.
2014-05-15 18:33:43 +02:00
a25bc0ff4d
Fix clean target 2014-05-15 18:18:25 +02:00
8bfcd49686
Add more .obj files 2014-05-15 18:18:10 +02:00
6ceeff5a7b
First try of consistent half-edge struct test 2014-05-14 01:40:39 +02:00
1bd4bfa1b7
Fix face assignments 2014-05-13 23:28:47 +02:00
7650f83c36
Fix memory leak 2014-05-13 21:43:56 +02:00
c6e84bb7f5
Improve inline doc 2014-05-13 20:26:36 +02:00
bb1e4cb38d
Add example .obj file
This represents a cubus with one face missing, so the cubus
is open.
2014-05-13 20:23:02 +02:00
07a2827c2f
Improve inline comments 2014-05-13 20:16:33 +02:00
33408e5e46
Add is_null_vector() function 2014-05-13 20:09:32 +02:00
e4bad92195
Implement acceleration structure 2014-05-13 20:09:16 +02:00
b3b5c84d1c
Cosmetics 2014-05-13 14:05:10 +02:00
5b53950def
More error handling improvements 2014-05-13 14:05:02 +02:00
a1d3c3947e
Improve error handling
Basically be less fault tolerant. Added a lot of upper-case function
macros to use for fault-intolerant calls.
2014-05-13 13:47:13 +02:00
a7c3fe4f82
Improve doxygen comments 2014-05-13 00:53:12 +02:00
563b0a5814
Simplify condition 2014-05-12 23:38:27 +02:00
d408b37eab
Draw normals in red 2014-05-12 23:02:22 +02:00
fe2698470a
Improve normal calculation
Should now also work on more complex polygons with more than 3 adjacent
faces. Also allows us to get the face normals separately.
2014-05-12 23:02:10 +02:00
4dade4ff2c
Fix doxygen comments 2014-05-12 21:00:31 +02:00
e3496117ab
Cleanup 2014-05-12 20:59:34 +02:00
58d4eb474e
Improve inline comments 2014-05-12 20:55:16 +02:00
0fc3212f5a
Use fluorescent colors for the object 2014-05-12 20:55:02 +02:00
6f678ccfe6
Cleanup 2014-05-12 20:20:17 +02:00
da36cd20da
Implement vertex normals 2014-05-12 20:20:03 +02:00
146223a144
Allow rotating back and forth 2014-05-12 19:49:52 +02:00
366da0177c
Add set_null_vector() function
Set the vector to a null vector.
2014-05-12 19:49:23 +02:00
20d013c401
Improve error handling in copy_vector() 2014-05-12 19:49:01 +02:00
ce4032f0be
Use vector member in HE_vert struct 2014-05-12 19:48:46 +02:00