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
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
06d77865db
update to templated geometry
2015-04-22 12:23:51 +02:00
Dane Springmeyer
3fb41e865a
fix outline drawing in debugsymbolizer ring mode
2015-04-14 15:33:05 +02: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
artemp
4389c80d84
and finaly, rename 'new_geometry' namespace to 'geometry'
2015-03-24 14:21:28 +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
9352d69987
refactor local pattern alignment calc
2015-03-20 10:43:42 +01:00
artemp
3bbb9a24f1
debug_symbolizer - update to use mapnik-geometry
2015-03-19 12:30:21 +01:00
artemp
ab5116df8d
dot_symbolizer - update to use mapnik-geometry
2015-03-17 16:53:28 +01:00
artemp
50ca6fcbe8
Merge branch 'master' into mapnik-geometry
2015-03-12 14:55:45 +01:00
Dane Springmeyer
c8e56f1128
fix high zoom crash in line pattern rendering - closes #2726
2015-03-10 18:16:04 -07:00
artemp
aa5ae6b843
update markers_symbolizer to work with mapnik-geometry (work-in-progress)
2015-03-05 15:07:23 +01:00
artemp
cd15d8f2b3
revive polygon/line pattern rendering
2015-03-04 18:39:31 +01:00
artemp
3ddfe34aa5
Merge branch 'master' into mapnik-geometry
2015-03-04 10:30:08 +01:00
Dane Springmeyer
4afcac5563
try to solve #2714
2015-02-26 11:12:19 -08:00
artemp
102fd539f9
generic way to apply vertex converters to mapnik-geometry
2015-02-24 15:18:46 +01:00
artemp
7031099b76
Merge branch 'master' into mapnik-geometry
2015-02-20 17:03:46 +01:00
Dane Springmeyer
cb869e60f3
no need for templated 'raster_marker_render_thunk'
2015-02-19 01:36:43 -08: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
133f7d04ef
agg_renderer - support multi_line_strings
2015-02-18 14:26:11 +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
89a58c5879
Merge branch 'master' of github.com:mapnik/mapnik into release/image_data_any
2015-02-11 10:01:42 -08:00
artemp
1ecf3f0889
use const ref when iterating over geometries in feature
2015-02-09 13:46:01 +01:00
artemp
e19fdad3a6
implement vertex interface in vertex_adapter and make mapnik::geometry_type immutable
2015-02-06 16:45:51 +01: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
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
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
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
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
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
Dane Springmeyer
df9613369e
temp fix: copy rather than move image_data inside marker to avoid mutating marker
2015-01-20 20:38:22 -08: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
Blake Thompson
2439f1b298
A whole lot of changes. #Ref 2633
2015-01-20 10:48: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
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
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
Blake Thompson
4184f75011
Moved premultiply and demultiply out of image_32 and other parts of the code. The image_data object is now responsible for keeping track of its own premultiplied_alpha status. Created a new utility method in image_util to preform premultiplication.
...
Added visitor pattern to several different methods as well to prepare for image_data_any including compositing.
Ref #2633
2015-01-14 12:42:30 -06:00
artemp
5361d21beb
move mapnik::noncopyable to mapnik::util::noncopyable where it belongs
2015-01-07 13:11:09 +01:00
artemp
18554ec0b1
remove static_visitor usage and rely on automatic result type deduction
...
(NOTE: expression_evaluator requires ```using result_type = T1;``` )
Conflicts:
src/image.cpp
2015-01-07 11:39:06 +01: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
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
333965b588
update copyright year
2014-11-20 15:25:50 +01: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
6eb65434c5
upgrade to new get<value_type, keys::key>
2014-10-17 20:45:15 +01:00
Dane Springmeyer
c2fe4a14be
drop useless template usage for has_key
2014-10-06 23:21:13 -07:00
jhollinger2
5ca07a26d1
Refactor marker helpers for agg and grid renderer.
2014-10-06 14:03:48 -04:00
Dane Springmeyer
dfaa860522
Revert "min compiler is g++ 4.8 - refs #2486 "
...
This reverts commit 612b4a0207
.
2014-10-02 13:23:35 -07:00
Dane Springmeyer
612b4a0207
min compiler is g++ 4.8 - refs #2486
2014-10-02 12:04:32 -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
8752271910
code cleanup
2014-09-29 19:59:59 -07:00
artemp
95d13e0b3d
Merge branch 'master' into vertex-converter
2014-09-29 12:34:54 +01: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
Jiri Drbalek
e6a32f22cf
fix image painted
2014-09-16 18:54:52 +02:00
Dane Springmeyer
3c66054524
Merge branch 'master' of github.com:mapnik/mapnik into 3x-msvs
2014-08-28 17:23:59 -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
de22d5900c
rename CoordTransform to view_transform to better reflect its purpose and be consistent
2014-08-28 10:17:15 +01:00
Dane Springmeyer
8d448dad5c
fix issue 2 from #2396
2014-08-26 12:43:31 -07:00
Dane Springmeyer
41064ed49d
pixel snapping for shields (and points) - closes #1866/refs #1316/amends 2fcd53134
2014-08-18 19:45:21 -07:00
artemp
95cea92a4a
convert all boost::variant to util::variant
...
apart from topojson (TODO)
2014-08-12 13:40:45 +01:00
artemp
201641a206
AGG/Cairo - fix pattern opacity
2014-08-11 15:36:48 +01:00
artemp
0490b7887c
text_symbolizer - ``geometry-transform
`` support
2014-08-06 14:54:38 +01:00
Dane Springmeyer
76bd45fa30
fix order of smooth/offset - same bug as #2202 but for patterns
2014-08-05 13:54:10 -07:00
Dane Springmeyer
2a7fc29e42
add support for opacity with svgs in pattern symbolizers - refs #1010
2014-08-05 13:48:40 -07:00
artemp
c3a83e6f74
re-arrange headers
2014-08-05 18:58:22 +01:00
artemp
a8991cd600
refactor clipping_extent into separate header for sharing
2014-08-05 17:22:13 +01:00
artemp
dd05521289
Revert "avoid overflowing"
...
This reverts commit ebd183d58e
.
2014-08-05 13:13:52 +01:00
artemp
ebd183d58e
avoid overflowing
2014-08-05 11:57:57 +01:00
Dane Springmeyer
fb12fc8b68
default to global alignment for polygon patterns - refs #2325
2014-08-04 16:20:12 -07:00
artemp
96cc6b5417
fix typo
2014-08-01 20:15:59 +01:00
artemp
f2db42d5e4
support image-transform for vector patterns
2014-08-01 13:39:29 +01:00
artemp
18a7731d42
AGG line/polygon_pattern_symbolizer add support for SVG patterns
2014-07-31 15:25:22 +01:00
artemp
d4224ae852
polygon_pattern_symbolizer - fix 'opacity'
2014-07-31 10:29:44 +01:00
Dane Springmeyer
cdb075f75f
make clipping off by default - closes #2146
2014-07-28 20:31:10 -07:00
Dane Springmeyer
148007cc48
iwyu + fwd declares
2014-07-22 23:36:54 -07:00
Dane Springmeyer
28a05c96ef
iwyu + faster compile
2014-07-22 19:36:39 -07:00
Dane Springmeyer
006c460c9c
fix use of comp-op as data-driven expression
2014-07-22 10:52:30 -07:00
artemp
fe215a684e
c++11 style : replace (almost) all typedef with type alias's
2014-07-07 18:23:15 +01:00
artemp
aa9966ed88
parse comp-op property as enumeration_wrapper or expression_str
2014-06-27 13:58:03 +01:00
artemp
68a5cc55a6
image_filters : agg-stack-blur requires premultiplied pixels - move de/pre multipling into apply_filter()
2014-06-19 15:40:54 +01:00
artemp
2fb3069825
image-filters: apply image-filters in demultiplied colour space
2014-06-19 13:26:40 +01:00
artemp
c605ce81aa
pedantic : prefer explicit double values in comparisons
2014-06-19 12:14:12 +01:00
artemp
2c3173c1aa
support halo-comp-op property ( #2267 )
2014-06-17 15:11:34 +01:00
artemp
3ded23fbab
move make_unique out of std namespace and allow building with c++14 compilers
...
( -std=c++1y )
2014-06-12 15:14:05 +01:00
artemp
5e386f5c97
capture built-in types by value
2014-06-06 13:12:55 +01:00
artemp
a49e1d075e
initial refactor pass ( fixes #2235 )
2014-06-04 18:05:27 +01:00
Dane Springmeyer
aaae8b1cba
optimize raster rendering when not resizing
2014-05-15 23:38:47 -07:00
Dane Springmeyer
2f8451b99a
variables support for cairo/grid/svg
2014-05-13 18:24:17 -07:00
Dane Springmeyer
2c661ed3d5
support for render time variables
2014-05-11 13:08:24 -07:00