Commit Graph

291 Commits

Author SHA1 Message Date
Pierre Dejoue
de70670221 Test polygons from issue #10 2022-05-02 09:35:51 +02:00
Jan Niklas Hasse
3380f5c805 Apply even more clang-tidy fixes 2022-03-25 10:49:45 +01:00
Jan Niklas Hasse
dcdb7442a4 Apply several clang-tidy fixes 2022-03-25 09:56:30 +01:00
Jan Niklas Hasse
529470f1d0
Merge pull request #40 from roystgnr/no_collinearity_tolerance
Disable collinearity tolerance
2022-03-23 21:34:31 +01:00
Roy Stogner
30279f701c Use std::fpclassify for double==0 tests 2022-03-16 08:35:34 -05:00
Roy Stogner
19ec7c78a1 ConcaveBoundaryTest unit test
This is from the case I originally got to trigger the problem.  We could
probably boil it down to something smaller (by temporarily reverting the
Orient2d change to make sure the failure still occurs) but this doesn't
seem too bloated for a unit test as-is.
2022-03-15 20:37:14 -05:00
Roy Stogner
cc1e657107 NarrowQuadTest triangulation succeeds now 2022-03-15 20:36:53 -05:00
Roy Stogner
57b3039c05 Disable tolerance in Orient2d collinearity test
This fixes failures for me when trying to triangulate
concave-by-less-than-epsilon boundary polylines.
2022-03-15 19:16:40 -05:00
Jan Niklas Hasse
8b5fa15800
Merge pull request #34 from roystgnr/instructions_update
File naming, build/run instruction updates
2021-12-02 15:46:35 +01:00
Roy Stogner
4581f1fee8 Consistent executable path in README.md
These commands run (from the source directory; would commands as run
from the build directory be clearer?) for me as-is (after the testbed
executable has been built) now.
2021-12-01 17:38:53 -06:00
Roy Stogner
4fd0287f04 Fix, clarify build instructions
If we're in a build subdirectory, we need `..` to tell cmake where to
find the source directory.
2021-12-01 17:38:23 -06:00
Roy Stogner
cbc025a649 Note unit test dependencies
I already had most of Boost installed, but not enough.
2021-12-01 17:37:18 -06:00
Roy Stogner
ebf0c4d987 Rename testbed/testbed to testbed/p2t
That's what README.md has been referencing as the executable name, and
it's more meaningful.
2021-12-01 17:36:31 -06:00
Jan Niklas Hasse
136fa7acfc Move Point ctor into .cc file to hide shadowing from users
See #15 and #31.
2021-08-21 17:28:47 +02:00
Jan Niklas Hasse
7f0487a811
Merge pull request #29 from piotrkania-here/sanity_checks
Additional sanity checks for triangulate operation
2021-05-18 10:24:21 +02:00
Piotr Kania
905a765c0f Additional sanity checks for triangulate operation 2021-04-29 11:51:05 +02:00
Jan Niklas Hasse
4a323bf6d5
Merge pull request #28 from piotrkania-here/check_ptr
Check pointer before dereferencing it
2021-04-26 17:02:23 +02:00
Piotr Kania
af36bac4db Check pointer before dereferencing it 2021-04-26 10:25:12 +02:00
Jan Niklas Hasse
444ee57d87
Merge pull request #27 from piotrkania-here/fixed_point_operator
Fixed inequality operator for Point struct
2021-04-24 11:11:52 +02:00
Piotr Kania
b4534b3f97 Fixed inequality operator for Point struct 2021-04-23 14:32:39 +02:00
Jan Niklas Hasse
d949f3cd6f Add namespace comment 2021-01-16 18:43:00 +01:00
Jan Niklas Hasse
8b8e6cb249 Ignore .cache/ 2020-12-17 23:13:20 +01:00
Jan Niklas Hasse
4515f65f5b
Merge pull request #23 from pierre-dejoue/master
Improvement to the testbed application
2020-11-20 11:38:31 +01:00
Pierre Dejoue
8388a74a9f Improve testbed data file format
Data file format now has optional sections for holes polylines
and Steiner points identified with tokens "HOLE" and "STEINER".

Rework the data file dude.dat accordingly.

