hasufell
fbb0d2963c
CABAL: cleanup dependencies
2015-02-10 04:17:04 +01:00
hasufell
6a6870b1d3
HALFEDGE: improve pseudo-code
2015-02-10 04:10:14 +01:00
hasufell
c2ffde8712
HALFEDGE: fix module doc
2015-02-09 18:46:39 +01:00
hasufell
38a1e4d7fb
HALFEDGE: improve readability
2015-02-09 18:36:43 +01:00
hasufell
84d2e38d55
HALFEDGE: add pseudo-code for 'indirectToDirect'
2015-02-09 18:29:40 +01:00
hasufell
d845cc0691
HALFEDGE: make 'indirectToDirect' a safe function
...
We had to add NoFace/NoEdge/NoVert constructors to our half-edge
data structures, because using "Maybe HeEdge a" as the result value
of 'indirectToDirect' causes an infinite recursion, since the whole
data structure (which is cyclic and infinite) has to be evaluated
in order to know which constructor to use.
Unfortunately this makes the code quite hard to read.
TODO: add pseudo-code
2015-02-09 17:58:33 +01:00
hasufell
57476d2986
HALFEDGE: use Data.IntMap instead of Array
2015-02-09 16:14:01 +01:00
hasufell
d37624f2d1
HALFEDGE: optimize buildHeEdgeFromStr
...
It's faster this way than using buildHeEdge.
2015-02-09 16:12:19 +01:00
hasufell
c04ba4f803
HALFEDGE: fix haddock comment
2015-02-04 02:02:58 +01:00
hasufell
97f72dc58d
Update .gitignore
2015-02-04 00:56:32 +01:00
hasufell
351e47fa48
Add test obj for HalfEdge data structure
2015-02-04 00:55:53 +01:00
hasufell
b5ecd16a2e
Revert "Remove almost all 'type' usage to make types more transparent"
...
This reverts commit 5120a44d0f
.
Conflicts:
Parser/Meshparser.hs
2015-02-04 00:51:03 +01:00
hasufell
d6174a975c
CABAL: more lax dependencies
2015-02-04 00:47:46 +01:00
hasufell
c94a92739d
HALFEDGE: initial implementation for half-edge data structures
...
See http://www.flipcode.com/archives/The_Half-Edge_Data_Structure.shtml
2015-02-04 00:47:46 +01:00
hasufell
44fee35926
PARSER: improve function names
2015-02-04 00:47:46 +01:00
hasufell
a33b451740
PARSER: improve modularity
2015-02-04 00:46:48 +01:00
hasufell
df4a4c2a27
PARSER: export the whole module
2015-02-04 00:46:47 +01:00
hasufell
5120a44d0f
Remove almost all 'type' usage to make types more transparent
2015-01-14 18:17:35 +01:00
hasufell
1c131825ab
ALGO: rm unused testArr
2015-01-14 17:50:20 +01:00
hasufell
eb1142b52f
ALGO: rm non-triangles and duplicates
2015-01-13 01:05:02 +01:00
hasufell
534284bbe0
ALGO: fix comment
2015-01-12 22:44:23 +01:00
hasufell
dde5614ae3
ALGO: rm confusing comment
2015-01-12 22:44:04 +01:00
hasufell
41bc7e7744
ALGO: simplify
2015-01-12 22:40:39 +01:00
hasufell
c8541f59b4
ALGO: use 'Segment' instead of '(PT, PT)'
2015-01-12 22:38:10 +01:00
hasufell
8a248adc41
ALGO: add type signatures
2015-01-12 22:37:10 +01:00
hasufell
ba3cfb879e
ALGO: simplify monotoneDiagonals
2015-01-12 22:27:43 +01:00
hasufell
f383cc65b2
ALGO: rewrite monotonePartitioning to avoid polygon duplicates
2015-01-12 22:27:17 +01:00
hasufell
3a1361b463
ALGO: fix documentation
2015-01-09 04:08:19 +01:00
hasufell
70e6ada121
DIAG: improve style
2015-01-09 04:05:43 +01:00
hasufell
d0e155d7c1
PARSER: simplify
2015-01-09 04:05:04 +01:00
hasufell
8058a43ee4
DIAG: draw the monotone, triangled polygon
2015-01-09 04:04:23 +01:00
hasufell
9917a7efd3
POLYGON: improve documentation
2015-01-09 04:01:43 +01:00
hasufell
903ba85f9f
ALGO: improve documentation
2015-01-09 03:58:24 +01:00
hasufell
54284193cd
ALGO: improve naming of functions
2015-01-09 03:58:05 +01:00
hasufell
825dd9baa9
ALGO: rm redundant brackets
2015-01-09 03:24:44 +01:00
hasufell
521f799c49
Cleanup imports and language pragmas
2015-01-09 03:24:31 +01:00
hasufell
f53207b48c
ALGO: add partitioning of polygons for triangulation
2015-01-09 03:24:09 +01:00
hasufell
c96474e6fd
ALGO: use isInsidePoly
2015-01-09 03:20:13 +01:00
hasufell
5b092715aa
Add another test obj for Polygon Triangulation
2015-01-08 01:49:26 +01:00
hasufell
25abe39a18
DIAG: rm obsolete import
2015-01-08 01:45:14 +01:00
hasufell
6b873e9e5c
ALGO: try to implement y-monotonization
2015-01-08 01:44:47 +01:00
hasufell
b6b9cead2a
Add test objs for Polygon Triangulation algorithm
2015-01-08 01:42:07 +01:00
hasufell
edd4ec38d7
POLYGON: add polygon module
2015-01-08 01:41:14 +01:00
hasufell
ddb97aa8c7
VEC: add intersectSeg''
2015-01-08 01:39:39 +01:00
hasufell
4385ef127b
VEC: add sortedYX
2015-01-08 01:39:23 +01:00
hasufell
ede0d6eccf
PRELUDE: fix spelling
2015-01-08 01:38:46 +01:00
hasufell
79175d7fa0
PRELUSE: add sortLexSwapped
2015-01-08 01:38:32 +01:00
hasufell
1dd4dd6f59
PRELUDE add shiftM'
2015-01-08 01:38:18 +01:00
hasufell
550957da13
ALGO: rm junk
2015-01-08 01:37:49 +01:00
hasufell
211731af0c
ALGO: add isYmonotone function
2015-01-07 19:16:12 +01:00