Commit Graph

1009 Commits

Author SHA1 Message Date
Jan Möbius
b7aabbd912 Fixed some warnings 2016-10-24 14:01:06 +02:00
Max Lyon
523e3e10f4 make all negative handles invalid, not just -1 2016-10-21 09:21:18 +02:00
David Bommes
e11f553c92 added missing ifdef for debug 2016-10-17 17:43:48 +02:00
Jan Möbius
c70cdc215d Bumped development version to 7.0 2016-10-06 12:44:35 +02:00
Max Limper
a6da330b41 resolved conflict 2016-10-02 11:55:23 +02:00
Jan Möbius
29ba85a7f0 Merge branch 'OBJ-loader-check-ranges' into 'master'
range check for vertex colors and normals in OBJ loader

This merge request adds explicit range checks and error reporting for the reading of colors and normals. The code is copied from texture coordinates, where a similar check already existed.

See merge request !92
2016-10-02 09:22:13 +02:00
Max Limper
782adb7b0a fixed handling of negative indices in OBJ loader 2016-10-01 20:31:16 +02:00
Max Limper
c577810d47 range check for vertex colors and normals in OBJ loader 2016-10-01 19:43:46 +02:00
Max Limper
d20d6a83e4 Fixed comment in OBJ loader 2016-10-01 18:21:18 +02:00
Jan Möbius
4c35d544f4 Merge branch 'obj-fix-wrong-indices' into 'master'
Fixed broken indices for some cases of OBJ parsing by using two passes