Add data file steiner.dat for an example with Steiner points.
2020-11-20 11:37:52 +01:00
Pierre Dejoue
cf5f95d4e9 Fix compilation warnings in testbed 2020-11-11 22:51:05 +01:00
Jan Niklas Hasse
83680d96bb Remove Waf build system, fix #14 2020-11-06 22:37:50 +00:00
Jan Niklas Hasse
e9938d9c68
Merge pull request #22 from pierre-dejoue/master
Add documentation and code patches for maintenability
2020-10-26 20:18:51 +00:00
Pierre Dejoue
718d687bae Add references section to README
The flipscan picture by Thomas Ahlen was found on those pages:
https://blackflux.wordpress.com/2014/03/01/meshing-in-voxel-engines-part-2/
https://groups.google.com/g/poly2tri/c/LNfxMtVyhqs
2020-10-26 20:58:49 +01:00
Pierre Dejoue
1054475eeb Triangle::NeighborAcross to return a pointer
Same as Triangle::NeighborCW and Triangle::NeighborCCW
2020-10-26 20:58:23 +01:00
Pierre Dejoue
35b2fa916a Patch inversion of head and tail in the advancing front initialization
No functional impact, the code is equivalent. We just assign
head_ to af_head_ and tail_ to af_tail_ as one would expect.
2020-10-26 12:07:45 +01:00
Pierre Dejoue
5aa0c22365 Add headers in project files generated by cmake 2020-10-26 12:07:44 +01:00
Pierre Dejoue
c480777a5b Update README for cmake 2020-10-26 12:07:21 +01:00
Jan Niklas Hasse
c4404a73fb Avoid redefinition of BOOST_TEST_DYN_LINK 2020-10-25 20:53:39 +01:00
Jan Niklas Hasse
6febaeda1a Add debug configurations for VSCode 2020-10-19 18:27:52 +02:00
Jan Niklas Hasse
a3a6456586 Add namespace comment for clang-tidy 2020-10-19 18:27:21 +02:00
Jan Niklas Hasse
f6ca87a6bf Add .clang-format 2020-10-19 18:24:46 +02:00
Jan Niklas Hasse
f91fcd9f81
Merge pull request #20 from pierre-dejoue/master
Add CMake files for the unit tests and the testbed app
2020-08-27 20:09:59 +02:00
Pierre Dejoue
05546087fb Add CMake files for the testbed 2020-08-27 19:16:21 +02:00
Pierre Dejoue
7125fdb13b Add CMake files for the unit tests
- Building unit tests is optional, disabled by default to prevent
  the library clients from pulling the dependency on boost
- Add the unit tests to the Github Actions.
- Use boost::filesystem to manipulate paths for better portability
2020-08-27 19:16:17 +02:00
Jan Niklas Hasse
a269fb4743
Merge pull request #19 from pierre-dejoue/master
Add one exception case in Triangle::NeighborAcross
2020-08-06 23:54:23 +02:00
Pierre Dejoue
2c6bec64c0 Throw in Triangle::NeighborAcross in case of null pointer
Add an example quad for which the exception is throwni in the tests
2020-08-06 19:36:59 +02:00
Pierre Dejoue
06b0f14b29 Actually throw exceptions 2020-08-06 19:36:50 +02:00
Pierre Dejoue
7f8c4c5e4c Rename local index for readability 2020-08-06 19:36:50 +02:00
Pierre Dejoue
3e583f5eeb Fix linux build action 2020-08-06 19:36:50 +02:00
Jan Niklas Hasse
6c184d10b4 Use nullptr instead of NULL or 0 2020-06-14 20:14:58 +02:00
Jan Niklas Hasse
f5f9d33ea9 Add simple Doxyfile 2020-06-04 22:40:09 +02:00
Jan Niklas Hasse
f16f016ad3 Remove Azure Pipelines config 2020-05-05 13:31:21 +02:00
Jan Niklas Hasse
722ddf7235
Add GitHub Actions configuration (#16) 2020-05-05 13:29:33 +02:00
Martin Dobias
e66d045060 Fix #11 - regression causing crash when abs(p1.y - p2.y) < 1e10 (#12)
This reverts commit e0ba327ed8.

While the orignal commit silences a compiler warning, it introduces incorrect
behavior in Edge constructor that causes crash later during triangulation.

See #11 for an example of a simple polygon that would cause crash
2020-01-20 10:19:20 +01:00
Jan Niklas Hasse
e6e63dd29e Update waf to 2.0.19 2019-11-30 14:03:43 +01:00