]>
granicus.if.org Git - poly2tri-c/log
Barak Itkin [Sat, 15 Nov 2014 15:03:10 +0000 (17:03 +0200)]
Multiple fixes to allow usage with other compilers
1. Fix many signed/unsigned comparisons
2. Avoid having multiple C files with the same name
3. Add return statements after failing asserts, just to calm the compiler
Barak Itkin [Wed, 2 Apr 2014 23:53:24 +0000 (02:53 +0300)]
Fix some unreasonable indentation
awaw fumin [Wed, 2 Apr 2014 23:50:32 +0000 (02:50 +0300)]
cherry-pick the relevant parts of commit
0c92e87f97be from the GEGL copy of the library
[PATCH] seamless-close: Fix extra unref
awaw fumin [Wed, 2 Apr 2014 23:41:28 +0000 (02:41 +0300)]
cherry-pick the relevant parts of commit
dd3660fd4418 from the GEGL copy of
the library
[PATCH] operations: Fix memory leaks in seamless clone
The leaks detected and fixed herein were discovered using the
"Leaks" template in Apple's "Instruments" tool.
At least according to Instruments, there are completely no leaks anymore
after applying the fixes in this commit.
Barak Itkin [Sat, 15 Feb 2014 14:53:39 +0000 (16:53 +0200)]
Introduce code to import/export a mesh to the OFF format
Barak Itkin [Sat, 18 May 2013 07:37:29 +0000 (10:37 +0300)]
Add changes according to commit
26242d0aa7b8 in poly2tri (C++)
Barak Itkin [Sat, 18 May 2013 07:29:26 +0000 (10:29 +0300)]
Add changes according to commit
186e581d4152 in poly2tri (C++)
Barak Itkin [Mon, 6 Aug 2012 18:11:41 +0000 (21:11 +0300)]
Update the Doxygen documentation file
Barak Itkin [Sat, 4 Aug 2012 20:28:26 +0000 (23:28 +0300)]
Version bump towards the first public release!
Barak Itkin [Sat, 4 Aug 2012 20:26:47 +0000 (23:26 +0300)]
Add some standard project files (README, COPYING, INSTALL, etc.)
Barak Itkin [Sat, 4 Aug 2012 20:15:12 +0000 (23:15 +0300)]
Rewrite the main p2tc program to make it more useable
This change breaks compatibility with the old input file format, but the
conversion to the new should be rather straight-forward...
Barak Itkin [Sat, 4 Aug 2012 16:46:18 +0000 (19:46 +0300)]
Rename the main tester program from p2tc-test to p2tc
Barak Itkin [Sat, 4 Aug 2012 16:45:07 +0000 (19:45 +0300)]
Solve bugs related to removing primitives from their free functions
Barak Itkin [Sat, 4 Aug 2012 16:43:34 +0000 (19:43 +0300)]
Major refactor to the SVG rendering code
Barak Itkin [Sat, 4 Aug 2012 09:51:58 +0000 (12:51 +0300)]
Documentation updates for mesh rendering
Barak Itkin [Sat, 28 Jul 2012 19:25:06 +0000 (22:25 +0300)]
Fix a fatal error which caused evaluation of set element expressions twice!
This caused not only a performance penalty, but also a memory leak since in
some places the expression was p2tr_edge_ref (...)
Barak Itkin [Sat, 28 Jul 2012 14:07:02 +0000 (17:07 +0300)]
Rename P2trDelaunayTerminator.mesh to P2trDelaunayTerminator.cdt
Barak Itkin [Sat, 28 Jul 2012 13:03:38 +0000 (16:03 +0300)]
Add a bit of documentation to mesh object
Barak Itkin [Sat, 28 Jul 2012 13:03:14 +0000 (16:03 +0300)]
Major changes to the mesh rendering API
1. Output can now be done in multiple pixel data types (float, guint8, ...)
2. Document better the rendering API and configuration
3. Respect the CPP (channels per pixel) parameter and document it
4. Update the main program to reflect the changes in the API
Also: add support for holes in the main program (based on an anonymous code
contribution)
Barak Itkin [Sat, 28 Jul 2012 12:55:09 +0000 (15:55 +0300)]
Make flip-fixing a bit more efficient by trying to "give up" eralier
Barak Itkin [Sat, 28 Jul 2012 12:54:23 +0000 (15:54 +0300)]
Fix incorrect unref order on removing a triangle (caused memory errors)
Barak Itkin [Fri, 20 Jul 2012 21:31:28 +0000 (00:31 +0300)]
Add lots of documentation!
Barak Itkin [Fri, 13 Jul 2012 14:30:50 +0000 (17:30 +0300)]
Make sure hole edges are marked as constrained!
Barak Itkin [Sat, 7 Jul 2012 08:37:22 +0000 (11:37 +0300)]
Configure usage of debugging functions and symbols in the configure script
This commit drops by default the option to validate properties of the CDT
during the refinement process, and *increases the speed in orders of
magnitude* for complex inputs
Barak Itkin [Fri, 6 Jul 2012 22:32:31 +0000 (01:32 +0300)]
Fix several bugs regarding references to objects
Barak Itkin [Fri, 6 Jul 2012 22:30:42 +0000 (01:30 +0300)]
Fix a wrong no-mesh condition for adding edges/triangles
Barak Itkin [Fri, 6 Jul 2012 21:58:03 +0000 (00:58 +0300)]
Test whether a new point would encroach segments by inserting it!
This replaces the old way which didn't work correctly, which was based
on visibility checks inside the input PSLG of the CDT
Barak Itkin [Fri, 6 Jul 2012 21:37:59 +0000 (00:37 +0300)]
Add the ability to undo actions on meshes
Barak Itkin [Fri, 6 Jul 2012 21:34:37 +0000 (00:34 +0300)]
Add the basic foundations for recording changes in meshes
Barak Itkin [Fri, 6 Jul 2012 20:57:59 +0000 (23:57 +0300)]
Add functions to create and remove virtual edges and triangles
Barak Itkin [Fri, 6 Jul 2012 20:56:33 +0000 (23:56 +0300)]
Allow geometric primitives to be added to meshes after their creation
Barak Itkin [Sat, 30 Jun 2012 20:34:09 +0000 (23:34 +0300)]
Rename FlipSet to VEdgeSet and move it to the VEdge class
The reason for this is that we will soon be using this to describe undo
action list, and for that we care about a set of virtual edges without
directions. This adds another use for that structure, so it shouldn't
be called a FlipSet if we are using it in other places.
Barak Itkin [Sat, 30 Jun 2012 18:42:36 +0000 (21:42 +0300)]
Use virtual triangles for the delaunay terminator
Barak Itkin [Sat, 30 Jun 2012 18:42:18 +0000 (21:42 +0300)]
Lots of clean up to the flip-fix code, including using virtual edges
Barak Itkin [Sat, 30 Jun 2012 14:45:38 +0000 (17:45 +0300)]
Add a virtual triangle struct to represent a triangle that may exist
Barak Itkin [Sat, 30 Jun 2012 13:04:32 +0000 (16:04 +0300)]
Fix several reference counting issues
Barak Itkin [Sat, 30 Jun 2012 12:50:27 +0000 (15:50 +0300)]
Fixed a wrong behavior of the cluster finding function
Barak Itkin [Sat, 30 Jun 2012 12:49:53 +0000 (15:49 +0300)]
Fixed a wrong assertion in the visibility checking
Barak Itkin [Sat, 30 Jun 2012 12:49:16 +0000 (15:49 +0300)]
Critical: Fix a wrong usage of the g_list_cyclic* functions
Barak Itkin [Sat, 23 Jun 2012 20:32:46 +0000 (23:32 +0300)]
Add a virtual edge struct to represent an edge that may exist
Barak Itkin [Sat, 23 Jun 2012 13:08:59 +0000 (16:08 +0300)]
Several API changes for refining meshes
1. Don't show "DelaunayTerminator" outside of the library, since if we will
change an implementation it would become irrelevant. Show "Refiner" instead
2. Add a progress callback for the refining process
Barak Itkin [Sat, 16 Jun 2012 15:33:55 +0000 (18:33 +0300)]
Make sure that visibility isn't considered when going outside of the domain
Barak Itkin [Sat, 16 Jun 2012 15:24:08 +0000 (18:24 +0300)]
1. Points were accidentally given in CW order (instead of CCW) order to the in_circle function. This caused lots of trouble!
2. Fix the implementation of Lawson's legalization
Barak Itkin [Sat, 16 Jun 2012 09:14:14 +0000 (09:14 +0000)]
Implement a different version of Lawson's legalization algorithm
Barak Itkin [Sat, 9 Jun 2012 16:03:26 +0000 (19:03 +0300)]
Fix a fatal error in the cluster object, and calm the compiler
Barak Itkin [Sun, 3 Jun 2012 19:36:03 +0000 (22:36 +0300)]
Add changes according to commit
acf81f1f1764 in poly2tri (C++)
Barak Itkin [Sun, 3 Jun 2012 19:15:01 +0000 (22:15 +0300)]
Add changes according to commit
44e02186c185 in poly2tri (C++)
Barak Itkin [Sun, 3 Jun 2012 19:09:46 +0000 (22:09 +0300)]
Add changes according to commit
4f9c0ace716b in poly2tri (C++)
Barak Itkin [Sat, 2 Jun 2012 12:29:47 +0000 (15:29 +0300)]
Fix a compilation error when using automake 1.12
Barak Itkin [Sat, 2 Jun 2012 09:54:01 +0000 (12:54 +0300)]
Add a missing refrence to stdio.h
Barak Itkin [Sat, 2 Jun 2012 09:52:42 +0000 (12:52 +0300)]
Fix the header install path to match commit 788b95
Barak Itkin [Sat, 2 Jun 2012 09:33:37 +0000 (12:33 +0300)]
Move the code of the library itself inside it's own folder (poly2tri-c)
Barak Itkin [Sat, 2 Jun 2012 09:08:56 +0000 (12:08 +0300)]
Nest installed headers one level deeper (inside a poly2tri-c dir)
Barak Itkin [Sat, 2 Jun 2012 09:08:24 +0000 (12:08 +0300)]
Allow freeing a P2trCDT object with freeing it's P2trMesh object
Barak Itkin [Fri, 1 Jun 2012 18:28:35 +0000 (21:28 +0300)]
Install header files when running make install
Barak Itkin [Fri, 1 Jun 2012 17:45:08 +0000 (20:45 +0300)]
Update the copyright headers in all the code files
Barak Itkin [Fri, 1 Jun 2012 17:21:30 +0000 (20:21 +0300)]
Convert line endings to unix format (\n instead of \r\n)
Barak Itkin [Fri, 1 Jun 2012 17:18:38 +0000 (20:18 +0300)]
Fix bad execute permissions for code files
Barak Itkin [Fri, 1 Jun 2012 15:03:39 +0000 (18:03 +0300)]
Add version numbering, pkg-config support and combine all output libs
Barak Itkin [Sun, 27 May 2012 19:15:41 +0000 (22:15 +0300)]
Fix another memory leak in the mesh rendering code
Barak Itkin [Sun, 27 May 2012 19:08:28 +0000 (22:08 +0300)]
Fix more memory leaks
Barak Itkin [Sun, 27 May 2012 18:10:39 +0000 (21:10 +0300)]
Fix a memory leak in the P2trCDT constructor
Barak Itkin [Sun, 27 May 2012 15:28:17 +0000 (18:28 +0300)]
Add more control to the main test program
Barak Itkin [Sun, 27 May 2012 15:25:08 +0000 (18:25 +0300)]
Many reference-count related fixes, especially to P2trEdge objects and to the clear method of the P2trMesh object
Barak Itkin [Sun, 27 May 2012 10:27:44 +0000 (13:27 +0300)]
Remember to unref mesh objects in several places
Barak Itkin [Sun, 27 May 2012 10:20:21 +0000 (13:20 +0300)]
Add missing calls to free results in the main program
Barak Itkin [Sun, 27 May 2012 10:19:10 +0000 (13:19 +0300)]
Add a missing call to free a pointer array in P2tSweepContext
Barak Itkin [Sun, 27 May 2012 09:54:35 +0000 (12:54 +0300)]
Small fixes to the memory management of P2trDelaunayTerminator objects
Barak Itkin [Sun, 27 May 2012 09:49:02 +0000 (12:49 +0300)]
Free the GOptionContext object in the main program
Barak Itkin [Sun, 27 May 2012 09:46:13 +0000 (12:46 +0300)]
Small fixes to the memory management of P2trCDT objects
Barak Itkin [Sun, 27 May 2012 09:45:44 +0000 (12:45 +0300)]
Remove an unnecessary check for AR from configure.ac
Barak Itkin [Sat, 19 May 2012 11:32:50 +0000 (14:32 +0300)]
Fix a critical bug in p2tr_math_orient2d
Barak Itkin [Sat, 19 May 2012 10:26:54 +0000 (13:26 +0300)]
Fix the main program - no need to free stack-allocated space
Barak Itkin [Sat, 19 May 2012 10:21:39 +0000 (13:21 +0300)]
Fix a bug in delaunay-terminator.c (comparing removed triangles)
Also, add debugging calls in several parts of the code
Barak Itkin [Sat, 19 May 2012 10:06:26 +0000 (13:06 +0300)]
Fix several bugs in p2tr_mesh_find_point_local2
Barak Itkin [Sat, 19 May 2012 10:02:58 +0000 (13:02 +0300)]
Fix a fatal bug in p2tr_cdt_insert_point_into_triangle
Barak Itkin [Fri, 18 May 2012 16:47:30 +0000 (19:47 +0300)]
Add a bit of documentation to the CDT functions
Barak Itkin [Fri, 18 May 2012 16:16:20 +0000 (19:16 +0300)]
Make functions on point/edge/triangle/mesh return reffed objects
Barak Itkin [Fri, 18 May 2012 13:40:19 +0000 (16:40 +0300)]
1. Fix a bug in p2tr_cdt_new (new point was created not through a mesh)
2. Add debugging function to find removed edges/triangles in a CDT
Barak Itkin [Fri, 18 May 2012 13:37:38 +0000 (16:37 +0300)]
Add both edges to a mesh (self and mirror), and allow new points to be added to a mesh by two-coordinates
Barak Itkin [Fri, 18 May 2012 13:36:03 +0000 (16:36 +0300)]
Fix the TolerantIsPowerOfTwoLength function
Barak Itkin [Fri, 18 May 2012 13:30:39 +0000 (16:30 +0300)]
Fix the configure script to work when the math functions are built-in
Barak Itkin [Sat, 12 May 2012 20:44:23 +0000 (23:44 +0300)]
1. Fix a missing call to triangulate in the main test program
2. Fix the free function of the edge class
Barak Itkin [Sat, 12 May 2012 20:10:54 +0000 (23:10 +0300)]
1. Make the compiler strict with ANSI C
2. Fix remaining code to compile with ANSI C
3. Fix a wrong call in the main test program that created a (0,0) point
Barak Itkin [Sat, 12 May 2012 19:26:55 +0000 (22:26 +0300)]
Fix the cocentric shell split point algorithm to be more accurate and make the refine library compile under ANSI C
Barak Itkin [Sat, 12 May 2012 18:02:55 +0000 (21:02 +0300)]
Make the C port of the original poly2tri library ANSI C compatiable
Michael Muré [Sun, 6 May 2012 14:47:07 +0000 (23:47 +0900)]
update .gitignore
Michael Muré [Sun, 6 May 2012 14:46:43 +0000 (23:46 +0900)]
fix hardcoded path for doxygen
Michael Muré [Sun, 6 May 2012 14:35:39 +0000 (23:35 +0900)]
move the m4macros to the more standart and needed m4 directory
Michael Muré [Sun, 6 May 2012 14:30:29 +0000 (23:30 +0900)]
add a basic autogen.sh
Michael Muré [Sun, 6 May 2012 14:29:59 +0000 (23:29 +0900)]
some autotools foo to fix compilation on linux
Barak Itkin [Sat, 5 May 2012 14:32:37 +0000 (17:32 +0300)]
Fix some small compilation errors
Barak Itkin [Sat, 5 May 2012 14:32:17 +0000 (17:32 +0300)]
Use libtool to build and configure libraries
Barak Itkin [Sat, 5 May 2012 13:10:35 +0000 (16:10 +0300)]
Various small changes to make the test program compile
Barak Itkin [Sat, 5 May 2012 09:54:40 +0000 (12:54 +0300)]
Add a basic build system using GNU autotools
Barak Itkin [Fri, 4 May 2012 20:25:53 +0000 (23:25 +0300)]
Fix the rendering code to use the library API
Barak Itkin [Fri, 4 May 2012 20:23:44 +0000 (23:23 +0300)]
API changes to avoid computing uv coordinates twice
Barak Itkin [Fri, 27 Apr 2012 17:04:49 +0000 (20:04 +0300)]
Commit the code for the Delaunay Terminator Algorithm
Barak Itkin [Fri, 27 Apr 2012 14:30:40 +0000 (17:30 +0300)]
Add edge cluster computation support
Barak Itkin [Fri, 27 Apr 2012 13:35:14 +0000 (16:35 +0300)]
Add the necessary predicates for the refinement algorithm