Jeff Epler
2bb91cceeb
improve documentation
...
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:13:42 -05:00
Jeff Epler
b209a5bd09
avoid winding-rule calls via function pointer
...
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:13:42 -05:00
Jeff Epler
386d98d587
additional point operators
...
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:12:58 -05:00
Jeff Epler
5167ba3dd7
simplify the way the value is returned
...
.. no need for named temporary Point
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:12:58 -05:00
Jeff Epler
68f603353a
factor out SegmentsFromFile
...
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:12:58 -05:00
Jeff Epler
ad50918ad9
Makefile: mark default rule as phony
...
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:12:58 -05:00
Jeff Epler
18d444ca66
let us build with clang
...
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:12:58 -05:00
Jeff Epler
b70d655489
Manually unroll first loop iteration, where o may be nonzero
...
.. simplifying subsequent iterations by not requiring them to account for o
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:12:57 -05:00
Jeff Epler
7adf8e24df
Don't needlessly copy pattern.dash[i]
...
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:12:57 -05:00
Jeff Epler
ea1bfeb467
Makefile: rule to do a simple benchmark with 'perf stat'
...
Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2017-06-02 16:12:57 -05:00
Jeff Epler
f18e7b6713
Add a note about development status
2017-05-03 07:37:20 -05:00
Jeff Epler
2d7cb43a1d
fix a typo
2016-12-06 15:37:46 -06:00
Jeff Epler
b8445e0a7d
Fix markup error (end of bullet list)
2016-12-06 15:36:54 -06:00
Jeff Epler
b40f009bf2
stop files in data/ from appearing in language summary
2016-01-27 20:45:45 -06:00
Jeff Epler
0818899738
reserve space for segments
2016-01-27 20:44:34 -06:00
Jeff Epler
c9a7c8241e
add -x 'just exit' benchmarking mode
2016-01-27 20:44:34 -06:00
Jeff Epler
bbd13083cf
tout increased performance
2016-01-27 15:50:19 -06:00
Jeff Epler
29530a3b6d
avoid calling fabs
2015-11-06 13:48:24 -06:00
Jeff Epler
9d1843800d
indices are integral types
2015-11-06 13:33:28 -06:00
Jeff Epler
6776ea122c
avoid expensive modulo calculation
2015-11-06 13:25:08 -06:00
Jeff Epler
171c391b20
use a more typical extension for C++ header files
2015-11-02 11:35:07 -06:00
Jeff Epler
242cd9d84b
use a more typical extension for C++ source files
2015-11-02 11:35:06 -06:00
Jeff Epler
8e3f37ed7a
Update README.md
2015-10-28 15:50:49 -05:00
Jeff Epler
40d5729b74
Introduce support for different winding rules
...
This is a model which can support all OpenGL winding rules as well as
any other rule which is just a test of the winding number (if there are
any such tests that are useful).
This requires introducing a flag on Segment objects to track whether they
have been "swapped": A Segment which is not swapped has its endpoints in
the proper order to be consecutive points in a CCW-wound polygon. One
which is swapped is in the opposite order.
It is necessary to invert this flag when transforming a segment by a
transformation with a negative determinant, and when swapping the endpoints
to satisfy a sorting criterion.
2015-10-02 13:56:20 -05:00
Jeff Epler
e888bf0502
add an unoptimized target
...
.. helpful when using a debugger
2015-10-02 13:56:20 -05:00
Jeff Epler
95d7f6e683
delete commented-out code
2015-10-02 13:56:20 -05:00
Jeff Epler
7d465a3041
remove unneded include
2015-10-02 13:56:20 -05:00
Jeff Epler
fab9ebe603
introduce, use PSMatrix::determinant method
2015-10-02 13:56:20 -05:00
Jeff Epler
ba3c7cdc8a
Fix incorrect ending v coordinate
2015-10-02 13:56:20 -05:00
Jeff Epler
ec893d13f9
an example shape from opengl docs, may be instructive for testing different winding rules
2015-10-02 13:56:20 -05:00
Jeff Epler
8dbbcc6b7c
fix doubled percent signs
...
.. left over from an interation which used printf-style formatting
2015-08-21 13:54:18 -05:00
Jeff Epler
4d6b0c34f2
no need to trim line twice
2015-08-21 13:53:44 -05:00
Jeff Epler
25520fb843
move part of implementation to separate source file
2015-08-20 09:51:23 -05:00
Jeff Epler
0892d2ae68
move includes where they belong
2015-08-20 09:33:09 -05:00
Jeff Epler
ac3dcc35bf
further reduce memory allocations
...
.. by sharing the uvsegments and uu containers for a whole hatching
iteration
2015-08-19 20:58:27 -05:00
Jeff Epler
710e87e431
slightly reduce memory allocations
...
.. by making the sorted segments to visit and the heaped
active segments live in the same container
2015-08-19 20:57:59 -05:00
Jeff Epler
1810bf85e0
example output
2015-08-19 20:08:32 -05:00
Jeff Epler
2313b56344
some files to play with
2015-08-19 19:53:52 -05:00
Jeff Epler
e7a8bfc423
fixu
2015-08-19 19:53:52 -05:00
Jeff Epler
13f3f9e7ae
initial commit
2015-08-19 19:53:52 -05:00