Dane Springmeyer
34b9cb37f7
fix -Wsign-conversion warning in UnicodeString.hashCode()
2015-06-15 20:41:47 -07:00
Dane Springmeyer
45bda29a45
switch to c++11 library over boost (confirmed no speed drop on osx with test_marker_cache.cpp)
2015-06-15 20:41:47 -07:00
Dane Springmeyer
0d86afff36
start using -Wsign-compare and -Wshadow + fix heaps of warnings - refs #2907
2015-06-12 14:51:18 -07:00
Dane Springmeyer
8d3d136da7
fix hang on windows in pixel_cast
...
- manifested converting double -> int64_t.
- it is unclear why this explicitness is needed on windows
to avoid greater calling itself. But it is clear that the
static_cast<double>(<std::int64_t>) is not enough for the
template deduction to match the <double,double> case automatically
- Making this explicit is probably better anyway, but odd it is needed.
- Finishes closing #2893 , refs #2893 , amends 96f7120ecc
and d29a0f18b1
- Seen with both VS 2014 CTP 4 and VS 2015 Preview
2015-06-12 12:38:22 -07:00
Dane Springmeyer
29b464e868
simplify numeric_compare template logic
2015-06-12 12:01:26 -07:00
Dane Springmeyer
a5e10aa25c
std::numeric_limits are not yet constant on windows - see #2911
2015-06-12 11:48:49 -07:00
artemp
a030f5531d
add <limits>
2015-06-12 14:43:56 +01:00
artemp
15041ba334
replace boost::numeric::bounds with detail::bounds where highest/lowest return constexpr
...
( since c++11 std::numeric_limits<T>::min/max return `static constexpr T`)
prefer if/else if.. over if/if...)
2015-06-12 13:40:47 +01:00
Dane Springmeyer
d29a0f18b1
fix pixel_cast by avoiding comparing across sign<->unsigned - refs #2893
2015-06-12 00:02:59 -07:00
Dane Springmeyer
6a3d63aa40
consistent initialization in scriptrun and placement_finder
2015-06-11 11:44:27 -07:00
Blake Thompson
d3f37d8f1e
Updated clipper to be reversed and fixes to the way the algorithm operates.
2015-06-11 12:47:00 -05:00
artemp
ed3a74afed
disambiguate naming
2015-06-11 13:20:49 +01:00
artemp
eabe5b50e6
Merge branch 'master' into mapycz-fix-raster-scaling
2015-06-11 13:15:38 +01:00
artemp
96f7120ecc
add pixel_cast<T>() ref #2893
...
replace boost::numeric_cast with mapnik::pixel_cast
2015-06-11 13:10:02 +01:00
artemp
e32465368b
Merge branch 'fix-raster-scaling' of https://github.com/mapycz/mapnik into mapycz-fix-raster-scaling
2015-06-11 10:28:41 +01:00
Dane Springmeyer
f5a792807e
fully header only impl should not use MAPNIK_DECL
2015-06-10 23:03:07 -07:00
artemp
40b963f9ad
csv_grammar - handle various quotting options + disable csv_utils::fix_json_quoting(csv_line)
2015-06-10 13:40:55 +01:00
artemp
e5f1379fea
handle escape characters
2015-06-10 11:41:45 +01:00
artemp
f1feedc54c
Merge branch 'master' into large_csv
2015-06-10 11:14:19 +01:00
artemp
8e30a89522
remove wkt_generator_grammar_int to minimise code duplication
...
remove redundant template parameter - we can deduce coord_type from Geometry
add coord generator traits to control generator instantiation at compile time
2015-06-10 11:10:17 +01:00
artemp
89d258743a
use inheritance to define geometry ( struct geometry : geometry_base<T> ) + provide value_type type alias in geometry
2015-06-10 10:55:34 +01:00
Blake Thompson
08602392a3
Merge branch 'master' into offset
2015-06-09 13:18:31 -05:00
Blake Thompson
d209e5bc33
After some tweaking determined what I feel like are the best values for threshold and limiting sharp corners
2015-06-09 13:15:12 -05:00
Blake Thompson
dd104b0b1b
Updated offset converter to remove large spikes
2015-06-09 11:31:50 -05:00
artemp
11e58275e9
fix typedef's
2015-06-09 15:22:01 +01:00
Blake Thompson
75f7cb26bb
Reversed the offsets
2015-06-09 09:18:52 -05:00
artemp
f4ec97489d
add 'csv' dir
2015-06-09 10:33:01 +01:00
artemp
908f03bc19
add csv_grammar
2015-06-09 10:21:38 +01:00
Blake Thompson
a74c4abe57
Reverted to original offset directions for now
2015-06-08 19:33:00 -05:00
Dane Springmeyer
2a01b2da03
Merge branch 'master' of github.com:mapnik/mapnik into offset
2015-06-08 13:54:04 -07:00
Jiri Drbalek
76b7466719
fix rendering raster without scaling
2015-06-08 17:31:56 +00:00
Dane Springmeyer
d7bffd51f2
shuffle marker_helpers includes
2015-06-06 08:19:54 -07:00
Dane Springmeyer
29c9e97d76
minor code cleanup in process_group_symbolizer
2015-06-06 08:09:06 -07:00
Blake Thompson
4de33bd483
Updated offset so that it only requires onetime through and rewind is not required to be called. This was done because some adapters do not respond well to rewind.
2015-06-05 17:12:42 -05:00
Blake Thompson
35f4ae5bc7
Tune threshold some for offset converter
2015-06-05 12:03:52 -05:00
Blake Thompson
c3574c1008
Initial commit changing offsets
2015-06-05 10:04:24 -05:00
Dane Springmeyer
dcfa0b655c
fix #2863 by adding back compatibility of point symbolizer interior placement on point geometries + update visual tests
2015-06-04 07:45:44 -07:00
Dane Springmeyer
4bf4bb0104
Merge pull request #2880 from zerebubuth/fix/rapidxml-loader-trim-whitespace
...
Fix rapidxml XML loader to trim whitespace
2015-06-03 14:03:53 -07:00
Matt Amos
1778d19b22
Added headers required on Mac OS - not sure why not on Linux.
2015-06-03 15:56:37 +01:00
Artem Pavlenko
a235316573
Merge pull request #2883 from mapycz/missing-style
...
better handling of missing styles
2015-06-03 11:54:06 +01:00
artemp
3c159f7163
remove unused dump_xml.hpp
2015-06-03 11:18:32 +01:00
Jiri Drbalek
abf64342f9
raise missing style message to MAPNIK_LOG_ERROR
2015-06-03 10:04:33 +00:00
Matt Amos
dd112b33e2
Added visibility attribute to XML symbols.
...
Thanks to @flippmoke, symbol visibility is exactly the cause of
the previous compilation error. Until it's decided whether or not
to turn this off (at least for testing & coverage builds?), I've
added the necessary annotations to allow it to compile.
2015-06-02 18:10:59 +01:00
artemp
8e1e5f19d1
Merge remote-tracking branch 'origin/master'
2015-06-02 15:39:35 +01:00
artemp
90a27abccb
catch and remove more spurious std::move's
2015-06-02 15:36:31 +01:00
Dane Springmeyer
f8370acc9c
fix a few files that need utf_conv_win.hpp
2015-06-02 07:14:31 -07:00
artemp
82a98a6d85
catch and remove more spurious std::move's
2015-06-02 14:48:02 +01:00
artemp
df4226a825
remove spurious std::move's (clang - moving a temporary object prevents copy elision [-Wpessimizing-move])
2015-06-02 14:26:35 +01:00
artemp
de568ff054
polygon<T> - add default ctor
2015-06-02 14:23:22 +01:00
artemp
2eaa90033a
move singleton to util/singleton.hpp
...
move windows UTF conversion routines to util/utf_conv_win.hpp
2015-06-02 11:10:41 +01:00
artemp
9a93b21159
remove unused member variable + make singleton always thread safe
2015-06-02 10:32:30 +01:00
artemp
8653508a9a
use std::aligned_storage in CreateStatic policy
2015-06-02 10:27:22 +01:00
artemp
b3af8bd5f9
implement DCLP using c++11 ( http://preshing.com/20130930/double-checked-locking-is-fixed-in-cpp11/ )
...
ref #2838
2015-06-02 10:24:38 +01:00
artemp
c399469d95
use constexpr instead of BOOST_STATIC_CONST
2015-06-01 17:23:51 +01:00
Matt Amos
ebab4df95f
Remove unused source memory.[ch]pp
.
...
I could not find any references to this source file from any
other, and it looks like it has been largely unmodified for the
past 5 years. This suggests that it has been orphaned.
2015-05-29 19:06:13 +01:00
Blake Thompson
847a9f0d45
Merge pull request #2839 from mapnik/static_strategy
...
Changed from numeric casts to static casts in strategies
2015-05-26 16:19:13 -05:00
Blake Thompson
ee551cd949
Removed vector tile strategy
2015-05-26 16:18:10 -05:00
Blake Thompson
85e2b53490
Changed from floor to round
2015-05-26 15:52:41 -05:00
Blake Thompson
506d2f435f
Added vector tile strategy
2015-05-26 15:52:41 -05:00
Blake Thompson
611eb6e7a3
Changed from numeric casts to static casts
2015-05-26 15:52:41 -05:00
Jiri Drbalek
344a6ec8ba
grid: formatting
2015-05-25 21:03:40 +00:00
Jiri Drbalek
51064a9479
grid: use correct types
2015-05-25 21:03:40 +00:00
Dane Springmeyer
4667e9470a
more portable workaround for gil c++11 bug - closes #2859
2015-05-24 13:48:04 -07:00
artemp
bbbe24ac9f
format - remove extra ;
2015-05-22 09:09:50 +01:00
Dane Springmeyer
c2e94c68a5
fix crash + add crashing testcase for #2842
2015-05-21 20:39:14 -07:00
artemp
3b663af863
use boost::spirit::standard instead of boost::spirit::ascii to avoid assertions failing (isascii_(ch)) in debug builds - ref #2829
2015-05-21 11:27:21 +01:00
Dane Springmeyer
84e4d8bf22
Start calling geometry::correct everywhere possible - refs #2834
2015-05-20 14:00:30 -07:00
Blake Thompson
2031215247
Renamed set_opacity to apply_opacity, reverted it to the old logic of set_alpha. Updated tests, clamping is now used.
2015-05-20 13:08:18 -05:00
Blake Thompson
b68d079255
Changed the name of the set_alpha and multiply_alpha to be set_opacity and multiply_opacity
2015-05-20 12:39:01 -05:00
Dane Springmeyer
5d7c43457e
Merge pull request #2825 from mapycz/improve-interior
...
improve interior placement
2015-05-20 10:37:39 -07:00
artemp
a8a90b7656
use std::lock_guard instead of unique_lock (better fit for the job)
2015-05-20 16:12:22 +01:00
artemp
433741877d
fix - use std::size_t to avoid narrowing
2015-05-20 11:31:41 +01:00
artemp
6c14ff9b7a
fix char type
2015-05-20 11:31:24 +01:00
artemp
3ce65e8b65
rename view_to_string to view_to_stream and tempalate on stream type
2015-05-19 11:58:20 +01:00
artemp
05b5d16e87
more std::size_t fixes (consistent usage)
2015-05-19 11:43:39 +01:00
Jiri Drbalek
efd554a04e
interior placement: always compute center of the longest segment
2015-05-19 08:37:57 +00:00
Jiri Drbalek
5ab59c860d
fix deprecation warning
2015-05-18 08:01:27 +00:00
Blake Thompson
219ad1f2cc
Updated min zoom and max zoom to use maximum scale denom and minimum scale denominator #1447
2015-05-15 14:34:12 -05:00
Dane Springmeyer
fd23aacd7b
shuffle includes based on iwyu findings
2015-05-14 23:38:36 -07:00
Dane Springmeyer
3ae6e49a2e
Merge pull request #2812 from mapnik/feature/add_tests
...
Adding tests and cleanup
2015-05-14 23:05:48 -07:00
Dane Springmeyer
53be585240
iwyu in view_strategy.hpp
2015-05-14 17:59:40 -07:00
artemp
75a77882e8
image_options - add key0=value0:key1:key2=value2 parser
...
remove tokenizer usage from image_util_png
2015-05-14 15:37:21 +01:00
Artem Pavlenko
2a8086fbcc
Merge pull request #2788 from mapycz/fix-labeling-on-polygons
...
fix labeling on polygons
2015-05-14 14:10:02 +01:00
artemp
881dba4fc9
fix camel case
2015-05-14 12:53:21 +01:00
Jiri Drbalek
a8e3174817
text on polygon: fix missing closing segment
2015-05-14 11:26:01 +00:00
Blake Thompson
d1616737f2
Removed the mapnik type of 'byte' because it seemed sparsely used and simply providing data type should be easier as it is never going to change. Also added some tests around mapnik palette
2015-05-13 19:32:54 -05:00
Blake Thompson
f3abe7fc25
Added test coverage to image buffer
2015-05-13 16:50:31 -05:00
Blake Thompson
c3dfda4977
Merge pull request #2808 from mapnik/bugfix/strategy_rounding
...
Bugfix/strategy rounding
2015-05-13 13:45:26 -05:00
Blake Thompson
f9acd07aaf
Merge pull request #2807 from mapnik/drop-big-endian
...
Drop obsolete and unsupported big endian support
2015-05-13 13:43:09 -05:00
artemp
3e16c4b8f2
remove unused vars
2015-05-13 15:15:52 +01:00
artemp
ba117c6384
update SVG path generator to avoid using boost::phoenix::if_() which doesn't work with boost 1.58
2015-05-13 11:33:09 +01:00
artemp
270679bc20
style
2015-05-13 11:32:34 +01:00
Blake Thompson
39428585f0
Added the rounding_cast utility, and added a scale_rounding_strategy to support this new casting type. Added tests for it
2015-05-12 14:36:29 -05:00
Blake Thompson
1dddfd17ef
Removed try catch around set_alpha, and just checked bounds. Added unit tests for image_view
2015-05-12 12:24:14 -05:00
Dane Springmeyer
613766b104
drop obsolete and unsupported big endian support - refs #2806
2015-05-12 10:19:37 -07:00
artemp
a9ae6c111c
Merge branch 'master' into fix-topojson
2015-05-12 09:42:29 +02:00
Dane Springmeyer
706be7397f
Merge branch 'master' of github.com:mapnik/mapnik
2015-05-11 17:49:42 -07:00
Dane Springmeyer
d57f1cbb71
display deprecated value in enumeration warning [skip ci]
2015-05-11 17:49:35 -07:00
Dane Springmeyer
834ae832be
tuple adapter is needed in the end
2015-05-11 16:52:08 -07:00
Dane Springmeyer
14c73304de
iwyu
2015-05-11 16:52:08 -07:00
Blake Thompson
e44cdef805
Fix get_pixel with image_view
2015-05-11 18:19:24 -05:00
Blake Thompson
f54164da75
Changed the way that set alpha worked, renaming old method to multiply_alpha, added new set_alpha, that simply sets the alpha. Added protection for overflows and underflows. Added unit tests to cover all code
2015-05-11 13:12:13 -05:00
Dane Springmeyer
23872dcd26
ensure topojson parser is robust to invalid arc index
2015-05-09 07:04:03 -07:00
Dane Springmeyer
61c2cd5ed5
tuple adapter is needed in the end
2015-05-09 06:59:14 -07:00
Dane Springmeyer
7ceba047c0
iwyu
2015-05-09 06:54:38 -07:00
Dane Springmeyer
5162027034
avoid closing empty path
2015-05-07 16:12:38 -07:00
Dane Springmeyer
340ed85e4e
fix windows compile
2015-05-06 07:10:35 -07:00
Dane Springmeyer
4c76edaef7
algorithm is a somewhat large stl header, move it to cpp
2015-05-06 06:37:06 -07:00
Dane Springmeyer
b11eeef4b6
remove std::clog print
2015-05-06 06:35:37 -07:00
Dane Springmeyer
0bfb7bae7a
Add deprecation warning for enum's using _
2015-05-06 06:35:17 -07:00
Dane Springmeyer
b10a6f7a92
remove unused coord_array header
2015-05-06 06:34:54 -07:00
Dane Springmeyer
126c777c8d
shuffle around boost/geometry usage in headers to reduce compile time
2015-05-05 22:04:49 -07:00
Dane Springmeyer
f2863a7d2a
explicitly use mapnik::tags to avoid boost::geometry::tags conflict
2015-05-05 20:46:19 -07:00
artemp
47c272b874
c++ constness, formatting
2015-05-05 14:12:29 +02:00
Blake Thompson
0eecbd3e0f
Modified marker cache to store shared_ptrs in order to prevent threading issues and to close #2713
2015-05-04 14:11:41 -05:00
Blake Thompson
9439279f53
hopefully solved linux compile issues
2015-05-04 09:37:45 -05:00
artemp
6d4a4139b3
is_switchable to control switchabilty of vertex_converters -- revive stroke_tag
...
fix vertex_converter in cairo/agg
2015-05-04 14:49:17 +02:00
artemp
470da20d53
fix remanining cAmEl case names
2015-05-04 12:49:11 +02:00
artemp
377c5e56b8
image_view - add move ctro, delete assignment operator, use std::size
2015-05-04 12:11:24 +02:00
artemp
ba0c18a228
c++ style
2015-05-04 11:22:06 +02:00
artemp
081cf02dcf
fix method signitures to use std::size_t
...
rename getSize() -> size(), getRowSize() -> row_size
2015-05-04 10:57:57 +02:00
artemp
663a7db8fd
use std::size_t
2015-05-04 10:14:01 +02:00
Dane Springmeyer
147602244b
disable is_switchable for stroking and offsets - refs #2791
2015-04-30 11:42:36 -07:00
Jiri Drbalek
78d7ea007a
fix labeling
2015-04-30 07:20:10 +00:00
Dane Springmeyer
919bf27dc3
close polygon paths
2015-04-29 15:41:18 -07:00
artemp
c64dc3672a
vertex_converter - refactor to pass Processor
to apply function (while it allows to instantiate vertex_converter object only using converter tags, it doesn't reduce object code)
...
make offset_converter 'non-switchable' relying on be able to shortcut in `vertex(*x, *y)` when offset is 0.0 -> results in reduced binary size
2015-04-28 14:18:33 +02:00
artemp
666ce82ae4
add is_switchable to control switchabilty of vertex_converters
2015-04-27 14:00:52 +02:00
Dane Springmeyer
e60dfbba38
remove unused close_poly_tag
2015-04-26 19:34:58 -07:00
Dane Springmeyer
f9439a590f
define BOOST_MPL_LIMIT_VECTOR_SIZE before boost/geometry
2015-04-26 19:34:42 -07:00
Dane Springmeyer
bf92a90648
silence boost geometry warnings [skip ci]
2015-04-27 00:32:09 +02:00
Dane Springmeyer
8489bb12f8
Add operator!= to datasource (needed for copy_move_test.cpp)
2015-04-25 10:34:25 +02:00
artemp
d89033a0ca
reduce binary size providing overloads for forward method
...
```
template <typename Geometry, typename Processor>
static void forward(Dispatcher & disp, Geometry & geom, Processor & proc,
typename std::enable_if<!std::is_same
<typename detail::converter_traits<Geometry,Current>::conv_type,
transform_path_adapter<view_transform, Geometry> >::value >::type* = 0)
```
2015-04-24 18:13:18 +02:00
artemp
69afcdf9bf
fix hardcoded detector type
2015-04-24 15:15:01 +02:00
artemp
f9bd031243
pass and store feature by const ref
2015-04-24 15:12:48 +02:00
artemp
68510afdc1
remove const
2015-04-24 12:35:21 +02:00
Jiri Drbalek
8d78e8bfcb
fix compile with gcc
2015-04-23 14:49:06 +00:00
Dane Springmeyer
d591600c04
include boost/version.hpp where needed - refs #2770
2015-04-23 09:31:46 +02:00
Matt Amos
79f29f3894
Disable missing geometry functions in older Boost versions.
...
The functions `is_valid` and `is_simple` and their associated
headers are only present in versions of Boost >= 1.56, and will
cause compilation errors with previous versions of Boost. This
masks them with preprocessor macros to allow the compilation to
complete, at the cost of some (currently not widely used)
functionality.
2015-04-23 03:52:46 +01:00
Dane Springmeyer
2c35a0f8a1
Merge pull request #2739 from mapnik/mapnik-geometry
...
New geometry storage and API
2015-04-22 15:35:07 +02:00
artemp
3366e804c9
hit_test - cache x,y for MOVE_TO and use on CLOSE_PATH command
2015-04-22 15:30:59 +02:00
artemp
86cc903835
point_symbolizer - revive interior point placement
2015-04-22 15:01:52 +02:00
Dane Springmeyer
124362d2d4
stop correcting geometries at decode time
...
- the original motivation for this was to avoid needing to
mutate a copy later on (for operations needing correct winding order)
- but mutating a copy is looking feasible, so removing this now.
2015-04-22 14:27:43 +02:00
artemp
1f83eaa6ac
geometry_adapters - make generic
2015-04-22 12:22:52 +02:00
artemp
2768aa6a4a
Merge branch 'mapnik-geometry' into mapnik-geometry-template
2015-04-22 12:13:29 +02:00
Blake Thompson
d7f7bc18c1
A large set of changes that help allow WKT for int64_t type geometeries, modified some strategies, made it so that the clipper would use mapnik geometries.
2015-04-21 09:34:52 -05:00
Blake Thompson
edda6cb13f
Updated several sections of code, noteably added strategy_group_first as another way to perform transforms with groups, added tests similar to uses of vector tiles in geometry_strategy_test.cpp
2015-04-17 15:49:23 -05:00
Blake Thompson
8ad5648c10
Working version of strategy grouping
2015-04-17 11:15:45 -05:00
Blake Thompson
75ccfdf934
A venture into variadic templates for strategies and transforms.
2015-04-16 23:37:20 -05:00
Blake Thompson
a19da799e0
Slight fixes after merge
2015-04-15 16:05:56 -05:00
Blake Thompson
7a50bb5214
Merge branch 'mapnik-geometry' into mapnik-geometry-template
2015-04-15 15:16:47 -05:00
Dane Springmeyer
cdb9a2ead4
add debug symbolizer mode for visualizing exterior and interior rings and their winding order
2015-04-14 02:44:14 +02:00
Dane Springmeyer
1dc77443ab
add vertex_adapter to work per polygon ring
2015-04-13 18:48:45 +02:00
artemp
87e978a6b9
prefer c++11 alias type declaration over typedef for consistency
2015-04-13 15:03:19 +02:00
artemp
41aa591878
Merge branch 'master' into mapnik-geometry
2015-04-13 12:47:41 +02:00
artemp
4f3c8663a3
visual tests : fix marker-on-hex-grid
2015-04-13 11:38:38 +02:00
artemp
c1bc8ffc64
simlified_converter - use start (move_to) x,y on close_path command (drops tiny islands)
2015-04-13 11:17:17 +02:00
Blake Thompson
f98fd0da7c
Added tests for non standard projections, forcing use of proj4.
2015-04-10 14:05:58 -05:00
Blake Thompson
2392c7eb12
Added geometry_reprojection_impl
2015-04-10 10:55:30 -05:00
artemp
33661c818d
Merge branch 'mapnik-geometry' into mapnik-geometry-template
...
Conflicts:
benchmark/test_polygon_clipping.cpp
include/mapnik/geometry.hpp
include/mapnik/geometry_adapters.hpp
include/mapnik/marker_helpers.hpp
2015-04-10 14:52:40 +02:00
artemp
90b6fee2ac
don't return from void function
2015-04-10 14:15:12 +02:00
Blake Thompson
87fb41907a
Added template to geometries
2015-04-09 15:22:51 -05:00
artemp
fb61a2bb90
ref #2755 test if centroid is within bounding box
2015-04-09 12:40:06 +02:00
artemp
3f1aa7b4b4
geometry : allow boost::geoemetry algorithms to work directly with box2d<double>, removing bounding_box
2015-04-09 12:33:31 +02:00
artemp
2581e48087
vertex_converters - attempt to improve size and compilation times
2015-04-09 10:55:09 +02:00
artemp
938709955e
support all geomtry types
2015-04-08 18:48:41 +02:00
artemp
24dbaf5217
add geometry_to_path implementation
2015-04-08 18:48:41 +02:00
artemp
bfae2a8df6
cleanup
2015-04-08 18:48:41 +02:00
Blake Thompson
c5d5a1f22e
Added several unit tests around reprojection.
2015-04-07 17:20:29 -05:00
Blake Thompson
0fec41a87e
Updated reprojection code
2015-04-07 11:55:45 -05:00
artemp
6afc4531ec
add value_type alias
2015-04-07 15:39:47 +02:00
artemp
10a07bc142
generic geometry transform algorithm
2015-04-07 15:38:00 +02:00
Blake Thompson
6be658f5b5
Moved geometry envelope to an impl
2015-04-06 11:00:03 -05:00
Dane Springmeyer
159997fe25
avoid -Wsign-compare warning
2015-04-05 08:56:06 -04:00
Dane Springmeyer
c4273ffed6
be explicit about where value_converter is
2015-04-05 03:10:53 -04:00
Dane Springmeyer
bc77157c57
re-expose geometry_empty test / fix compile
2015-04-04 13:24:00 -04:00
Dane Springmeyer
d4ce36a41e
remove unneeded headered detected by iwyu
2015-04-04 13:21:33 -04:00
Dane Springmeyer
bd673c0dbe
more iwyu
2015-04-04 13:21:09 -04:00
Dane Springmeyer
ae50ce7321
add headers detected as needed by include-what-you-use
2015-04-04 13:20:40 -04:00
Dane Springmeyer
633668f1d2
no need for iostream in geometry_envelope
2015-04-04 13:20:11 -04:00
Dane Springmeyer
9bd171bcd1
geometry_is_empty should only accept const&
2015-04-04 13:19:55 -04:00
Blake Thompson
19eaf4cfff
Fix for geometry envelope with geometry collections and added tests.
2015-04-03 18:56:57 -05:00
Blake Thompson
fb0ea81606
Modified envelope so that it no longer keeps creating new bboxes, fix in hit filter for rings with too little geometry
2015-04-03 11:24:47 -05:00
Blake Thompson
4091504dac
Optimization for when point is found in a hole
2015-04-03 11:24:47 -05:00
Blake Thompson
2460f7ba04
Corrected ray casting check in polygon hit test
2015-04-02 14:27:39 -05:00
Blake Thompson
6f4f7a07be
Added a feature to geojson helper method
2015-04-02 09:28:45 -05:00
artemp
63b97e2e52
attempt to fix SEG_CLOSE command handling
2015-04-02 16:12:56 +02:00
Blake Thompson
5ca850a17e
Added proper use of auto in several for loops
2015-04-01 17:55:36 -05:00
Blake Thompson
78835c9d87
Initial commit for new method to provide geometry reprojection
2015-04-01 16:18:05 -05:00
Dane Springmeyer
928ebad6b9
Avoid inf recursion in geometry::is_empty
2015-03-31 12:29:14 -07:00
Dane Springmeyer
f96744c0e2
split out to_wkt and from_wkt as was previously done
2015-03-31 09:15:23 -07:00
artemp
3c2430150d
add 'is_clockwise' as generic function
...
shape_io -- rely on RVO optimisation (remove an extra std::move)
2015-03-31 13:43:37 +02:00
artemp
7775089a24
make is_simple and is_valid work typed geometries directly
2015-03-31 13:43:37 +02:00
Jiri Drbalek
9862ac66bf
fix compile json grammar with boost 1.49
2015-03-31 10:29:33 +00:00
Dane Springmeyer
7cbabd9b46
workaround boost bug on osx - refs #2747
2015-03-30 13:34:46 -07:00
artemp
8735311f83
radial distance - set x=y=0 on SEG_CLOSE command
2015-03-30 12:40:28 +02:00
artemp
6a6af26566
handle SEG_CLOSE in visvalingam_whyatt and douglas_peucker
2015-03-29 19:11:07 +02:00
artemp
3593f3c52c
attempt to fix zhao simplification to handle zZ (SEG_CLOSE) command correctly
2015-03-29 18:49:09 +02:00
artemp
919d41aeb6
remove unused member variable
2015-03-29 13:55:46 +02:00
Dane Springmeyer
d5f98ba07c
avoid duplicated line_to - matches 6a827f50
, rolls back a2185bb9d8
2015-03-28 23:55:20 -07:00
Dane Springmeyer
a2185bb9d8
add vertex_adapter.cpp tests
...
- focus is on behavior of polygons (including with holes)
- reverts 6a827f501
because it seems incorrect to me and without it the vertex_adapter.cpp tests pass
- @artemp if you see something I don't please restore 6a827f501
, but updated the vertex_adapter.cpp tests
to show what the expected behavior should be
2015-03-27 23:16:49 -07:00
artemp
51b65534f5
geojson bounding box grammar - don't require "type": "Feature"
to appear in particular order (ref #2745 )
2015-03-27 10:36:04 +01:00
artemp
64312a8dc1
geojson bounding box grammar - don't require "type": "Feature"
to appear in particular order
2015-03-27 10:32:52 +01:00
artemp
6aae88f90f
only apply unique to line_string and polygon
2015-03-26 18:41:15 +01:00
artemp
75699eb5b4
remove duplicate include
2015-03-26 18:33:17 +01:00
artemp
b025071b28
add geometry_unique algo (removes coincident points)
2015-03-26 18:32:09 +01:00
artemp
b0587a01c0
correct line_string/multi_line_string
2015-03-26 18:13:44 +01:00
artemp
a2933f9cb1
fix includes
2015-03-26 17:31:19 +01:00
artemp
330bc5686c
avoid relying on x and y in SEG_CLOSE command - instead cache MOVE_TO's coordinates
2015-03-26 17:30:00 +01:00
artemp
6a827f5018
don't output last-vertex (== first-vertex) - SEG_CLOSE should be sufficient
2015-03-26 17:27:40 +01:00
artemp
bc913bcc59
fix names
2015-03-26 17:26:39 +01:00
artemp
a05225d8b1
move vertex_adpaters into separate header
2015-03-26 17:20:38 +01:00
artemp
74fb3ddde0
Merge branch 'master' into mapnik-geometry
2015-03-25 16:19:02 +01:00
artemp
06f512f584
markers_helper - add support for geometry collections
2015-03-25 16:15:48 +01:00
artemp
ba423f0955
wkt parser/genrator - handle POINT EMPTY by constructing geometry::geometry_empty
2015-03-25 15:52:12 +01:00
artemp
389d00d442
make geometry methods templated to allow using modified geometry types ( e.g variant<reference_wrapper<T>..>
...
symbolizer_helper - store geometries in custom varaint using reference_wrapper<T const>
2015-03-25 12:58:50 +01:00
artemp
22de30bb37
update variant (add support for 'unwrapping' std::reference_wrapper<T> and accessing std::reference_wrapper<T>::type through get<T>())
2015-03-25 10:52:33 +01:00
Dane Springmeyer
834a74b1ed
make geometry_correct more flexible but harder to misuse
2015-03-24 18:43:05 -07:00
Dane Springmeyer
93e825d727
delete previous incantation of boost polygon clipper
2015-03-24 16:44:50 -07:00
Dane Springmeyer
852776d5e3
geometry is_empty refactoring
2015-03-24 14:16:58 -07:00
Blake Thompson
3270d42b74
Standardizing on the output of a boolean to string is true or false rather then 0 or 1.
2015-03-24 14:32:25 -05:00
artemp
4389c80d84
and finaly, rename 'new_geometry' namespace to 'geometry'
2015-03-24 14:21:28 +01:00
artemp
7e03d41606
rename geometry_impl.hpp to geometry.hpp
2015-03-24 13:32:05 +01:00
artemp
323fdd5212
rename geometry -> path ( geometry_type -> path_type)
2015-03-24 13:17:07 +01:00
artemp
ac1ffa2bfb
move geometry.hpp into path.hpp and update code base to reflect this change
2015-03-24 12:42:09 +01:00
artemp
1cf0a897ac
move datasource::geometry_t into separate header and rename -> datasource_geometry_t to avoid cyclic dependencies issue
...
to_ds_type - return actual datasource_geometry_t (remove optional)
update across datasources
experssions - revert to using
2015-03-24 12:13:31 +01:00
artemp
163da958f4
mapnik-geometry - add 'geometry_empty' type to support unintialised geometries
2015-03-24 10:30:33 +01:00
artemp
446e6be7bd
json geometry generator - output "null" for uninitialised geometry
2015-03-23 19:09:31 +01:00
artemp
2420604d8c
check if geometry has been initialised before dispathing
2015-03-23 12:17:43 +01:00
artemp
807a940f1e
ensure [mapnik::geometry_type] attribute is stored as mapnik::value_integer
2015-03-23 12:16:21 +01:00
artemp
e6905272b7
mapnik::feature_impl - add set_geometry_copy(geometry const&)
2015-03-23 10:43:20 +01:00
Dane Springmeyer
cb6f5a7ca4
add empty method on new_geometry::polygon
2015-03-22 12:14:43 -07:00
Dane Springmeyer
95ca3a02f8
update pgsql2sqlite to new geometry
2015-03-22 12:14:11 -07:00
Dane Springmeyer
1a57aef9c6
implement hit_test for new_geometry
2015-03-22 11:41:44 -07:00
Blake Thompson
63c72789d9
Fixed a segfault from occuring if to_wkb was called with a null geometry
2015-03-20 17:03:49 -05:00
artemp
a7174f181c
handle collections
2015-03-20 11:06:04 +01:00
artemp
9352d69987
refactor local pattern alignment calc
2015-03-20 10:43:42 +01:00
artemp
360f920924
Merge branch 'master' into mapnik-geometry
2015-03-20 09:51:59 +01:00
Blake Thompson
be9d2ad53c
Removed perhaps unrequired MAPNIK_DECL
2015-03-19 23:11:12 -05:00
Blake Thompson
0f76580f6e
Tweaked image view null a little
2015-03-19 22:35:09 -05:00
Blake Thompson
08a3911b0a
Added the introduction of an image_view_null, this could possibly fix windows build issues
2015-03-19 21:28:16 -05:00
Blake Thompson
f8010f0ba1
Updated image_view any with < and == operators, removed default constructor from image_view and image_view_any
2015-03-19 14:58:01 -05:00
Blake Thompson
702b91e369
Included image_view headers in impl
2015-03-19 14:39:37 -05:00
Dane Springmeyer
0cb9cec686
remove header gaurd from impl file
2015-03-19 12:14:24 -07:00
Blake Thompson
9fd4ea2829
Possibly fixing windows issues
2015-03-19 14:01:22 -05:00
Blake Thompson
454398985c
Implementing < and == operators in image
2015-03-19 13:42:17 -05:00
artemp
8a0b4a6b6e
Merge branch 'master' into mapnik-geometry
2015-03-19 19:17:01 +01:00
artemp
ea465b06a9
geojson generator - null geometries
2015-03-19 13:44:34 +01:00
Jiri Drbalek
5c65dadd72
add comment about compatibility
2015-03-19 12:32:30 +01:00
artemp
8de2621b99
datasource : temporary reinstate get_geometry_type() method to increese test coverage and ease migration to mapnik-geometry
2015-03-19 12:09:07 +01:00
artemp
8635c87118
wkt generator - handle 'EMPTY' geometries
2015-03-19 11:00:18 +01:00
Dane Springmeyer
4a831b4936
fix msvs compiler error: C2899: typename cannot be used outside a template declaration
2015-03-19 00:44:59 -07:00
Dane Springmeyer
85b20f45d7
Merge pull request #2682 from mapycz/fix-enum-word-separator
...
fix enum word separator
2015-03-19 00:22:31 -07:00
artemp
6a8e78ab9c
fix group_symbolizer_helper
2015-03-18 13:50:15 +01:00
artemp
c1fca4f539
add vertex_adapter_traits
2015-03-18 13:49:51 +01:00
artemp
1bb06d89fa
group_symbolizer - update to mapnik-geometry
2015-03-18 12:10:21 +01:00
artemp
e516583d6c
building_symbolizer - update to mapnik-geometry
2015-03-17 15:47:51 +01:00
artemp
beb705acb3
Merge branch 'master' into mapnik-geometry
2015-03-17 09:45:19 +01:00
Blake Thompson
5a49842952
Moved image_null into a header
2015-03-16 12:18:07 -05:00
artemp
8747e0ff19
fix - don't forget to add poly's
2015-03-16 17:27:37 +01:00
artemp
71c9c04e92
Merge branch 'master' into mapnik-geometry
2015-03-16 16:20:46 +01:00
artemp
c528a31684
to_wkb - optimise to multi_point geometries
2015-03-16 16:19:24 +01:00
artemp
5f073ee299
mapnik-geometry based to_wkb() implementation
2015-03-16 16:14:17 +01:00
artemp
58d07338e9
polygon vertex adapter - output SEG_CLOSE for each loop
2015-03-16 12:01:57 +01:00
Blake Thompson
bd94cc6a60
Updated the image_view to add mapnik_decl
2015-03-13 18:21:24 -05:00
Blake Thompson
46ea6a5b1a
Added impl for image_view_any and fix to benchmark that was missing include for mapnik/color.hpp
2015-03-13 17:28:22 -05:00
Blake Thompson
c262e51428
Fix for operator= in image
2015-03-13 16:49:28 -05:00
Blake Thompson
29099ece46
Added image_view implementation
2015-03-13 16:34:49 -05:00
artemp
12613b59d4
fix typo
2015-03-13 17:12:23 +01:00
Blake Thompson
bf61a033d3
Intial commit for impl
2015-03-13 10:52:39 -05:00
artemp
924536e0f2
formatting
2015-03-13 14:29:05 +01:00
artemp
0b90fe7209
avoid unnecessary copying
2015-03-13 13:40:29 +01:00
artemp
58b36badd9
minor formatting
2015-03-13 13:23:36 +01:00
artemp
abd10cab0c
add support for all geometry types
2015-03-13 13:23:07 +01:00
artemp
f54eb68063
return geometry_type(geom)
2015-03-13 13:22:32 +01:00
artemp
6ef63aa7a5
memory_feature - update to use mapnik-geometry
2015-03-13 11:05:56 +01:00
artemp
914b8dbd76
Merge branch 'master' into mapnik-geometry
2015-03-12 15:14:45 +01:00
Artem Pavlenko
9117e7d9ff
Merge pull request #2621 from mapycz/markers-upright
...
marker direction
2015-03-12 14:58:16 +01:00
artemp
50ca6fcbe8
Merge branch 'master' into mapnik-geometry
2015-03-12 14:55:45 +01:00
artemp
b823d6dc34
geojson - fix brackets blues
2015-03-12 14:53:47 +01:00
artemp
48ce3ccc38
wkt generator fix erroneous brackets
2015-03-12 14:43:19 +01:00
artemp
6d13454f72
reinstate 'from_wkt' interface
2015-03-12 14:12:53 +01:00
artemp
c4607aaeeb
wkt-generator - update to mapnik-geometry model
2015-03-12 14:12:14 +01:00
artemp
2753db1c4c
factor out boost::spirit::traits::transform_attribute into separate header
2015-03-12 14:11:52 +01:00
artemp
da45acb047
wkt parser grammar - allow MULTIPOINT(x0 y0, x1 y1,....,xN yN) as well
...
as MULTIPOINT((x0 y0), (x1 y1),....,(xN yN)) syntax
2015-03-12 11:58:09 +01:00
artemp
f72291650b
fix line_string tag typo
2015-03-11 15:20:24 +01:00
artemp
26fdd0b680
python bindings - restore from_wkt method
2015-03-11 12:28:04 +01:00
artemp
525cb60f0c
fix compilation (add required headers and typedef)
2015-03-11 12:23:27 +01:00
artemp
f3edf2dfc0
wkt_grammar - update to use mapnik-geometry and optimise(minimise) memory allocations
2015-03-11 11:55:43 +01:00
Blake Thompson
fe01d52845
Removed unused resolution data from grids
2015-03-10 23:19:30 -05:00
Blake Thompson
f715f9cf22
Updated the name of methods in grids from properties to fields because they are an array rather then a map.
2015-03-10 19:59:46 -05:00
artemp
c3284aa958
Merge branch 'master' into mapnik-geometry
2015-03-10 11:17:53 +01:00
Blake Thompson
7ee9745a8f
Updated param to allow value_boolean
2015-03-09 16:33:20 -05:00
artemp
a89dd47a4b
Merge branch 'master' into mapnik-geometry
2015-03-09 18:48:58 +01:00
artemp
0863ef1e92
vertex_processor - handle geometry_collection
2015-03-09 18:47:34 +01:00
Blake Thompson
e20c68d384
Corrected a bug in hsl2rgb where if s was equal to zero an incorrect result was achieved.
2015-03-09 12:07:39 -05:00
artemp
40c9abcb2b
calc centroid
2015-03-09 17:00:00 +01:00
artemp
f919bd2c41
fix applying clip flag
2015-03-09 16:58:32 +01:00
artemp
cc3f8be837
remove unused headers
2015-03-09 16:37:26 +01:00
artemp
317e9c497f
Merge branch 'master' into mapnik-geometry
2015-03-09 14:59:45 +01:00
Blake Thompson
ffad24f31d
Added bugfix for image_view where if an image of zero width or height created a view, it would cause a segfault because it created a 1,1 size view.
2015-03-08 23:28:56 -05:00
Blake Thompson
61abe608ee
Added the ability to get_type from an image, fixed possible bugs associated with image copy.
2015-03-06 17:24:23 -06:00
artemp
174bc5969a
text symbolizer update to mapnik-geometry (partial)
2015-03-06 12:17:02 +01:00
Blake Thompson
ea6677df37
A fix to the jpeg driver making it operate with parameters like the other file formats.
2015-03-05 21:51:48 -06:00
artemp
8411cdfa0c
add centroid
2015-03-05 22:30:38 +01:00
artemp
d682c5a201
markers placement update
2015-03-05 20:54:36 +01:00
artemp
aa5ae6b843
update markers_symbolizer to work with mapnik-geometry (work-in-progress)
2015-03-05 15:07:23 +01:00
artemp
38dc240d6d
geometry - add generic is_valid(), is_simple() and correct()
2015-03-05 12:11:23 +01:00
artemp
d25ef607a2
cleanup
2015-03-05 12:09:16 +01:00
artemp
13a5bdf984
minor formatting
2015-03-05 12:08:21 +01:00
artemp
ee77a0ef10
correct arg type
2015-03-05 10:45:12 +01:00
artemp
24a586415c
expose wkbByteOrder in wkb.hpp
2015-03-05 10:44:40 +01:00
artemp
b66739cf86
move fusion adapted geometry into separate header to avoid duplication
2015-03-05 10:43:03 +01:00
artemp
87e9c64fc4
topojson grammar - add optional bbox element which is omitted
2015-03-04 14:55:13 +01:00
artemp
a6f0c30a74
topojson grammar - add optional bbox element which is omitted
2015-03-04 14:52:55 +01:00
artemp
f4a1e9368b
wkb_reader/json input grammar - correct polygons to have CCW exterioir/CW interior
2015-03-04 12:09:08 +01:00
artemp
9e35540b50
fix line_string iterator types
...
register CCW polygons - CCW exterior and CW interior rings
remove unused code (cleanups)
2015-03-04 12:07:22 +01:00
artemp
3ddfe34aa5
Merge branch 'master' into mapnik-geometry
2015-03-04 10:30:08 +01:00
artemp
587437c368
variant - add get<T> overloads where T is stored as recursive_wrapper<T> and avoid directly dealing with recursive_wrapper<T>
2015-03-04 10:19:30 +01:00
artemp
ec7f2f3f0c
feature_generator - adapt to new geometry generator
2015-03-04 09:23:57 +01:00
artemp
920a9549c4
geometry_generator - new copy-less grammar
2015-03-04 09:21:22 +01:00
artemp
bdbaf947f7
default assignment op + cleanups
2015-03-04 09:19:53 +01:00
Dane Springmeyer
4afcac5563
try to solve #2714
2015-02-26 11:12:19 -08:00
artemp
c58a5b4151
json : geometry_generator_grammar for mapnik-geometry (TODO)
2015-02-26 16:24:07 +01:00
artemp
a3b7328936
add 'which' method for compatibility with boost::variant
2015-02-26 16:23:20 +01:00
artemp
da1bc2463d
c++11 syntax
2015-02-26 16:22:56 +01:00
artemp
b74976d547
make inline
2015-02-26 16:22:34 +01:00
artemp
102fd539f9
generic way to apply vertex converters to mapnik-geometry
2015-02-24 15:18:46 +01:00
artemp
0d6eb8bcab
rename polygon_vertex_adapter_3 -> polygon_vertex_adapter
2015-02-24 14:31:32 +01:00
artemp
0885dfb15a
rename polygon3 -> polygon
2015-02-24 14:13:00 +01:00
artemp
e99db29214
move vertex_processor into separate header
2015-02-24 13:58:46 +01:00
artemp
367208ece1
generic geometry_type impl
...
remove geometry_type from mapnik::datasource
2015-02-24 11:17:26 +01:00
artemp
8400be91c7
generic box2d<double> envelope(geometry const& )
2015-02-24 10:42:33 +01:00
Dane Springmeyer
89e36a8685
adapt json geometry_parser to fca584de1b
2015-02-23 23:44:44 -08:00
artemp
6f13044d09
update bounsing box grammar to work with mapnik-geometry
2015-02-23 18:05:50 +01:00
artemp
07ab1fea66
fix namings
2015-02-23 18:05:13 +01:00
artemp
5cd0771824
json grammar - add support for geometry_collection
2015-02-23 17:40:16 +01:00
artemp
c4315ca46b
remove unused type alias
2015-02-23 17:39:11 +01:00
artemp
fca584de1b
json grammar - start porting to mapnik-geometry
2015-02-23 12:19:00 +01:00
artemp
968ab32c02
enable copy ctor (needed by json geometry grammar)
2015-02-23 12:09:42 +01:00
artemp
e523d648df
formatting
2015-02-23 10:06:13 +01:00
artemp
2a8174831a
mapnik-geometry - simplify and streamline implementation
2015-02-20 17:44:35 +01:00
artemp
9f84ed6950
position_grammar - start using mapnik-geometry
2015-02-20 17:43:59 +01:00
artemp
60f38780b3
boost.geometry <-- mapnik-geometry adapters
2015-02-20 17:43:07 +01:00
artemp
30da25a9c7
add geometry_collection type
2015-02-20 17:21:17 +01:00
artemp
7031099b76
Merge branch 'master' into mapnik-geometry
2015-02-20 17:03:46 +01:00
artemp
6d8ff4a476
add temp convinience methods
2015-02-19 17:13:00 +01:00
artemp
87d60620c2
mapnik-geometry : update wkb reader
2015-02-19 16:04:14 +01:00
artemp
9bb95d208c
add include guard
2015-02-19 16:01:46 +01:00
artemp
42983ff015
add basic support for point_symbolizer and mapnik::new_geometry::point
2015-02-19 10:45:03 +01:00
Dane Springmeyer
dd0b8459f5
insert_marker to take rvalue it if is moved inside the function
2015-02-19 01:37:45 -08:00
Dane Springmeyer
cb869e60f3
no need for templated 'raster_marker_render_thunk'
2015-02-19 01:36:43 -08:00
Blake Thompson
744dc4472f
Merge branch 'release/image_data_any' of github.com:mapnik/mapnik into release/image_data_any
2015-02-18 23:02:34 -06:00
Blake Thompson
390fbaac92
BOOM SHAKALAKA:
...
This update is in Ref #2649 . It provides an update to markers and their processing such that:
* All shared_ptrs are no longer required around markers
* Markers are now const
2015-02-18 22:58:33 -06:00
artemp
b49b8042c1
shape.input/agg - add polygon3 support
2015-02-18 18:12:47 +01:00
artemp
604d7b08af
use reserve
to pre-allocate line_strings + cleanups
2015-02-18 13:48:05 +01:00
artemp
2e4e1f71b8
adapt to use mapnik::new_geometry::geometry (shape.input only)
2015-02-18 13:21:16 +01:00
artemp
a1f7017d45
new geometry implementation - initial barebone framework
2015-02-18 11:07:26 +01:00
Dane Springmeyer
817489e97a
functions fully defined in hpp do not need MAPNIK_DECL - refs #2708
2015-02-16 19:05:41 -08:00
Dane Springmeyer
842e4bebe6
start fixing windows compile - refs #2708
2015-02-16 18:48:14 -08:00
Blake Thompson
b2c1c86d99
Merge branch 'master' into release/image_data_Any
...
Conflicts:
benchmark/test_polygon_clipping.cpp
2015-02-16 14:37:01 -06:00
Blake Thompson
0cd9c1fc34
Updated image_any building switch statement to support all the correct types, added tests for all the new data formats with get and set in python.
2015-02-16 14:23:55 -06:00
Dane Springmeyer
1ebd6afd9c
improve sql subselect parsing + add tests - closes #2704
2015-02-13 01:26:19 -08:00
Dane Springmeyer
2aaaecbcaf
initialize pos_ variable in path_iterator + fix spelling
2015-02-12 11:38:31 -08:00
Dane Springmeyer
58645c7842
json error handler: fix -Wunused-parameter warning
2015-02-11 23:13:59 -08:00
Dane Springmeyer
7fbc254673
fix polygon_clipper to work with vertex_adapter
2015-02-11 15:52:36 -08:00
Dane Springmeyer
89a58c5879
Merge branch 'master' of github.com:mapnik/mapnik into release/image_data_any
2015-02-11 10:01:42 -08:00
Dane Springmeyer
1dc5452c74
msvs 2014 compile fixes
2015-02-10 18:20:08 -08:00
Dane Springmeyer
2042ffd824
avoid need to instanciate expensive svg_path_generator twice
2015-02-10 12:16:01 -08:00
Dane Springmeyer
6d611b8e1a
cleanup commented code
2015-02-09 23:28:27 -08:00
artemp
1ecf3f0889
use const ref when iterating over geometries in feature
2015-02-09 13:46:01 +01:00
Jiri Drbalek
1cd5e69b3a
add direction property for markers
2015-02-07 12:23:35 +00:00
Jiri Drbalek
87cc1347c7
move normalize_angle to utils
2015-02-07 12:23:17 +00:00
Blake Thompson
6e0d6d423b
Merge branch 'master' into release/image_data_any
...
Conflicts:
include/mapnik/grid/grid_marker_helpers.hpp
2015-02-06 16:19:40 -06:00
Blake Thompson
9875335fb8
Renamed image_cast to image_copy
2015-02-06 15:27:19 -06:00
artemp
0f22fb596b
enforce geometry_type const by removing ``inline geometry_type& get_geometry(std::size_t index)
``
2015-02-06 17:13:41 +01:00
artemp
e19fdad3a6
implement vertex interface in vertex_adapter and make mapnik::geometry_type immutable
2015-02-06 16:45:51 +01:00
Jiri Drbalek
5418b8ea40
prefer hyphens as word separator for enum values
2015-02-06 15:37:28 +00:00
Jordan Hollinger
187a42f006
Merge pull request #2680 from mapycz/rm-grid_marker_helpers
...
remove redundant header
2015-02-05 17:01:36 -05:00
Blake Thompson
04d51d3696
Another small change hopefully to fix linux build isssues.
2015-02-04 21:19:59 -06:00
Blake Thompson
5966b12973
Small changes to hopefully fix compile issues on linux
2015-02-04 20:48:59 -06:00
Blake Thompson
c0fcf48019
Fixed issues with SSE compare when the threshold is greater then zero. Added several new SSE methods for unsigned integers.
2015-02-04 17:46:18 -06:00
Blake Thompson
ffb34544e6
Merge branch 'master' into release/image_data_any
2015-02-04 15:46:54 -06:00
Blake Thompson
2b8bd59d82
A large set of updates:
...
* Added new gray data types adding those to the variants and updating all the code necessary for them
* Added basic SSE to the image compare method, (only for RGBA) must be enabled with the -DSSE_MATH flag this is not yet put into the build process in any location.
* Fixed the resulting image for some TIFF visual tests, most likely they were incorrect due to fixes in TIFF reader
* Added some MAPNIK_DECL where necessary to grid rendering.
* Added support for more data types in GDAL plugin with grayscale images.
* Added views for all the new gray data types
* Updated python bindings for new gray data types.
Ref #2681
2015-02-04 15:41:58 -06:00
artemp
ae9eafa2c1
allow "stringified" nested objects and arrays as feature property
2015-02-04 18:28:47 +01:00
Jiri Drbalek
f38ee06224
remove redundant header
2015-02-04 14:46:17 +00:00
Jiri Drbalek
1fcbdc3e98
add upright value auto-down
2015-02-03 16:08:36 +00:00
artemp
9f282af61a
json - instantiate grammars using Iterator = char const* to avoid potentially expensive std::string allocations
2015-02-03 13:37:39 +01:00
Dane Springmeyer
71e7faed0d
Merge branch 'master' of github.com:mapnik/mapnik into release/image_data_any
...
Conflicts:
tests/python_tests/image_test.py
tests/python_tests/image_tiff_test.py
tests/visual_tests/images/tiff-opaque-edge-raster2-600-400-1.0-agg-reference.png
tests/visual_tests/images/tiff-opaque-edge-raster2-600-400-2.0-agg-reference.png
2015-02-03 00:05:15 -08:00
Dane Springmeyer
c361e538f7
Merge pull request #2671 from sarametz/png8_encoding_bug
...
Png8 encoding bug
2015-02-02 14:08:05 -08:00
Dane Springmeyer
074b1e2836
cleanup commented code after 89e516b493
2015-02-02 10:46:20 -08:00
artemp
d5ff3f5f2c
fix bbox extractor
2015-02-02 18:44:56 +01:00
artemp
89e516b493
unicode string grammar via boost/libs/spirit/example/qi/json/json/parser/grammar.hpp
...
update json based grammars
2015-02-02 11:22:54 +01:00
Blake Thompson
5a4f9321d0
A few updates to attempt to fix pixel getting and setting
2015-01-29 16:10:56 -07:00
Sara Metz
f38d2ee69b
Fixes bugs that cause tests in PR #2599 to fail
2015-01-30 10:40:50 +13:00
Jiri Drbalek
711fc8ccf2
fix gcc compile
2015-01-29 20:50:37 +00:00
Blake Thompson
826e13f911
Renamed background to fill, added numeric casting to fill utility, changed clog uses to MAPNIK_LOG, changed the implementation of fill some so that it only used a single template
2015-01-29 13:27:42 -07:00
artemp
e3c96666c4
json - make feature_collection_grammar "on-feature" callback based
2015-01-29 12:33:18 +01:00
Blake Thompson
de99180a44
Added new image_cast method and added its bindings to python, added two new properities to images: offset and scaling. Added way to cast between image types with offset and scaling. Added new unit tests for color and casting. Made it so that pixel setting doesn't result in overflows or underflows. Made the return of get_pixel, dynamic based on what is passed to it. Added new methods for setting pixels that are doubles and ints.
2015-01-28 20:20:14 -06:00
artemp
1f3e36c3ec
use perfect forwarding to resolve copy/move semantics of universal references - #2651
2015-01-28 12:55:57 +01:00
artemp
cf16f5e6c9
move operator<< into separate header <mapnik/util/variant_io.hpp>
2015-01-27 21:42:35 -08:00
Blake Thompson
dc931555d2
Added required include
2015-01-27 17:18:20 -06:00
Blake Thompson
bc28c12572
Found more situations where getRowSize should be used over multiplying the width by the pixel size.
2015-01-27 15:29:43 -06:00
Blake Thompson
b090882902
Added compare utility to python bindings and image_util, modified set_grayscale_to_alpha to take a color optionally.
2015-01-27 11:41:05 -06:00
Dane Springmeyer
48982c0619
Merge branch 'master' of github.com:mapnik/mapnik into release/image_data_any
...
Conflicts:
tests/python_tests/image_tiff_test.py
2015-01-26 20:09:00 -08:00
artemp
2a3af1eb40
move boost.geometry <-- mapnik::box2d<double> into separate header for better modularity and code re-use
2015-01-26 10:37:09 +01:00
Blake Thompson
31a0caf2e4
Merge branch 'master' into release/image_data_any
2015-01-25 14:09:29 -06:00
Blake Thompson
f616367ac2
Including std library that was missing.
2015-01-24 21:16:36 -06:00
Blake Thompson
5d9f047002
Fixed some issues in color and bindings where you could create a color and premultiplied was not set and it was resulting in it being assigned randomly, causing some issues at runtime.
...
Updated some images in visual tests that were orginally set prior to all tiffs being premultiplied, this was causing a slight difference in a few pixels.
Updated the tiff tests a lot.
Fixed tiff reader so that it always considers everything read from RGB or RGBA as premultiplied. This is due to the fact that RGBA reader always premultiplies the alpha no matter its original form.
Put in a fix so that the file does not exist no longer shows up in the test running.
Fixed some failing tests in the c++ test due to tiffs now always being premultiplied for RGB(A)
2015-01-24 20:48:15 -06:00
Blake Thompson
a100b2fe1f
Fixed the issues associated with TIFFs, now they always will return as premultiplied in the event they are rgba8 due to the way that the TIFF reader operates. Also added premultiply as a flag inside color class and exposed many of its components, made it so that setting and getting pixels took into consideration the state of the color and the image when dealing with the two.
2015-01-23 18:08:59 -06:00
artemp
7f0e77d172
Merge branch 'master' into large-geojson
2015-01-23 18:12:33 +01:00
Dane Springmeyer
ec111c8a27
add extra metadata to lyr desc + use for srid/keyfield in postgis - closes #2650
2015-01-22 18:44:56 -08:00
Blake Thompson
490645d2e3
Perhaps a solution to TIFF IO problems
2015-01-22 20:36:45 -06:00
Blake Thompson
51172c8fdf
Move image_data.hpp to image.hpp and renamed most everything from image_data to image alone. This might lead to the need to clean up some variables that are currently named image through out the code at some time, but I think in the long term is much better as image is a better name for the base class.
2015-01-22 11:39:37 -06:00
Blake Thompson
e353225772
Modified the name of image_data_null to image_null.
2015-01-22 10:58:01 -06:00
Blake Thompson
e01ce5b7d6
Changed image_data_gray* to image_gray* Ref #2633 .
2015-01-21 21:08:04 -06:00
Blake Thompson
22a384ef33
Moved image_data_rgba8 to image_rgba8. Ref #2633
2015-01-21 20:31:02 -06:00
Blake Thompson
e4a5424613
Merge branch 'release/image_data_any' of github.com:mapnik/mapnik into release/image_data_any
2015-01-21 19:40:23 -06:00
Blake Thompson
0f388ed68f
Changed the name of image_data_any to image_any. Moved header file for image_data_any to image_any. Ref #2633
2015-01-21 19:40:12 -06:00
Dane Springmeyer
82bc43c76f
fix stray include of graphics.hpp
2015-01-21 16:32:31 -08:00
Blake Thompson
93f835177b
Removed all the code for the previous type of image and image_32. Ref #2633
2015-01-21 17:57:16 -06:00
Blake Thompson
b57b1c12d6
Some smaller fixes that cause the proper operator to be called in visitor_create_marker. All tests now passing. Ref #2633
2015-01-21 17:09:53 -06:00
Blake Thompson
9fda26f859
Merge branch 'release/image_data_any' of github.com:mapnik/mapnik into release/image_data_any
2015-01-20 18:33:50 -06:00
Blake Thompson
badb0c9a97
This is a complete removal of code that utilizes image_32 in the library. It is a sweeping change that does some of the following:
...
* Changes all agg_renderers to use a image_data_any variant (only image_data_rgba8 is implemented currently)
* Changes the marker and marker_cache to use image_data_any images
* Changes the symbolizers so that they must be aware of the source data type they are attempting to render and the render type that is expected to be rendered into.
* Moves many utilities into image_utils, that were previously in image_32.
The kicker is that this still isn't working perfectly yet, but I am commiting so I don't have tears in case everything is lost on my computer.
Ref #2633
2015-01-20 18:30:10 -06:00
Dane Springmeyer
97869f7dc1
minor include cleanup for image_utils
2015-01-20 09:06:21 -08:00
Blake Thompson
2439f1b298
A whole lot of changes. #Ref 2633
2015-01-20 10:48:33 -06:00
artemp
5a7a285216
extraxt_bounding_box_grammar - add generic json support to deal with arbitary key:value's in GeoJSON
2015-01-20 12:05:35 +01:00
artemp
9a74a55dd6
formatting
2015-01-20 11:29:58 +01:00
artemp
a408a84fb0
ignore invalid bounding boxes from "geometry": null
2015-01-19 22:04:21 +01:00
artemp
15a83ff54d
extract bounding boxes from GeoJSON - re-implement grammar to store offset and size of "Feature" elements
2015-01-19 18:09:23 +01:00
Blake Thompson
aa03cf4f7c
Implemented a new get_pixel method to go along with the set_pixel method in image_util. Ref #2633
2015-01-16 22:15:33 -06:00
Blake Thompson
a002139e18
Added set_pixel to visitor pattern and moved it to image_util. Added exception throwing in composite only if debug flags are on.
...
Ref #2633
2015-01-16 18:26:56 -06:00
Blake Thompson
1470bea9cb
Migrated composite_pixel out of image_32, it is now in image_utils. Ref #2633
2015-01-16 16:48:43 -06:00
Blake Thompson
0b2c4e57cf
Merge_rectangle has met the wood chipper. Ref #2633
2015-01-16 16:04:02 -06:00
Blake Thompson
a7b8ca2888
Moved set_rectangle out of image_32 into image_util.
...
Ref #2633
2015-01-16 15:36:53 -06:00
Blake Thompson
35be6117c8
Merge branch 'master' into release/image_data_any
2015-01-16 13:09:25 -06:00
Blake Thompson
aebb6fee58
Removed the background and set/get background from image_32 class. Removed clear method from image_32. Added new fill method for image_data_any, that allows many generic types to fill an image.
...
Ref #2633
2015-01-16 13:06:52 -06:00
artemp
b15224af1b
add <iomanip> for std::setprecision
2015-01-16 17:19:17 +01:00
artemp
da960fea33
use std::advance to work with std::iterators
2015-01-16 16:40:28 +01:00
artemp
b6cd3b37ef
store {bbox, offset} to match boost.geometry rtree instantiation
2015-01-16 16:24:31 +01:00
artemp
8b19793dc8
fix grammar (use iter_pos parser instead of hacking raw[] directive) + cleanups
2015-01-16 10:05:02 +01:00
artemp
785cf5c09f
extract_bounding_box grammar initial impl
2015-01-16 09:48:57 +01:00
Blake Thompson
33ccc12355
Moved set_color_to_alpha and set_grayscale_to_alpha to image_util.
...
Ref # 2633
2015-01-15 20:26:20 -06:00
Blake Thompson
3b1c99ff1b
Moved set_alpha to src/image_util.cpp and out of image_32. Added a boolean response to premultiply_alpha and demultiply_alpha so that if it is changed in set_alpha and other locations like the python bindings for composite that the image can be restored to its original state. Removed blend from python bindings.
...
Ref #2633
2015-01-15 17:57:21 -06:00
Blake Thompson
1f540b42c6
Removed the set_rectangle_alpha code from image_32. Added new blend using composite to python bindings to replace it by doing src_over with composite.
...
Ref #2633
2015-01-15 13:01:32 -06:00
Dane Springmeyer
cf646030f3
move is_solid to hpp for now to avoid linking errors
2015-01-15 10:21:11 -06:00
Dane Springmeyer
61bc705117
fix linking error with saving image
2015-01-15 10:14:01 -06:00
Blake Thompson
7ce7416999
Added is_solid to image_utils. It is currently built to support the eventual use of image_view_any and image_data_any, but for a limited time supports the passing of image_view_rgba8 and image_data_rgba8.
...
Ref #2633
2015-01-15 10:14:00 -06:00
Dane Springmeyer
364fb4961b
fix handling of premultiplied pixels during rendering
2015-01-14 21:04:05 -08:00
Dane Springmeyer
b55d5def0d
sync with latest master/3.x
2015-01-14 18:35:40 -08:00
Blake Thompson
202a0e8e5f
Added a lot of premultiply_alpha functions to attempt to have proper premultiplication of data prior to compositing. There still seem to be some errors in the resulting images, but I am not quite sure what they are yet.
2015-01-14 18:29:00 -06:00