(Continuing fixing / discussion from https://graphics.rwth-aachen.de:9000/OpenMesh/OpenMesh/merge_requests/51)

This merge request is fixing an issue that came up as a follow-up of the following merge request:
 https://graphics.rwth-aachen.de:9000/OpenMesh/OpenMesh/merge_requests/51

The problem it fixes occurs for some kinds of OBJ data, where vertices and face data are stored interleaved and, at the same time, the mesh contains some non-manifold geometry.  As non-manifold geometry triggers the on-the-fly creation of new vertices during parsing, the indices from the OBJ file do not match any more and the result gets messed up.

The straightforward solution applied on this branch is to parse to whole OBJ file in two passes, first the vertices and then the material data and faces. This way, possible extra vertices will always be added to the back, not interfering with indices from the OBJ file

I tested the performance on a 1.1 GB OBJ file. The loading time on my machine increased from ~59 seconds to ~65 seconds, so I believe the performance overhead could probably be considered acceptable.

Looking forward to your feedback!


See merge request !84
2016-09-28 12:17:21 +02:00
Hans-Christian Ebke
dafbcf1480 Updated documentation of BaseKernel's property functions to hint at PropertyManager. 2016-09-22 10:14:30 +02:00
Max Limper
6433ed2ae3 gcc 4.7 compile fix 2016-09-13 18:52:39 +02:00
Hans-Christian Ebke
f08f96eb71 Fixed constness fail in PropertyManager::set_range(). 2016-09-12 17:06:56 +02:00
Hans-Christian Ebke
ab51547d92 PropertyManager: Add initializing createIfNotExists() versions. 2016-09-12 16:58:03 +02:00
Hans-Christian Ebke
a705d57bd0 PropertyManager: Add C++11 range-based set_range() version. 2016-09-12 16:57:33 +02:00
Max Limper
f53429fdeb Fixed broken indices for some cases of OBJ parsing by using two passes 2016-08-30 17:25:48 +02:00
Martin Schultz
2e6820a16b added binary stl file size check after ascii check 2016-08-16 15:06:19 +02:00
Martin Schultz
cc37345556 added include for cstring which should fix compile errors with c++11 and clang 2016-08-15 17:27:55 +02:00
Martin Schultz
fc04bac1a1 made the stl reader check for ascii file keyword instead of computing binary size 2016-08-15 17:14:25 +02:00
xan
6f811b5bd9 No Core/src include directory 2016-08-14 09:25:03 +02:00
xan
8445bad3c3 Fix undefined MSVC macro warning 2016-08-14 09:21:31 +02:00
Janis Born
5ee25a5af0 fix CirculatorT type-pun warning on GCC6
(fixes #28)
2016-08-11 10:22:44 +02:00
David Bommes
b82e329c21 changed incorrect class into struct 2016-08-03 10:07:28 +02:00
Jan Möbius
c9510459ca Bump version to 6.3 development 2016-07-11 16:23:12 +02:00
Jan Möbius
6f862cad6c Merge branch 'hash_functions' into 'master'
Hash functions



See merge request !75
2016-07-11 10:24:44 +02:00
Jan Möbius
59c0b6f16b Next try 2016-06-30 14:05:25 +02:00
Jan Möbius
085e711856 Fixed VS2015 Update 3 fix 2016-06-30 13:56:54 +02:00
Jan Möbius
755f06bf11 Fixed VS2015 Update 3 build error. (Thanks to Jeongkyu Kim for the patch) 2016-06-30 13:53:23 +02:00
Martin Schultz
80192d945b added code to write faceTexCoords to obj writer.
fixes #25
2016-06-29 16:58:59 +02:00
xan
ecdd59a82a Split openmeshcore static/shared MinGW compilation
As with ms compilers, the shared/static compilation depends on export macros.
Anyway this is inconsistent with the behavior for openmeshtools library.

Why did you add this ?
2016-06-15 21:19:22 +02:00
Andreas Fabri
58b9e4085a - ADD a macro OM_HAS_HASH in the config file.
- Based on the macro provide partial specializations for std::hash<>
- for vertex,halfede,edge, and face handles.
- Add a free function hash_value(BaseHandle) for boost::unordered_set/map
2016-06-08 10:29:18 +02:00
Jan Möbius
8a26487a69 Added hash functions 2016-06-07 12:56:27 +02:00
Jan Möbius
46aed2c4f4 Bump version number for 6.2 development cycle 2016-05-31 12:56:24 +02:00
Jan Möbius
16a6a6b607 Merge branch 'MINGW_changes' into 'master'
Mingw changes

TODO: Test 

See merge request !68
2016-05-31 12:23:33 +02:00
Jan Möbius
984239ade2 Merge branch 'PLY_READER_handle_rn_newlines' into 'master'
Handle nr newlines



See merge request !71
2016-05-30 16:31:05 +02:00
Jan Möbius
1ab77e166b Merge branch 'Throw_error_when_no_readers_are_available' into 'master'
Throw error when no readers are available



See merge request !69
2016-05-30 16:27:53 +02:00
Jan Möbius
2822bb61a3 Add plain stl extension to stlwriter 2016-05-30 16:19:55 +02:00
Jan Möbius
b4cea6008d Handle nr newlines 2016-05-30 16:12:38 +02:00
Jan Möbius
5903657e6a Throw error when no readers are available 2016-05-30 14:07:11 +02:00
Jan Möbius
b2f3d5eac4 Several changes to make Mingw happy 2016-05-30 14:00:43 +02:00
Martin Schultz
4b8f1bf667 fixes MSVC Community 2015 ICE
The default constructors are now used as template specializations by
postponing them below the template definition
2016-05-24 15:06:32 +02:00
Janis Born
bb024a6846 move documentation of PropertyManager factory functions to PropertyManager Doxygen page 2016-05-23 15:04:28 +02:00
Jan Möbius
bca37d9653 Fixed binary reader errors in ply reader. (Thanks to Michael Kremer for the patch). 2016-05-17 13:15:29 +02:00
Jan Möbius
5cebbd146f Some fixes for min gw (Thanks to Xan for the patch) 2016-05-09 11:15:25 +02:00
Max Limper
c7b64addec Copy per-halfedge and per-face properties to new elments during triangulation 2016-05-03 16:02:59 +02:00
Jan Möbius
ffbab0a3aa Bumped version to OpenMesh 6.1 2016-04-29 15:26:25 +02:00
Jan Möbius
1c85080a1e - Updated changelog
- Always emit warning
2016-04-15 15:57:07 +02:00
Isaak Lim
6c6ce56c3c don't emit an error message for every face that could not be added (due to complex elements) 2016-04-15 14:01:11 +02:00
Jan Möbius
17217c405d Merge branch 'fixDoubleSwap' into 'master'
Fix double swap



See merge request !54
2016-04-14 15:42:24 +02:00
Jan Möbius
2496fa8363 Merge branch 'property-manager-factories' into 'master'
add factory functions for creating PropertyManagers without restating the mesh type in C++11



See merge request !53
2016-04-14 15:11:03 +02:00