Blake Thompson
87fb41907a
Added template to geometries
2015-04-09 15:22:51 -05:00
artemp
2bc2e6b85e
use geometry_to_path to convert geometry
2015-04-08 18:48:41 +02:00
artemp
310865a0c3
help compiler to apply RVO ( return the same object by value)
2015-04-08 13:10:22 +02:00
Blake Thompson
431c581759
Added a lot of additional tests for geometry_reprojection
2015-04-07 18:37:30 -05: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
54d8746aa8
svg_renderer - add generate_path vertex processor (work-in-progress)
2015-04-07 15:46:06 +02:00
Blake Thompson
6be658f5b5
Moved geometry envelope to an impl
2015-04-06 11:00:03 -05:00
artemp
3be0074c20
bug fix - add missing break statement
2015-04-02 14:58:05 +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
artemp
390fff5bb4
ensure we're returning the same object from multiple return paths
...
from_wkb now returns geometry::geometry_empty instead of throwing
update cpp_tests
2015-04-01 15:04:05 +02:00
Dane Springmeyer
b88aaed491
wkb: use 'mapnik::geometry::correct'
2015-03-31 12:30:05 -07:00
artemp
74fb3ddde0
Merge branch 'master' into mapnik-geometry
2015-03-25 16:19:02 +01:00
artemp
dc6f1924fa
split multi geometries before applying placement algos
2015-03-25 14:20:47 +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
Dane Springmeyer
b87e09c147
fix memory datasource accumulate_extent
2015-03-24 14:46:26 -07:00
Dane Springmeyer
dcc5632f82
svg_renderer is broken, disable temporarily
2015-03-24 14:15:57 -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
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
08a3911b0a
Added the introduction of an image_view_null, this could possibly fix windows build issues
2015-03-19 21:28:16 -05:00
Dane Springmeyer
c1d7fe3a8f
fix compile error on windows: error C2065: 'M_PI': undeclared identifier
2015-03-19 12:14:24 -07:00
artemp
8a0b4a6b6e
Merge branch 'master' into mapnik-geometry
2015-03-19 19:17:01 +01:00
artemp
3bbb9a24f1
debug_symbolizer - update to use mapnik-geometry
2015-03-19 12:30:21 +01: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
28fe4847b9
csv.input - correct
WKT geometry to be consistent
...
symbolizer_helper - handle geometry types in VERTEX_PLACEMENT
2015-03-18 16:18:44 +01:00
artemp
6a8e78ab9c
fix group_symbolizer_helper
2015-03-18 13:50:15 +01:00
Matt Amos
dd5f6ea739
Use correct bounding box for avoid-edges check.
...
This was previously using `query_extent_`, which is in
world-space, but it should have been using `dims_`, which is the
extent of the rendered area in pixel-space, as the calculations
for collisions are all done in pixel-space.
2015-03-18 11:57:21 +00:00
artemp
1bb06d89fa
group_symbolizer - update to mapnik-geometry
2015-03-18 12:10:21 +01:00
artemp
ab5116df8d
dot_symbolizer - update to use mapnik-geometry
2015-03-17 16:53:28 +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
71c9c04e92
Merge branch 'master' into mapnik-geometry
2015-03-16 16:20:46 +01:00
Dane Springmeyer
dc31d53cdc
fix labeling on polygons (allows kurdish-text visual test to pass)
2015-03-16 00:32:25 -07: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
64ee848445
Forgot to add src/image_vew.cpp
2015-03-13 16:48:45 -05:00
Blake Thompson
29099ece46
Added image_view implementation
2015-03-13 16:34:49 -05:00
Blake Thompson
bf61a033d3
Intial commit for impl
2015-03-13 10:52:39 -05: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
6d13454f72
reinstate 'from_wkt' interface
2015-03-12 14:12:53 +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
Dane Springmeyer
c8e56f1128
fix high zoom crash in line pattern rendering - closes #2726
2015-03-10 18:16:04 -07:00
Blake Thompson
bb08020d1d
Updated image reader so that it would throw an exception rather then returning a 0 pointer.
2015-03-10 10:05:50 -05:00
artemp
c3284aa958
Merge branch 'master' into mapnik-geometry
2015-03-10 11:17:53 +01:00
artemp
6df5ef4ac9
grod_renderer - update to use mapnik-geometry
2015-03-10 11:16:16 +01:00
Blake Thompson
7ee9745a8f
Updated param to allow value_boolean
2015-03-09 16:33:20 -05:00
artemp
e7843ba471
use sequencial catch blocks
2015-03-09 18:48:41 +01:00
artemp
397655cc16
use apply_vertex_converter
2015-03-09 16:59:34 +01:00
artemp
a958f5bda2
use mapnik-geometry
2015-03-09 16:59:00 +01:00
artemp
72e31d2768
update to use mapnik-geometry
2015-03-09 16:57:19 +01:00
artemp
54f87b40d2
use sequencial catch blocks
2015-03-09 16:30:10 +01:00
artemp
317e9c497f
Merge branch 'master' into mapnik-geometry
2015-03-09 14:59:45 +01: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
Blake Thompson
34e02bec38
A fix for jpeg saving, as it wasn't properly dealing with a colon for saving with quality.
2015-03-05 09:37:22 -06:00
artemp
aa5ae6b843
update markers_symbolizer to work with mapnik-geometry (work-in-progress)
2015-03-05 15:07:23 +01:00
artemp
24a586415c
expose wkbByteOrder in wkb.hpp
2015-03-05 10:44:40 +01:00
Dane Springmeyer
d5e3dba3df
scons: cross compilation fixes
2015-03-04 16:25:15 -08:00
Dane Springmeyer
7f597233c9
better exception when boost regex cannot initialize ICU support - closes #2722
2015-03-04 12:38:45 -08:00
artemp
cd15d8f2b3
revive polygon/line pattern rendering
2015-03-04 18:39:31 +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
3ddfe34aa5
Merge branch 'master' into mapnik-geometry
2015-03-04 10:30:08 +01:00
artemp
ec7f2f3f0c
feature_generator - adapt to new geometry generator
2015-03-04 09:23:57 +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
78c72ee389
topojson.input - update to mapnik-geometry
2015-02-24 15:59:26 +01:00
artemp
102fd539f9
generic way to apply vertex converters to mapnik-geometry
2015-02-24 15:18:46 +01:00
artemp
0885dfb15a
rename polygon3 -> polygon
2015-02-24 14:13:00 +01:00
artemp
8400be91c7
generic box2d<double> envelope(geometry const& )
2015-02-24 10:42:33 +01:00
artemp
ab151a095e
Merge branch 'master' into mapnik-geometry
2015-02-24 09:30:02 +01:00
Dane Springmeyer
7152c7c621
do not call dlclose on plugins linking libgdal
2015-02-23 14:56:18 -08:00
artemp
fca584de1b
json grammar - start porting to mapnik-geometry
2015-02-23 12:19:00 +01:00
artemp
d8dfe69952
add support for reading geometry_collection
2015-02-20 17:21:40 +01:00
artemp
7031099b76
Merge branch 'master' into mapnik-geometry
2015-02-20 17:03:46 +01:00
artemp
bd6c90bf00
remove CoordArray and read points directly into line_string or linear_ring
2015-02-19 17:13:43 +01:00
artemp
87d60620c2
mapnik-geometry : update wkb reader
2015-02-19 16:04:14 +01:00
artemp
fec1d75e8e
add basic cairo support
2015-02-19 12:03:15 +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
2aa23eca43
fix type of raster_marker_render_thunk'
2015-02-19 01:37:19 -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
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
842e4bebe6
start fixing windows compile - refs #2708
2015-02-16 18:48:14 -08: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
89a58c5879
Merge branch 'master' of github.com:mapnik/mapnik into release/image_data_any
2015-02-11 10:01:42 -08:00
artemp
109e104971
Merge branch 'master' into vertex_adapter
2015-02-10 15:13:23 +01:00
Jiri Drbalek
310011a8b9
prefer stl over boost
2015-02-10 12:46:10 +00:00
Dane Springmeyer
41ed56df14
Merge branch 'master' of github.com:mapnik/mapnik into vertex_adapter
2015-02-09 18:16:57 -08:00
Dane Springmeyer
0e137cd6ee
iwyu
2015-02-09 14:18:15 -08:00
artemp
960794b7a0
fix copyright
2015-02-09 13:47:29 +01:00
artemp
1ecf3f0889
use const ref when iterating over geometries in feature
2015-02-09 13:46:01 +01:00
artemp
146dc1c094
fix copyright
2015-02-09 11:38:08 +01:00
artemp
2ece72658a
Merge branch 'master' into vertex_adapter
2015-02-09 10:05:02 +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
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
Jiri Drbalek
1bb1653e69
prefer STL implementation
2015-02-06 16:13:31 +00: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
Blake Thompson
06ef081282
Another set of fixes for the compare SSE code, added test where it was failing
2015-02-04 18:26:18 -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
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
Blake Thompson
5a4f9321d0
A few updates to attempt to fix pixel getting and setting
2015-01-29 16:10:56 -07: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
Dane Springmeyer
f8523ef728
scons: hack to make sure makefile pre-build does not break if grid renderer is not enabled
2015-01-27 22:18:25 -08:00
Dane Springmeyer
4e5fa8490a
scons: hack to make sure makefile pre-build does not break if grid or cairo renderers are not enabled
2015-01-27 22:17:30 -08:00
Dane Springmeyer
cbb364085f
move aside variant io
2015-01-27 21:52:05 -08:00
Dane Springmeyer
dfb6116786
Merge branch 'master' of github.com:mapnik/mapnik into release/image_data_any
...
Conflicts:
tests/python_tests/pgraster_test.py
2015-01-27 15:19:12 -08:00
Robert Coup
65ef3bc625
Handle bounds reprojections which cross the anti-meridian. #2648
...
When doing an envelope-points reprojection to a geographic CS, check
the points stay in clockwise order. Otherwise expand the resulting bounds
to include the world.
Includes visual test. Cairo tests aren't finding differences, but the renderer
is doing the right thing.
2015-01-28 11:18:16 +13: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
Dane Springmeyer
89118c2fcb
tiff_reader: only gaurd against over-allocation at read time
2015-01-26 16:33:30 -08: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
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
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
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
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
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
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