artemp
008168f75c
image_data - ref #1927
...
* store image width and height in dimensions object
* allow specifying max_size for width and height (default 0xffff)
* throw if width or height are out of range - 0...max_size
2014-12-19 11:52:40 +01:00
Dane Springmeyer
c051f61646
dont set nodata for image_data_rgba8: fixes tiff_reprojection-1 visual test
2014-12-17 12:26:23 -08:00
Dane Springmeyer
387b8f85d5
new dot symbolizer for fast rendering of points - refs #1651 mapbox/mapnik-vector-tile#62 #2612
2014-12-17 12:01:28 -08:00
Dane Springmeyer
17d3bd8a9d
consistent std::move in image data move ctor
2014-12-17 12:01:28 -08:00
Joel Brown
52d4b0edfd
change config_error to std::runtime_error in scale_hsla struct
2014-12-17 12:01:05 -08:00
Dane Springmeyer
b86a2d4c7e
remove debug prints
2014-12-17 08:52:04 -08:00
Dane Springmeyer
ffe8f71008
refactor premultiplication handling in raster rendering
2014-12-17 08:52:03 -08:00
artemp
160e9bb9b5
warp - initialise target with nodata if available
2014-12-17 14:54:54 +01:00
artemp
0d7fbdc25d
implement image_data_warp_dispatcher + fix hardcoded nodata
2014-12-17 14:26:17 +01:00
artemp
78fbc6df17
expose warp_image templated method
2014-12-17 14:24:58 +01:00
artemp
1df88908e4
refactor warping code to work with different pixel_types and minimise code duplication
2014-12-16 12:04:18 +01:00
artemp
7518459ba1
remove redundant case
2014-12-16 12:03:54 +01:00
artemp
110841fc55
image_scaling - re-factor set_scaling_method for re-use accross code base
2014-12-16 10:37:50 +01:00
artemp
979d706c26
move image_scaling traits into separate header to enable code sharing
2014-12-16 10:13:40 +01:00
artemp
89a84150ee
use std::move
2014-12-15 14:58:00 +01:00
Blake Thompson
0d2eb9cb5f
Updates for Ref #2594 and #2592 (Related to #2491 )
...
* Added support for scanline, stripped and tiled
* Added new configuration options for TIFF:
- method
- tile_height (Default 0)
- tile_width (Default 0)
- rows_per_strip (Default 0)
* Removed 'scanline' configuration option for TIFF.
* Changed RGBA TIFFs to be ASSOCALPHA rather then UNASSOCALPHA
2014-12-15 02:52:32 +00:00
artemp
85d954ab6a
make composite method templated and fix visibility issue
...
(reverts 1ff4125e92
)
2014-12-12 11:39:36 +01:00
artemp
5dd87de782
template scale_image_agg on image_data_type to squash code duplication
2014-12-11 18:54:32 +01:00
artemp
6b7ae6d700
use image_data_dispatcher to dispatch composite/colorize based on image_data_type
2014-12-11 11:07:21 +01:00
artemp
9caf17e397
correct image_data typo
2014-12-11 11:05:17 +01:00
artemp
f921e1eef4
raster_colorizer - template colorize method on image_data type
2014-12-11 10:10:32 +01:00
artemp
74c96f0bda
make bounding_box return optional<box2d<double>> to be consistent with current behavour
2014-12-10 12:53:39 +01:00
artemp
2efde962aa
image_reader - add bounding_box virtual method
2014-12-10 10:44:51 +01:00
artemp
4b1204a3b8
correct alloc size + prefer std::copy over memcpy
2014-12-10 10:34:12 +01:00
artemp
917d346093
use RAII for resource management
2014-12-10 09:44:37 +01:00
artemp
ef64b4937c
Revert "avoid allocating memory"
...
This reverts commit 665c2f5bc0
.
2014-12-10 09:39:08 +01:00
artemp
665c2f5bc0
avoid allocating memory
2014-12-09 19:22:19 +01:00
artemp
9bf629c9b8
declare tiff callbacks inline
2014-12-09 17:30:50 +01:00
Dane Springmeyer
cf4f775855
Merge branch 'master' of github.com:mapnik/mapnik into image_data_any
2014-12-09 10:31:19 -05:00
Dane Springmeyer
653cc08500
fix msvs compile by using explicit assigment operator - closes #2588
2014-12-09 10:27:05 -05:00
Dane Springmeyer
4b2ad9e65f
port image_data fixes from image_data_any branch
2014-12-09 10:14:06 -05:00
artemp
12f051bf56
image_data - fix setRow implementation
2014-12-09 12:22:44 +01:00
Dane Springmeyer
cc2cf2876f
Merge branch 'master' of github.com:mapnik/mapnik into image_data_any
2014-12-05 09:45:12 -05:00
Dane Springmeyer
d6e9126132
fix linking of scale_image_agg - refs #2587
2014-12-05 09:43:57 -05:00
Blake Thompson
4d159a3900
fixin' okie spelling
2014-12-04 18:13:11 -05:00
Blake Thompson
bf5c532269
Series of changes for the tiff encoder:
...
* Added configuration options for the TIFF encoder. The options are:
- compression: adobe_deflate(default), deflate, lzw, none
- zlevel: 0-9
- scanline: 1,0 (Forces scanline encoding)
* Fixed bug in encoder with scanline where memory was being modified
* by TIFFWriteScanline. A buffer is now created for each row to prevent
* modification of the underlying image_data.
2014-12-04 17:11:33 -05:00
Jiri Drbalek
2282fab53e
use font-feature-settings per text_item
2014-12-04 21:19:13 +00:00
artemp
0006de7420
image_data - fix copy constructor
2014-12-04 18:26:58 +01:00
Blake Thompson
e6c5f705e5
Fixed error with selection criteria for stripe vs tiled, added modulus check on length and width to select striped in some situations, changed bitspersample for RBGA. (ref #2491 )
2014-12-04 10:48:19 -05:00
artemp
38da080f82
make concrete image_data type names more expressive and explicit about color channels/depth:
...
image_data_32 -> image_data_rgba8
image_data_8 -> image_data_gray8
image_data_16 -> image_data_gray16
image_data_float32 -> image_data_gray32f
NOTE: currently image_data_gray16::pixel_type = std::int16_t (signed 16 bit int) to match GDAL
should we support unsigned types?
2014-12-04 11:02:42 +01:00
artemp
06ab69a08e
further simplify raster rendering code
2014-12-04 10:33:28 +01:00
Blake Thompson
cdaca0ba11
Updated tiff processing so now the encoder will utilize different types of data as well as will use Tile based encoding in most situations, if the image is large will revert to scanline based encoding.
2014-12-03 18:41:49 -05:00
Dane Springmeyer
954d0db46c
Merge branch 'master' of github.com:mapnik/mapnik into image_data_any
2014-12-03 13:53:14 -05:00
artemp
de7a268333
read single band as int16 then agg_scale and colorize in gray16 color space, output rgb8 (aka image_data_32)
...
NOTE: proof-of-concept needed re-factoring/duplicate code removal
2014-12-03 18:19:44 +01:00
artemp
1df9d89a70
add to image_reader and implement empty (placeholder)
...
```image_data_any read(unsigned x, unsigned y, unsigned width, unsigned height) final```
in png/jpeg/webp/tiff readers
2014-12-03 10:44:56 +01:00
artemp
33607145a6
add image_data_null which is cheap to construct (no mem alloc)
...
add default ctor to image_data_any -> image_data_null
2014-12-03 10:26:21 +01:00
artemp
83aa06e329
move image_data_any into seprate header
2014-12-03 10:12:46 +01:00
Dane Springmeyer
1ff4125e92
fix visibility of mapnik::composite function to python bindings - refs #2587
2014-12-03 00:43:04 -05:00
Dane Springmeyer
ce7085ab63
remove duplicate/uneeded mapnik::raster ctor
2014-12-03 00:34:49 -05:00
Dane Springmeyer
4d39d2aac1
iwyu
2014-12-02 14:40:03 -05:00
Dane Springmeyer
946434002f
handle/throw on invalid encoding for ucnv_open
2014-12-02 14:21:36 -05:00
Dane Springmeyer
9d5e46a1f9
drop unsupported geotiff output - refs #967
2014-12-02 13:28:02 -05:00
Dane Springmeyer
d77463d1b8
use c++11 typed enum in vertex.hpp
2014-12-02 08:09:36 -08:00
artemp
19e3ce9035
gdal : experimenting with fetching gray scale single band as image_data_float32
2014-12-02 15:56:40 +01:00
Dane Springmeyer
d92ba2e1b0
more c++11 typed enums
2014-12-01 22:20:18 -08:00
artemp
6fec43bf9e
gdal - read single band as image_data_float32
...
(scaling/compositing FIXME)
2014-11-28 12:51:23 +01:00
artemp
bf9c99e3d3
initial image_data_any implentation (work-in-progress)
2014-11-26 12:22:36 +01:00
artemp
83bad7a816
feature_collection_grammar: fix a mistake - #2582
2014-11-24 12:42:24 +01:00
artemp
c5ab5f68d9
feature_collection_grammar: make argument order consistent across parsing rules - #2582
2014-11-24 12:37:37 +01:00
artemp
ee9481cb38
feature_collection_grammar : allow passing start_id at parse time - #2582
2014-11-24 12:26:11 +01:00
artemp
d1e0078abf
use qi::locals<std::size_t> for per parse feature id generation and remove generate_id phoenix function
...
(NOTE: ids start from 1)
2014-11-24 11:18:45 +01:00
artemp
333965b588
update copyright year
2014-11-20 15:25:50 +01:00
artemp
6adf62ec5a
image_data : remove unused owns_data_ field
2014-11-20 15:08:07 +01:00
artemp
f7649c27b0
image_data : re-factor (ref #2491 )
...
* factor out raw image data alloc/dealloc into separate detail::buffer
* remove shallow ctor
* remove no-op dtor from image_data
2014-11-20 14:36:03 +01:00
artemp
4f3521ac24
image_data: use std::size_t + various cleanups
2014-11-20 12:46:16 +01:00
artemp
79bbe13c0d
mapnik::raster : allow passing image_data into ctor
2014-11-20 10:31:56 +01:00
Jiri Drbalek
60ea198aa3
marker line placement rewrite
2014-11-13 12:51:36 +00:00
Jiri Drbalek
849a58cd80
make vertex_cache::current_segment_angle() public
2014-11-13 12:51:36 +00:00
Jiri Drbalek
000c2713ed
make marker placement methods noncopyable, movable
2014-11-13 12:51:36 +00:00
Jiri Drbalek
69fc93d87a
add move constructor to vertex_cache
2014-11-13 12:51:36 +00:00
Jiri Drbalek
3013197de7
move vertex_cache and tolerance_iterator from text directory
2014-11-13 12:51:36 +00:00
Dane Springmeyer
e397345bce
map.register_fonts recurse should be optional like font_engine
2014-11-07 19:05:28 -05:00
Dane Springmeyer
bff4465976
fix msvs compiler error - closes #2560
2014-11-04 17:50:43 -05:00
Dane Springmeyer
22bd30230a
remove unneeded option
2014-11-04 11:41:23 -05:00
Jiri Drbalek
7a89f1ab02
fix default value condition
2014-11-03 15:35:16 +00:00
Dane Springmeyer
aa85a4ff1e
default to transparent not pink if color expression fails
2014-10-27 09:23:27 -07:00
Jordan Hollinger
d524738ad9
Remove point symbolizer support from group symbolizer.
2014-10-27 09:43:42 -04:00
Jordan Hollinger
ee692eea73
Merge branch 'master' of github.com:mapnik/mapnik into group-markers
...
Conflicts:
include/mapnik/grid/grid_marker_helpers.hpp
include/mapnik/marker_helpers.hpp
include/mapnik/renderer_common/process_group_symbolizer.hpp
src/cairo/process_markers_symbolizer.cpp
src/renderer_common/process_group_symbolizer.cpp
tests/visual_tests/images/group-symbolizer-1-512-512-1.0-agg-reference.png
tests/visual_tests/images/group-symbolizer-1-512-512-1.0-cairo-reference.png
tests/visual_tests/images/group-symbolizer-1-512-512-2.0-agg-reference.png
tests/visual_tests/images/group-symbolizer-1-512-512-2.0-cairo-reference.png
2014-10-27 09:29:45 -04:00
Jordan Hollinger
16b1b5a77c
Support markers in group symbolizer.
2014-10-27 07:46:44 -04:00
Jordan Hollinger
1b15e53b63
Refactor markers dispatchers to use a common base class to share code.
2014-10-27 07:46:43 -04:00
artemp
71085323a7
Merge branch 'peucker' of git://github.com/MapQuest/mapnik into MapQuest-peucker
2014-10-24 15:20:05 +01:00
artemp
456ebe006b
fix [-Wparentheses] warning
2014-10-23 09:51:45 +01:00
Dane Springmeyer
aae4a20ec9
fix various -Wunused-parameter warnings
2014-10-21 20:23:17 -07:00
Dane Springmeyer
d25f0c316a
silence more warnings
2014-10-21 17:44:47 -07:00
Dane Springmeyer
83588937b9
silence boost warnings
2014-10-21 16:37:27 -07:00
artemp
295f15bd51
ImageData -> image_data (remove camel-case)
2014-10-21 16:06:27 +01:00
artemp
fdd646aa5b
more c++
2014-10-21 15:52:01 +01:00
artemp
30907b3dd1
use c++ std::fill/copy instead of c-style memset/memcpy
2014-10-21 14:57:34 +01:00
artemp
107bad002d
c++11 - use c++ style casts + cleanups + use std::fill
2014-10-21 14:51:27 +01:00
Dane Springmeyer
18183aed2a
fix a few -Wunused-parameter warnings
2014-10-20 22:28:40 -07:00
Dane Springmeyer
02b7537d6d
remove unused/supported second arg to parse_expression
2014-10-20 22:20:04 -07:00
artemp
52d0e3e641
expression grammar - add boolean_constants and floating_point_constants symbols
...
```python
>>> import mapnik
>>> f=mapnik.Feature(mapnik.Context(),1)
>>> expr = mapnik.Expression("rad_to_deg * pi")
>>> expr.evaluate(f)
180.0
```
2014-10-20 17:57:08 +01:00
artemp
1ed3d24193
update variant.hpp (use std::forward<T> for perfect forwarding - via @DennisOSRM)
2014-10-20 15:48:47 +01:00
Jiri Drbalek
4549c0b63c
ignore scale_factor for geometry-transform scale
2014-10-18 10:31:07 +00:00
artemp
2516d6dd43
default to GLOBAL alignment
2014-10-17 21:23:00 +01:00
artemp
ea9cc4c54b
remove cast
2014-10-17 21:22:36 +01:00
artemp
6eb65434c5
upgrade to new get<value_type, keys::key>
2014-10-17 20:45:15 +01:00
artemp
35a044578b
re-implement assign_value to use target property type
2014-10-17 18:45:08 +01:00
artemp
bbdc136b5b
fix names + update property_meta_type tuple
2014-10-17 18:44:26 +01:00
artemp
b3e3a4f6bd
update get<>() to use values from symbolizer_default_values.hpp
2014-10-17 10:39:40 +01:00
artemp
9d87f7715b
symbolizer properties default values
2014-10-17 10:38:54 +01:00
Dane Springmeyer
b90763469a
iwyu
2014-10-15 19:03:36 -07:00
Dane Springmeyer
9684880062
c file io wrapper: no need for explicit move + reset seek after checking size in ctor
2014-10-15 11:36:25 -07:00
Dane Springmeyer
e1c1371935
Merge pull request #2514 from mapycz/perf-tolerance-iterator
...
exponential tolerance_iterator
2014-10-14 20:49:19 -07:00
Dane Springmeyer
8b441cbd2d
fix mapnik/node-mapnik#332
2014-10-14 20:30:55 -07:00
Dane Springmeyer
7a58a9413d
remove uneeded include
2014-10-14 20:23:21 -07:00
Jiri Drbalek
f95f200ac1
make tolerance_iterator exponential
2014-10-14 10:47:45 +00:00
Dane Springmeyer
09f91a24a0
Merge pull request #2523 from mapycz/halign-adjust-immutable
...
halign adjust with immutability of style objects in mind
2014-10-13 18:47:37 -07:00
Dane Springmeyer
ad91c56718
Avoid BOOST_MPL_LIMIT_VECTOR_SIZE redefined warning
2014-10-13 18:06:53 -07:00
Dane Springmeyer
9a78c6dfe1
improve register_datasources + drop filesystem v2 support since v3 is default in boost >= 1.46
2014-10-13 17:43:14 -07:00
Dane Springmeyer
66ce021ad5
cairo_gradient: fallback to radial if the class is misused to prevent crash on uninitalized pattern
2014-10-13 17:26:32 -07:00
Dane Springmeyer
1f1c8a322b
initialize all member variables
2014-10-13 17:23:45 -07:00
Dane Springmeyer
4b689ef05d
fix casting to doubles
2014-10-13 17:23:30 -07:00
artemp
f8031dec96
no need to initialise `evaluated_xxx' structures as initialisation happens at evaluation step
2014-10-13 14:11:23 +01:00
artemp
7969a1c13a
use more appropriate header
2014-10-13 13:23:14 +01:00
Jiri Drbalek
1252369292
add horizontal-alignment="adjust" with immutability of style objects in
...
mind
2014-10-13 12:16:48 +00:00
artemp
4fe0c249a6
make hb_feature_t EqualityComparable
and fix font_feature_settings operator==
2014-10-13 11:22:28 +01:00
Dane Springmeyer
6b1c4d00e5
MAPNIK_DECL font_feature_settings
2014-10-12 22:00:25 -07:00
Dane Springmeyer
885a98f9c1
improve handling of format properties - refs #2516
...
- changes evaluated_format_properties_ptr to unique_ptr
- refactors group symbolizer helper to keep scope by
having each "thunk" own its helper
- glyph_info can now be noncopyable
- format node children now need an owner for their
evaluated_format_ptr so the enclosing parent layout
now allocates and holds pointers in a deque
- plus other noncopyable/move constructor fixes
2014-10-12 21:41:59 -07:00
Dane Springmeyer
35b4518b13
iwyu
2014-10-12 16:35:35 -07:00
Dane Springmeyer
a9f58c70b4
shuffle complexity into layout constructor
...
- should reduce mistakes in refactoring
- gives top level ownership of evaluated_format_properties_ptr to a layout node (#2516 )
- not sure ^^ if this actually keeps it in scope enough for rendering?
- moves data transformation functions off of text_symbolizer_properties
2014-10-12 16:07:26 -07:00
Dane Springmeyer
cf2df4f0cc
harfbuzz shaper: return early if itemizer returns empty list
2014-10-12 15:48:15 -07:00
Dane Springmeyer
f3eba54078
noncopyable glyph_info - refs #2516
2014-10-12 14:24:57 -07:00
Dane Springmeyer
2000c1713d
in place construction of glyph_positions
2014-10-12 13:54:07 -07:00
Dane Springmeyer
4e7feaf747
move glyph_positions to new cpp
2014-10-12 13:46:35 -07:00
Dane Springmeyer
94aa67b0af
vertex_cache: in place construction of segments
2014-10-12 13:30:24 -07:00
Dane Springmeyer
e4c895d4c1
zero copy usage of text_line
2014-10-12 13:23:03 -07:00
Dane Springmeyer
a648538bcd
add more code comments to placement_finder to help explain layouts
2014-10-12 12:18:59 -07:00
Dane Springmeyer
f1c3d0c3ce
iwyu in group_symbolizer_helper.hpp
2014-10-12 12:00:00 -07:00
Dane Springmeyer
a8c8ea9ac4
reserve space for glyph_pos in renderer prepare_glyphs
2014-10-11 22:59:56 -07:00
Dane Springmeyer
3d142c2712
move evaluate_text_properties to standalone function - refs #2516
2014-10-11 22:48:00 -07:00
Dane Springmeyer
e6a66aaaba
finish work to pass font_feature_settings by value - refs #2516
2014-10-11 22:39:40 -07:00
Dane Springmeyer
a61364d263
revert halign support - refs #2426
2014-10-11 20:03:56 -07:00
Dane Springmeyer
f7849cea09
make evaluated_text_properties noncopyable
2014-10-11 19:28:04 -07:00
Dane Springmeyer
477d6cc7ee
zero-copy text_item insertion
2014-10-11 19:12:15 -07:00
Dane Springmeyer
b455cc9098
give glyph_info better ctor
2014-10-11 17:52:54 -07:00
Dane Springmeyer
eabdf46118
drop unwise glyph_info caching - reverts 99a46f6910
- re-opens #2334
2014-10-11 17:32:41 -07:00
Dane Springmeyer
ba285aa9fa
remove unused (after 8bc7a56cda
) font_face::char_height_
2014-10-11 15:55:15 -07:00
Dane Springmeyer
b275144004
make cairo_context.add_text more like agg::text_renderer
2014-10-11 13:08:28 -07:00
Dane Springmeyer
e1eb9fa5b1
reduce pointer usage in text renderer - refs #2516
2014-10-10 18:01:24 -07:00
Dane Springmeyer
8bc7a56cda
use real max glyph height
...
- avoids breakage on fonts lacking an `X` glyph (#2506 )
- avoids needing to create and mutate a temporary glyph (#2516 )
- lots of minor visual changes - mostly improvements notably more correct collision boxes for lines with tall glyphs
2014-10-10 15:18:11 -07:00
artemp
74e872c48b
avoid storing evaluated text properties in text_symbolizer_properties (all style related strucures must be read-only)
...
make process(..) method const
2014-10-10 12:38:06 +01:00
Dane Springmeyer
c6ed108a72
start marking as much of the text structures as const as possible - refs #2516
2014-10-09 23:00:39 -07:00
Dane Springmeyer
2d88f736fe
remove uneeded access to format tree
2014-10-09 20:51:43 -07:00
Dane Springmeyer
c26c60e48e
remove set_old_style_expression
2014-10-09 20:51:43 -07:00
Dane Springmeyer
344108c621
const not viable yet on itemizer
2014-10-09 20:00:35 -07:00
Dane Springmeyer
364af033a2
stash work on trying to convert font_feature_settings to be passed by value
2014-10-09 19:23:11 -07:00
Dane Springmeyer
2e4a9cfaf2
itemizer should be const in icu_shaper
2014-10-09 18:44:28 -07:00
Dane Springmeyer
536b23bfde
fix uneeded pointer indirection with glyph_info/glyph_position
2014-10-09 18:38:29 -07:00
Dane Springmeyer
1fead3396b
cleanup unused clipped_ member of base_symbolizer_helper after 9835057b0f
2014-10-09 11:40:30 -07:00
Dane Springmeyer
3479fcaec5
finish templating the json geometry generator on geometry container
2014-10-09 00:48:58 -07:00
Dane Springmeyer
7bc956e9e8
fix mis-spelling of fwd declare for text_placement_info_dummy
2014-10-08 16:51:33 -07:00
Dane Springmeyer
c4857c640b
clean up string handling in font_set::add_face_name
2014-10-08 16:46:48 -07:00
Dane Springmeyer
1f29ce7d3d
back to using shared_ptr for holding text_placement_info
2014-10-08 16:28:07 -07:00
Kevin Kreiser
2178f1602c
note to self. read coding convention guidelines before actually writing code.
2014-10-08 15:05:38 -04:00
Kevin Kreiser
96bf063b1c
standardize commenting convention. i prefer lower case no space (ie laziness) but that doesnt seem to be the norm.
2014-10-08 14:09:07 -04:00
Kevin Kreiser
a5bedfbae3
fix some whitespace issues. somehow tabs were getting in there
2014-10-08 14:05:25 -04:00
Kevin Kreiser
b7d3a798cd
add ramer douglas peucker to the list of simplify converters. also add tests for the simplify converters but so far only testing peucker. also add a method to the wkt factor for converting geometry container to wkt
2014-10-08 13:47:36 -04:00
Dane Springmeyer
3a7c8ff3fb
make scoped_state noncopyable
2014-10-08 08:00:59 -07:00
artemp
37f6aadcbb
template json::(multi_)geometry_grammar on Geometry and GeometryContainer respectfully
2014-10-08 11:01:28 +01:00
artemp
7f219b4f8b
use phoenix v3 syntax + cleanups
2014-10-08 11:00:25 +01:00
artemp
66252075e9
use <type_traits>
2014-10-08 10:37:35 +01:00
artemp
29c7c5ac3e
throw std::runtime_error on expectation failure
2014-10-07 11:21:44 +01:00
artemp
5990eecec5
better rules names
2014-10-07 11:21:05 +01:00
Dane Springmeyer
c2fe4a14be
drop useless template usage for has_key
2014-10-06 23:21:13 -07:00
Dane Springmeyer
7ce776a79c
fix handling of shield-text-opacity/text-opacity - closes #2507
2014-10-06 21:52:29 -07:00
Dane Springmeyer
1ae43a25ff
text_properties code cleanup - pregame for #2504
2014-10-06 16:59:49 -07:00
jhollinger2
5ca07a26d1
Refactor marker helpers for agg and grid renderer.
2014-10-06 14:03:48 -04:00
Jordan Hollinger
8405400776
Pass recentered transform to markers_placement_finder in vector_markers_rasterizer_dispatch_grid. Update expected grids for test case.
2014-10-06 09:16:16 -04:00
Dane Springmeyer
4aec64871d
add missing header
2014-10-03 20:00:33 -07:00
Dane Springmeyer
e0ba9e9a8c
use common dispatch for symbolizers
2014-10-03 19:07:08 -07:00
Dane Springmeyer
ebf7a61135
fix unsafe return of temporary - closes #2493
2014-10-03 16:39:25 -07:00
Dane Springmeyer
2925a70046
c++ style / delay std::string creation in xml loading
2014-10-03 16:39:25 -07:00
artemp
e8b3083a6a
remove std::function usage in text_properties
2014-10-03 16:00:05 +01:00
Dane Springmeyer
f586f6909f
make vertex_cache noncopyable
2014-10-02 15:41:21 -07:00
Dane Springmeyer
109b45a0ad
c++ style
2014-10-02 15:37:55 -07:00
Jiri Drbalek
5861980f91
add wrap-character support to Layout node of TextSymbolizer
2014-10-02 18:34:37 +00:00
Dane Springmeyer
d4f11bd80e
fix miniz visibility with -fvisibility=hidden
2014-10-02 10:27:17 -07:00
artemp
2bab0512ff
refactor vertex_cache to use unique_ptr's and less copying
2014-10-02 16:36:50 +01:00
Dane Springmeyer
887f5a982b
remove unneeded include
2014-10-01 21:08:36 -07:00
Dane Springmeyer
687a33575c
fast, non-caching check if a font can be opened and read
2014-10-01 20:32:03 -07:00
Dane Springmeyer
ad7e619ba3
remove state from freetype_engine - now fully static
2014-10-01 20:03:03 -07:00
Dane Springmeyer
898d58c4f5
face_set_ptr can be unique rather than shared
2014-10-01 19:01:26 -07:00
Dane Springmeyer
d29add9db3
use face_manager_freetype typedef everywhere
2014-10-01 18:54:11 -07:00
Dane Springmeyer
d96093d3aa
rebase with master
2014-10-01 18:45:28 -07:00
Dane Springmeyer
bef269bc01
Add file_io.hpp
2014-10-01 18:44:19 -07:00
Dane Springmeyer
23cb5dd47d
new util::file class wrapping cstdio + more library usage
2014-10-01 18:31:04 -07:00
Dane Springmeyer
3cdd42bab4
fix include
2014-10-01 18:29:59 -07:00
Dane Springmeyer
e6fe3cd8a6
new font_library raii class
2014-10-01 18:19:26 -07:00
Dane Springmeyer
83533c16c6
fix add_layer move signature - refs #2453
2014-10-01 14:20:58 -07:00
Dane Springmeyer
aae56fa387
avoid style, layer, and fontset copies in load_map - refs #2453
2014-10-01 14:09:09 -07:00
Dane Springmeyer
9b2c14466c
explicit move ctor for feature_type_style
2014-10-01 13:54:44 -07:00
Dane Springmeyer
9ecdc839b5
c++ style
2014-10-01 11:24:41 -07:00
artemp
1d5f1f12f0
remove static std::map<marker_placement_e, boost::function<markers_placement(Locator &locator,Detector &detector,markers_placement_params const& params)>
...
^ it was hurting compile times badly
2014-10-01 11:26:14 +01:00
Dane Springmeyer
98f89ce2fd
Merge pull request #2472 from zerebubuth/warning_2468
...
Fix compiler warning about uninitialised variable.
2014-09-30 19:16:54 -07:00
Dane Springmeyer
4cbc139689
remove boost::format usage
2014-09-30 18:35:07 -07:00
Matt Amos
e759b61b07
Fix compiler warning about uninitialised variable.
2014-10-01 02:12:19 +01:00
Dane Springmeyer
dfc7ba86d3
remove unused typedef
2014-09-30 17:00:52 -07:00
Dane Springmeyer
ad43b37672
Merge branch 'master' of github.com:mapnik/mapnik into localized-font-cache
2014-09-30 14:42:15 -07:00
Dane Springmeyer
09b02ddc17
Merge branch 'master' of github.com:mapnik/mapnik into localized-font-cache
...
Conflicts:
src/build.py
2014-09-30 14:42:01 -07:00
Dane Springmeyer
f34d12094c
new files
2014-09-30 12:50:42 -07:00
Dane Springmeyer
822d3a5bce
break apart symbolizer.hpp + fwd declars + svg output grammar impl
2014-09-30 12:50:08 -07:00
Dane Springmeyer
985ddb3aeb
fix compile of (currently unsed) symbolizer_grammar.hpp
2014-09-30 12:12:58 -07:00
Dane Springmeyer
6be1eb94c2
Revert "ditch boost/function" - refs #2465
...
This reverts commit 24052580b9
.
2014-09-30 10:45:56 -07:00
Dane Springmeyer
1452c5b92f
Merge pull request #2466 from mapnik/reduce-compile-times
...
reduce compile time by minimizing template instantiations
2014-09-30 10:45:39 -07:00
artemp
9c0046fb61
reduce compile time by minimizing template instantiaions
2014-09-30 14:44:02 +01:00
Dane Springmeyer
40a1189357
chip away at complexity of marker_helpers.hpp
2014-09-29 19:32:22 -07:00
Dane Springmeyer
d111dcbed6
iwyu
2014-09-29 18:47:05 -07:00
Dane Springmeyer
dc57849b7d
geometry container typedef fixing
2014-09-29 18:40:57 -07:00
Dane Springmeyer
c654994dbc
remove obsolete text_path.hpp header
2014-09-29 18:23:46 -07:00
Dane Springmeyer
d2a7fda55d
fix visibility of regex_match/replace nodes
2014-09-29 18:12:39 -07:00
Dane Springmeyer
24052580b9
ditch boost/function
2014-09-29 17:51:05 -07:00
Dane Springmeyer
d0b167affc
iwyu shuffle
2014-09-29 17:14:40 -07:00
Dane Springmeyer
9b0d6fc702
iwyu
2014-09-29 17:01:40 -07:00
Dane Springmeyer
3ee609112a
using pimpl to isolate boost::regex headers - refs #2439
2014-09-29 16:48:19 -07:00
Dane Springmeyer
a41978f439
iwyu
2014-09-29 13:50:21 -07:00
Dane Springmeyer
ba689b379e
iwyu
2014-09-29 13:50:14 -07:00
Dane Springmeyer
848370c678
speed up compile / move iomanip to cpp - refs #2439
2014-09-29 13:49:56 -07:00
Dane Springmeyer
a1b98e6238
speed up compile / avoid boost/math - refs #2439
2014-09-29 13:49:22 -07:00
Dane Springmeyer
89f64f6b97
avoid spirit usage in function_call.hpp - refs #2439
2014-09-29 13:12:46 -07:00
artemp
8ff17378a4
make index constexpr
2014-09-29 21:03:34 +01:00
artemp
752d9def3c
remove unused //#include <mapnik/expression_node.hpp>
2014-09-29 21:03:09 +01:00
Dane Springmeyer
688e97e148
move dasharray parser to cpp file - refs #2439
2014-09-29 12:07:15 -07:00
artemp
953f4b700c
remove unused mpl header
2014-09-29 19:29:44 +01:00
artemp
14ba64174b
make arguments noncopyable
2014-09-29 14:07:39 +01:00
artemp
95d13e0b3d
Merge branch 'master' into vertex-converter
2014-09-29 12:34:54 +01:00
artemp
7f81fc9146
cleanup
2014-09-29 12:22:54 +01:00
artemp
e57f66b97d
re-implement vertex_converters using c++11 feature (removes dependency on boost::mpl/boost::fusion)
2014-09-29 11:58:04 +01:00
Dane Springmeyer
7b97e3ace8
unique_ptr for font_face_set
2014-09-28 22:35:08 -07:00
Dane Springmeyer
e21e8b6696
c++ style
2014-09-28 22:20:59 -07:00
Dane Springmeyer
d1adabf7d5
3.x port of localized font caching and then some
2014-09-26 19:54:07 -07:00
Dane Springmeyer
d3d6b09516
fix windows compile - apparently numeric_limits is not viably constexpr - closes #2452
2014-09-26 16:57:16 -07:00
artemp
130e621ace
use c++11 in vertex_converters (work-in-progress)
2014-09-26 12:41:03 +01:00
Dane Springmeyer
385a77fc47
pass map to renderer common (viable after 60a55cb48
, needed for upcoming font changes)
2014-09-25 22:37:43 -07:00
Dane Springmeyer
59eb03a346
simplify parse error in xml
2014-09-25 22:20:44 -07:00
Jiri Drbalek
13f950159f
fix text symbolizer property data binding
2014-09-25 18:26:36 +00:00
Dane Springmeyer
60a55cb48b
noncopyable renderer_common (needed for upcoming font work)
2014-09-24 22:46:19 -07:00
artemp
4be6ca37e9
c++11 - use auto
2014-09-23 18:49:31 +01:00
artemp
7a1cc786fc
position_grammar - re-order rules to allow expectation operators
2014-09-23 15:12:22 +01:00
artemp
2f319e92cc
use error_handler across json parsers
2014-09-23 14:58:10 +01:00
artemp
1382e57ebe
avoid allocating potentially large std::string in error_handler
2014-09-23 14:02:08 +01:00
artemp
f4694d03ff
json error handler : use MAPNIK_LOG_ERROR and better message
2014-09-23 13:22:53 +01:00
Jiri Drbalek
31607cb3f4
add text attribute horizontal-alignment="adjust"
2014-09-23 08:49:27 +00:00
artemp
43c04a72bf
add set_property_from_xml_impl specialization from std::string
...
( parse as an expression first )
2014-09-22 12:04:05 +01:00
artemp
5db32ab2e2
properties_util : template apply static method on value type
2014-09-22 11:23:57 +01:00
artemp
5df668d126
refactor error handler to work with mapnik/debug macros
2014-09-22 10:10:08 +01:00
Dane Springmeyer
9e78712dc4
Merge pull request #2377 from mapycz/3.x-fix-text-on-line-glyph-distance
...
text rendering with line placement on corners in 3.x
2014-09-19 15:12:32 -07:00
Dane Springmeyer
98adcc2d58
fix compile with clang++ after #2416
2014-09-19 14:51:27 -07:00
Dane Springmeyer
7576c8e384
fix return of painted in grid_renderer
2014-09-19 14:34:08 -07:00
Dane Springmeyer
68d90adda6
enable painted for svg_renderer
...
Conflicts:
include/mapnik/svg/output/svg_renderer.hpp
2014-09-19 14:34:07 -07:00
Dane Springmeyer
753cd5d6a0
Merge pull request #2416 from mapycz/add-font-features
...
add font-feature-settings
2014-09-19 14:30:17 -07:00
Jiri Drbalek
2dcfa9e4b7
add font-feature-settings
2014-09-17 19:22:07 +00:00
Jiri Drbalek
e6a32f22cf
fix image painted
2014-09-16 18:54:52 +02:00
artemp
4c296e65e7
use expectation operators parsing attributes #2390
2014-09-12 17:19:11 +01:00
Dane Springmeyer
0cb63c51e8
finish removing ancient reduced size grid rendering pathway - amends f3a824c2cc
2014-09-12 00:56:51 -07:00
artemp
246336d2b1
Merge branch 'min-dist-compatibility' of git://github.com/MapQuest/mapnik into MapQuest-min-dist-compatibility
2014-09-10 16:20:36 +01:00
artemp
f8dc7b023a
text - add ``repeat-wrap-char
`` parameter default:false ( #2333 )
2014-09-10 16:08:41 +01:00
Jordan Hollinger
9b5a9dfe3e
Change text-margin option to margin.
2014-09-10 07:45:41 -04:00
artemp
b441586acf
text-symbolizer: revive 'wrap-char' property which uses special (naive) line_breaker - ref #2333
2014-09-09 17:30:01 +01:00
Dane Springmeyer
479b9e13d0
Merge pull request #2383 from MapQuest/min-dist-compatibility
...
3.x -> 2.3.x compatibility for minimum-distance
2014-09-06 22:50:13 -07:00
Dane Springmeyer
4ac190e8ef
fix handling of marker width/height
2014-09-06 22:44:57 -07:00
Dane Springmeyer
cc07ac2b00
simplify marker width/height handling
2014-09-06 22:13:30 -07:00
Dane Springmeyer
54b2880e53
markers: support offset, geometry-transform, and simplify - closes #2108
2014-09-06 21:27:15 -07:00
Dane Springmeyer
dc8a46017f
fix recursion on windows - closes #2414
2014-09-06 21:07:48 +00:00
Dane Springmeyer
9d363ce7e7
change runtime warning to compile time warning
2014-09-06 12:57:53 -07:00
Dane Springmeyer
1482835c08
fix visibility of image compositing/scaling with -flto - closes #2413
2014-09-06 10:52:00 -07:00
Dane Springmeyer
e26570dfdb
completely ignore layers with status=off - closes #153
2014-09-06 10:08:40 -07:00
artemp
fef3d22154
support avoid-edges in all markers placements
2014-09-05 16:33:20 +01:00
artemp
2727eddf90
implement 'avoid-adges' for markers placements (point placement)
...
(TODO: support all placement types)
2014-09-05 16:19:55 +01:00
artemp
aea77a7155
use generic_json types in topojson grammar
...
refactor value_converters into separate header
usd value_converters in geojson parser
2014-09-05 12:13:58 +01:00
Jiri Drbalek
b7e7e29781
fix text rendering with line placement on corners
2014-09-05 10:46:46 +00:00
Jiri Drbalek
69708dc640
add length method
2014-09-05 10:46:46 +00:00
Dane Springmeyer
492e084714
add copy ctor to rule: avoids last copy of syms in load_map - closes #1293
2014-09-04 22:03:54 -07:00
Dane Springmeyer
25a41ae31b
restore value hash + add test harness
2014-09-04 19:38:53 -07:00
Dane Springmeyer
3c1ad84f95
remove mapnik-config.bat
2014-09-04 16:40:37 -07:00
Dane Springmeyer
038cc41cd4
we are targeting 2014 so rollback 2013 CTP workarounds
2014-09-04 18:26:17 +00:00
Dane Springmeyer
7d5d02e031
Merge branch 'master' of github.com:mapnik/mapnik into 3x-msvs
2014-09-04 09:22:53 -07:00
Dane Springmeyer
c30f1715e6
Revert "workaround msvs variant init bug"
...
This reverts commit be44b647fa
.
2014-09-04 09:22:43 -07:00
Dane Springmeyer
98c881432a
Revert "attempt to workaround other mapnik_value_type->variant bugs"
...
This reverts commit 7dc1aed9ee
.
2014-09-04 09:21:14 -07:00
artemp
72e2f4446f
re-implement mapnik::value deriving from value_base and update across core
...
fix mapnik::value conversions in topojson plugin
2014-09-04 17:10:13 +01:00
artemp
0985cc907d
remove copy converting ctor and fix converting move constuctor to use 'universal reference' and perfect forwarding
...
( re : http://isocpp.org/blog/2012/11/universal-references-in-c11-scott-meyers )
2014-09-04 14:54:42 +01:00
Jiri Drbalek
67d8f41a1b
fix angle calculation
...
Conflicts:
src/text/vertex_cache.cpp
2014-09-03 11:53:23 -07:00
Dane Springmeyer
7dc1aed9ee
attempt to workaround other mapnik_value_type->variant bugs
2014-08-31 17:18:15 -07:00
Dane Springmeyer
be44b647fa
workaround msvs variant init bug
2014-08-31 12:44:12 -07:00
Dane Springmeyer
beaf7a56cc
fix linking problems from python
2014-08-31 07:44:41 +00:00
Dane Springmeyer
603ea3811f
Merge branch 'master' of github.com:mapnik/mapnik into 3x-msvs
2014-08-30 20:05:33 -07:00
Dane Springmeyer
8cd198625e
remove unused code
2014-08-30 14:30:51 -07:00
Dane Springmeyer
d577ef8719
Merge branch 'master' of https://github.com/mapnik/mapnik into 3x-msvs
2014-08-29 18:56:43 -07:00
Dane Springmeyer
c7f58ee64c
clean up harfbuzz->icu interface
2014-08-29 17:41:29 -07:00
Dane Springmeyer
15356f6320
handle wchar_t UChar typedef on windows
2014-08-29 16:46:23 -07:00
Dane Springmeyer
12a45744fb
Merge pull request #2403 from mapycz/3.x-fix-vertext_last-warning
...
fix compiler warning
2014-08-29 11:52:09 -07:00
Jiri Drbalek
21dcb2e2c4
fix compiler warning
2014-08-29 18:18:25 +00:00
Dane Springmeyer
8d7bf7a8da
fix imagedata visability on windows
2014-08-29 11:01:04 -07:00
artemp
a5925c1f15
remove redundant private copy assignment op
2014-08-29 18:06:08 +01:00
Dane Springmeyer
3f6a5ae246
re-enable harfbuzz shaper
2014-08-29 00:05:34 -07:00
Dane Springmeyer
6f3b8f969d
params: make msvs happy
2014-08-28 19:06:17 -07:00
Dane Springmeyer
324fb11f66
include <cstdint> - fixes msvs compile - refs #2396
2014-08-28 18:51:27 -07:00
Dane Springmeyer
7ff712af52
remove unused code
2014-08-28 17:24:17 -07:00
Dane Springmeyer
3c66054524
Merge branch 'master' of github.com:mapnik/mapnik into 3x-msvs
2014-08-28 17:23:59 -07:00
Dane Springmeyer
23189d7059
remove invalid MAPNIK_DECL usage - amends d61efc0b5a
(may break lto, but fixes windows)
2014-08-28 17:23:32 -07:00
artemp
1ac0ebdd83
rename coord_transform to transform_path_adapter and move implementation into separate header
2014-08-28 10:59:08 +01:00
artemp
ecfaec1027
rename ctrans.hpp to view_transform.hpp
2014-08-28 10:29:04 +01:00
artemp
de22d5900c
rename CoordTransform to view_transform to better reflect its purpose and be consistent
2014-08-28 10:17:15 +01:00
artemp
cc76ac4c6a
c++ style - avoid implicit bool conversions in comparison + make note re:scale_denom *= p.scale_factor();
2014-08-28 09:57:24 +01:00
artemp
4628dc3ff3
c++11 style
2014-08-28 09:55:16 +01:00
Dane Springmeyer
0635052349
fix CTP 2013 issue 8 from #2396
2014-08-26 20:01:59 -07:00
Dane Springmeyer
a8e8632572
don't trust __cplusplus - addresses issue 5 from #2396
2014-08-26 19:24:53 -07:00
Dane Springmeyer
f364069e25
fix issue 6 from #2396
2014-08-26 19:11:44 -07:00
Dane Springmeyer
b6bfab99b8
remove unneeded header
2014-08-26 16:09:04 -07:00
Dane Springmeyer
884db7de8c
fix issue 1 from #2396
2014-08-26 12:43:11 -07:00
artemp
0cfbd3c5e8
expression_string : implement function call support
2014-08-26 10:51:55 +01:00
Dane Springmeyer
3e1ab9beab
fix gdal compile with msvs 2013 - closes #2257
2014-08-25 17:50:45 -07:00
Dane Springmeyer
70f71790fe
simplify expression handling in marker_helpers
2014-08-25 14:51:22 -07:00
Dane Springmeyer
feffa8f53c
respect int return type for WebPValidateConfig
2014-08-25 14:38:03 -07:00
artemp
2a254a4017
expressions - refactor function calls into separate compilation unit
2014-08-25 15:06:53 +01:00
artemp
4adb0abb64
expressions - implement unary and binary function expression nodes
...
(sample functions: exp, pow, sin, cos, min, max, tan, atan)
2014-08-25 14:17:18 +01:00
Dane Springmeyer
48c23f27dc
remove duplicate calculation of image_ratio
2014-08-24 19:21:54 -07:00
Dane Springmeyer
0b8439c8d2
fix inialization order
2014-08-24 16:37:39 -07:00
Jiri Drbalek
e1aededb09
refactor marker placements
2014-08-24 18:10:41 +00:00
Jordan Hollinger
88782a85c8
Minor improvement to repeat handling in collision detector.
2014-08-22 13:38:01 -04:00
artemp
eb7716aeed
expressions - initial function_call framework implementation (TODO)
2014-08-22 12:30:25 +01:00
Jordan Hollinger
a28d3dd99c
Handle text-margin, repeat-distance, and backward compatible minimum-distance in placement_finder. Update visual tests.
2014-08-21 20:49:00 -04:00
artemp
8db68fc5e3
hextree - avoid quantizing images with less than 3 pixels (hextree implementation requirement)
2014-08-21 12:43:43 +01:00
Jordan Hollinger
c8c792277d
Add attribute text-margin in place of minimum-distance.
2014-08-20 19:43:36 -04:00
artemp
3c99514c85
GeoJSON : re-implement grammar to allow any order for "type", "coordinates" and "geometries" elements
...
Also, ammend positions parser to handle multi-dimensional coordinates e.g [x,y,z,....,N] (we only extract x and y)
2014-08-20 15:45:16 +01:00
Dane Springmeyer
7d23d49ecb
fix #2368
2014-08-19 14:47:03 -07:00
artemp
59b089f65d
remove unused (after grammar refactor) support_multi_pass.hpp include
2014-08-19 16:04:31 +01:00
Dane Springmeyer
0e87d913ed
fix return type
2014-08-18 19:19:48 -07:00
Dane Springmeyer
83b7ccb3ae
optimize set_symbolizer_property_impl
2014-08-18 15:37:46 -07:00
artemp
801848ac97
Merge branch 'jh-min-repeat-distance' of git://github.com/MapQuest/mapnik into MapQuest-jh-min-repeat-distance
...
Conflicts:
include/mapnik/renderer_common/process_group_symbolizer.hpp
src/text/text_properties.cpp
2014-08-18 14:05:14 +01:00
Jiri Drbalek
f3fba6e299
fix compile with gcc
2014-08-17 13:15:56 +00:00
artemp
67379d1bba
fix icu_shaper
2014-08-15 14:11:44 +01:00
Dane Springmeyer
751e039347
add RESPECT mode to make 'fixing' of bbox aspect a no-op on map
2014-08-14 20:27:27 -07:00
Dane Springmeyer
8cfb49de81
fix quoting in svg output grammars - regressed in 350c2c29bd
2014-08-14 12:28:28 -07:00
Dane Springmeyer
595b81107c
variant : make operator<< stricter to avoid unexpected instantiations - refs 7602779836
2014-08-14 11:50:58 -07:00
Dane Springmeyer
8ef6558496
iwyu
2014-08-14 10:04:26 -07:00
artemp
52ba1383ec
move hash_value into value_adl_barrier namespace where it expected
2014-08-14 18:02:52 +01:00
artemp
454a69c582
mapnik::value - revive hash_value function implementation ( #2358 )
2014-08-14 10:00:23 +01:00
Dane Springmeyer
5b52fa94b1
fix compile on linux
2014-08-13 17:21:11 -07:00
Dane Springmeyer
5e314b04a7
iwyu
2014-08-13 09:05:02 -07:00
artemp
e8b7d50ebb
feature_generator_grammar - fix escaping
2014-08-13 13:06:38 +01:00
artemp
4ebd824368
make to_expression_string accept quotting char (default: '\'')
2014-08-13 13:05:22 +01:00
artemp
6972bc30d2
use mapnik_value_type promotion traits for better type mapping
...
in symbolizer and params + move mapnik_value_type traits to
value_types.hpp
2014-08-13 10:22:43 +01:00
Dane Springmeyer
6ec3905fc5
fix redefinition warnings + dodge a compile error due to clashing toupper in python + clib by using iosfwd - closes #2355
2014-08-12 23:52:31 -07:00
Dane Springmeyer
5db9daaff1
fix compile error in svg_renderer_tests/path_element_test.cpp - refs #2355
2014-08-12 23:37:29 -07:00
Dane Springmeyer
7da05accc0
Merge branch 'master' of github.com:mapnik/mapnik into custom-variant-2
2014-08-12 23:19:26 -07:00
Dane Springmeyer
8b6a0a32f6
improve interior position algorithm - patch from @mrwojo - closes #2137
2014-08-12 14:42:51 -07:00
Dane Springmeyer
9b789a398b
remove bilinear8 from master/3.x - closes #2076
2014-08-12 13:43:37 -07:00
artemp
6136a32092
Merge branch 'master' into custom-variant-2
2014-08-12 19:44:37 +01:00
Dane Springmeyer
04e4b47d91
stricter string2bool conversion - refs #2348
2014-08-12 11:33:20 -07:00