Commit Graph

308 Commits

Author SHA1 Message Date
211731af0c
ALGO: add isYmonotone function 2015-01-07 19:16:12 +01:00
2bc3aec80a
ALGO: fix spelling 2015-01-07 19:15:51 +01:00
013dfd054b
Implement vertex categorisation for Polygon Triangulation 2015-01-07 18:55:16 +01:00
4f5d7f15bf
Fix build
detProp2 isn't implemented yet, oops
2014-12-18 04:14:31 +01:00
f774a92dd6
TESTS: add MyPrelude tests 2014-12-18 03:53:27 +01:00
b1ac2aa223
TESTS: add inRangeProp6 2014-12-18 01:06:16 +01:00
ecce3cd9d6
TESTS: add more test cases 2014-12-18 00:47:51 +01:00
2b15585b41
VEC: improve readability 2014-12-18 00:33:24 +01:00
1545861e5b
VEC: use ViewPatterns for pattern matching on P2 2014-12-18 00:31:43 +01:00
3727ae620f
TESTS: add getAngleProp7 2014-12-17 23:21:48 +01:00
48fb68355b
TESTS: add some convenience types 2014-12-17 23:21:26 +01:00
90702e6469
TESTS: make getAngleProp6 more useful by testing commutative property 2014-12-17 22:27:29 +01:00
4ef3aa7f1f
TESTS: add more function documentation 2014-12-17 22:26:40 +01:00
396f92a921
TESTS: add more tests for scalarProd 2014-12-17 19:53:03 +01:00
1cf21ba03b
TESTS: simplify 2014-12-17 19:41:30 +01:00
38329a806b
VEC: move scalarMul from Test/Vector.hs to Algebra/Vector.hs 2014-12-17 19:41:15 +01:00
35e1366034
TESTS: add some tests for scalarProd 2014-12-17 19:37:28 +01:00
e0ddeef9ed
VEC: simplify scalarProd 2014-12-17 19:36:40 +01:00
d7366c7e27
TESTS: reorder arguments in getAngleProp6 2014-12-17 05:18:49 +01:00
ce418f33f2
TESTS: make inRangeProp5 more random 2014-12-17 05:15:03 +01:00
f68d4c2ba7
TESTS: initial implementation of a few test cases 2014-12-17 05:11:18 +01:00
2ccb52eb62
VEC: Fix the inRange function
It now takes a PROPER square, as in ((xmin, ymin), (xmax, ymax))
instead of ((xmin, xmax), (ymin, ymax)) and also works
with negative values.

Because the meaning of the arguments has changed, we also
had to fix all uses of it.
2014-12-17 03:35:33 +01:00
c33827b63e
DIAG: use newtype for DiagAlgo 2014-12-17 00:52:07 +01:00
d2b51b7ad7
VEC: simplify type signature of onPT 2014-12-14 18:02:09 +01:00
3d7f2c743a
PRELUDE: fix doc of tailInit 2014-12-14 18:01:42 +01:00
c940bfc534
PRELUDE: simplify 'first' 2014-12-14 18:01:13 +01:00
afe35829cd
VEC: use *** arrow to simplify 2014-12-13 04:05:28 +01:00
c6ca5fa7da
DIAG: add haddock comment 2014-12-07 20:30:51 +01:00
34ba3bbfa2
DIAG: fix plotter, rm moveTo if possible
Scaling the dimensions should now work better, including
scaled coordinate text and point thickness depending
on the diagram dimensions.
2014-12-07 20:09:48 +01:00
899e71ab03
DIAG: fix diagHeightOffset 2014-12-07 20:00:54 +01:00
3398c6d9e3
DIAG: rm polyLines from quadTree algorithm 2014-12-07 19:30:31 +01:00
f8fb61e80a
DIAG: consistently use [[PT]] for all Diags
Also simplify a few things like needless strokeTrail usage.
2014-12-07 18:55:49 +01:00
f16fe7738a
ALGO: rm empty 'where' in KDTree 2014-12-07 04:47:19 +01:00
8abe795add
DIAG: be more consistent about Diag constructor parameter naming 2014-12-07 04:41:45 +01:00
70a6dd1766
DIAG: dump the Object data type, it's useless 2014-12-07 04:33:45 +01:00
9c1121d941
DIAG: rm unused import 2014-12-04 03:28:57 +01:00
d2dc5dee02
DIAG: rm whiteRect function, it's only used once 2014-12-03 22:11:10 +01:00
a7774b69a4
Restructure Graphics/Diagram subdir, rename modules 2014-12-03 22:02:42 +01:00
3c1a34e4af
Merge VectorTypes.hs into Vector.hs 2014-12-03 21:41:00 +01:00
9d6af63b46
Move test objs into test_objs subdir 2014-12-03 21:30:21 +01:00
10bd72a86d
Rm unused PerformanceTest.hs 2014-12-03 21:27:55 +01:00
73e1673c63
Restructure Algorithms subdir and module names
No subdirs in Algorithms, just the module files
2014-12-03 21:26:35 +01:00
f1f3f20a26
DIAG: improve readability 2014-12-03 21:20:46 +01:00
9fca3ccaa9
Add HACK notes 2014-12-03 21:20:34 +01:00
0f0362322e
ALGO: rename QuadTree Zipper and rm Breadcrumbs type 2014-12-03 21:18:15 +01:00
4a0c9ff58d
DIAG: improve readability 2014-12-03 01:36:12 +01:00
5123abfd99
DIAG: rm Debug import 2014-12-03 01:35:55 +01:00
899afc7287
ALGO: fix runtime complexity in KDTree
The old code in fact increased the complexity to O(n^2), because
we applied 'elem' which is O(n) to every element of xs.

Instead we compare (in case of partitioning against Y) the y-value
of every element of xs with the y-value of the pivot which tells us
if x lies within ys.
2014-12-02 19:01:04 +01:00
a332f3f3c3
DIAG: add missing kdRange to algo 5 2014-12-02 19:01:01 +01:00
d5d7209039
DIAG: simplify plotter 2014-12-02 19:00:50 +01:00