Commit graph

1255 commits

Author SHA1 Message Date
Dane Springmeyer
6c76896677 keep proper type in text sym deep copy - refs #946 2011-11-18 15:09:16 -08:00
Dane Springmeyer
07291106a9 keep proper type in text sym deep copy - refs #946 2011-11-18 15:09:16 -08:00
Artem Pavlenko
771a8ad72f use mutex from base class 2011-11-18 09:39:57 +00:00
Artem Pavlenko
81c00d9cc5 use mutex from base class 2011-11-18 09:39:57 +00:00
Dane Springmeyer
3520033b0d in multithreaded mode lock before creating a datasource - closes #951 2011-11-17 18:47:09 -08:00
Dane Springmeyer
1a93e5c407 in multithreaded mode lock before creating a datasource - closes #951 2011-11-17 18:47:09 -08:00
Dane Springmeyer
43f2fa7075 Merge branch 'master' into gsoc-crundel 2011-11-09 16:57:20 -08:00
Dane Springmeyer
d0d2efbf54 Merge branch 'master' into gsoc-crundel 2011-11-09 16:57:20 -08:00
Dane Springmeyer
da56cbd392 minor includes fixups 2011-11-09 16:41:07 -08:00
Dane Springmeyer
9b3c42190d minor includes fixups 2011-11-09 16:41:07 -08:00
Dane Springmeyer
6257ac57c9 sqlite: futher refactoring of sqlite plugin, allowing all tests to pass 2011-11-03 19:51:37 -04:00
Dane Springmeyer
d965bcbeae sqlite: futher refactoring of sqlite plugin, allowing all tests to pass 2011-11-03 19:51:37 -04:00
Dane Springmeyer
1adbbdb571 grid: initialize variables to avoid compiler warnings 2011-11-02 13:31:15 -04:00
Dane Springmeyer
2169bcb92f grid: initialize variables to avoid compiler warnings 2011-11-02 13:31:15 -04:00
Dane Springmeyer
4ba7f5218a formatting 2011-10-28 18:04:24 -07:00
Dane Springmeyer
4ffb26d78d formatting 2011-10-28 18:04:24 -07:00
Artem Pavlenko
cfe071fbc4 don't skip white space in attributes names 2011-10-28 11:24:19 +01:00
Artem Pavlenko
14ab337363 don't skip white space in attributes names 2011-10-28 11:24:19 +01:00
Artem Pavlenko
9c5e988098 return by value 2011-10-28 11:24:17 +01:00
Artem Pavlenko
d1401b9e07 return by value 2011-10-28 11:24:17 +01:00
Artem Pavlenko
a3ba07f6b4 avoid creating default initialised values if key doesn't exist 2011-10-28 11:24:10 +01:00
Artem Pavlenko
694094d28b avoid creating default initialised values if key doesn't exist 2011-10-28 11:24:10 +01:00
Artem Pavlenko
a35b9c4eaa add support for fractional text size
( use FT_Set_Char_Size )
NOTE: ensure it works as expected, currently
I see different results from different fonts.
2011-10-28 11:24:08 +01:00
Artem Pavlenko
87c1d126b8 add support for fractional text size
( use FT_Set_Char_Size )
NOTE: ensure it works as expected, currently
I see different results from different fonts.
2011-10-28 11:24:08 +01:00
unknown
91f15d9e30 add missing overload
# Please enter the commit message for your changes. Lines starting
2011-10-28 10:52:29 +01:00
unknown
a8348c5bf5 add missing overload
# Please enter the commit message for your changes. Lines starting
2011-10-28 10:52:29 +01:00
Dane Springmeyer
06040d5847 Merge branch 'master' of github.com:mapnik/mapnik 2011-10-25 15:08:19 -07:00
Dane Springmeyer
6761cb0436 Merge branch 'master' of github.com:mapnik/mapnik 2011-10-25 15:08:19 -07:00
kunitoki
9a251e972d - small cosmetics 2011-10-23 16:36:51 +02:00
kunitoki
592e97ffe7 - small cosmetics 2011-10-23 16:36:51 +02:00
kunitoki
eb13c8c6be - another bunch of coding style fixes in includes 2011-10-23 16:09:47 +02:00
kunitoki
d574d4da0c - another bunch of coding style fixes in includes 2011-10-23 16:09:47 +02:00
kunitoki
4a2151acec - fix copyright repeats 2011-10-23 15:23:14 +02:00
kunitoki
154fb73d84 - fix copyright repeats 2011-10-23 15:23:14 +02:00
kunitoki
f1fb0c1939 - fix copyright to 2011 (script to do this will follow) 2011-10-23 15:04:25 +02:00
kunitoki
596757a269 - fix copyright to 2011 (script to do this will follow) 2011-10-23 15:04:25 +02:00
Dane Springmeyer
2f7d85e6d8 touchup feature.to_string() operator to display id differently than attributes 2011-10-22 17:27:02 -07:00
Dane Springmeyer
95035b2519 touchup feature.to_string() operator to display id differently than attributes 2011-10-22 17:27:02 -07:00
Dane Springmeyer
cad0c600cc add a new, experimental coord_transform impl to support offsetting line verticies - closes #180 - next task of exposing functionality refs #927 2011-10-21 17:39:20 -07:00
Dane Springmeyer
c92e7ab497 add a new, experimental coord_transform impl to support offsetting line verticies - closes #180 - next task of exposing functionality refs #927 2011-10-21 17:39:20 -07:00
Dane Springmeyer
e0e47f50dd remove area as it is unused (not needed by anything yet) - closes #846 2011-10-21 15:55:58 -07:00
Dane Springmeyer
d1c8818029 remove area as it is unused (not needed by anything yet) - closes #846 2011-10-21 15:55:58 -07:00
Artem Pavlenko
986edc3c6e Merge pull request #909 from MapQuest/expose-label-collision-detector
Exposed the label collision detector
2011-10-21 12:20:21 -07:00
Artem Pavlenko
c7e1174d6b Merge pull request #909 from MapQuest/expose-label-collision-detector
Exposed the label collision detector
2011-10-21 12:20:21 -07:00
Artem Pavlenko
f762059d5c use static_cast 2011-10-21 20:02:34 +01:00
Artem Pavlenko
b8ed785d7d use static_cast 2011-10-21 20:02:34 +01:00
Artem Pavlenko
2fadf1f2d3 Merge pull request #922 from xificurk/ctrans-cleanup
code cleanup
2011-10-21 09:55:23 -07:00
Artem Pavlenko
ba0bdbd07e Merge pull request #922 from xificurk/ctrans-cleanup
code cleanup
2011-10-21 09:55:23 -07:00
Robert Coup
17892c3b01 Merge branch 'master' into gsoc-crundel 2011-10-20 12:03:02 -07:00
Robert Coup
5df4d4fbb9 Merge branch 'master' into gsoc-crundel 2011-10-20 12:03:02 -07:00
Artem Pavlenko
480f8a390d revert back bool logic
update urls -> https://github.com/mapnik/mapnik/issues/794
2011-10-20 14:38:04 +01:00
Artem Pavlenko
c87c05911b revert back bool logic
update urls -> https://github.com/mapnik/mapnik/issues/794
2011-10-20 14:38:04 +01:00
Robert Coup
a321ec7843 crundel: Add setter for rastercolorizer stops 2011-10-19 23:59:26 -07:00
Robert Coup
82ba2e2553 crundel: Add setter for rastercolorizer stops 2011-10-19 23:59:26 -07:00
Robert Coup
03d809bb4f crundel: add set_displacement(position) method to text_symbolizer 2011-10-19 23:58:56 -07:00
Robert Coup
e8c281f593 crundel: add set_displacement(position) method to text_symbolizer 2011-10-19 23:58:56 -07:00
Robert Coup
48311f375c crundel: add deep-copy option for copying rules and feature_type_styles 2011-10-19 23:57:21 -07:00
Robert Coup
fae9f98014 crundel: add deep-copy option for copying rules and feature_type_styles 2011-10-19 23:57:21 -07:00
Petr Morávek [Xificurk]
27c65de120 code cleanup 2011-10-19 23:45:24 +02:00
Petr Morávek [Xificurk]
7f57119dbd code cleanup 2011-10-19 23:45:24 +02:00
Artem Pavlenko
2bb37b15a9 use make_shared 2011-10-19 17:34:09 +01:00
Artem Pavlenko
298b7fa253 use make_shared 2011-10-19 17:34:09 +01:00
Artem Pavlenko
978cb50d41 use M_PI from <mapnik/global.hpp> 2011-10-19 15:32:25 +01:00
Artem Pavlenko
1e70af3c5a use M_PI from <mapnik/global.hpp> 2011-10-19 15:32:25 +01:00
Artem Pavlenko
911981aefd + various win32 fixes, mainly adding extra namespace qualifiers
for vc++10, MAPNIK_DECL ...
2011-10-19 15:29:24 +01:00
Artem Pavlenko
9088d7bbc8 + various win32 fixes, mainly adding extra namespace qualifiers
for vc++10, MAPNIK_DECL ...
2011-10-19 15:29:24 +01:00
Artem Pavlenko
001d79903e qualify attribute -> mapnik::attribute (vc10) 2011-10-19 15:19:55 +01:00
Artem Pavlenko
49cb8c7368 qualify attribute -> mapnik::attribute (vc10) 2011-10-19 15:19:55 +01:00
Artem Pavlenko
9dbedacdda add round() and M_PI support for windows builds 2011-10-19 15:17:48 +01:00
Artem Pavlenko
d40f5d7d59 add round() and M_PI support for windows builds 2011-10-19 15:17:48 +01:00
Artem Pavlenko
fa7efc9390 remove operator-= from box2d 2011-10-19 15:14:01 +01:00
Artem Pavlenko
9a37fee17d remove operator-= from box2d 2011-10-19 15:14:01 +01:00
kunitoki
2372a60ff7 - cosmetics changes to sqlite datasource plugin
- added initial wkbAuto to auto determine WKB type in sqlite
2011-10-18 22:19:03 +02:00
kunitoki
b23697e1b3 - cosmetics changes to sqlite datasource plugin
- added initial wkbAuto to auto determine WKB type in sqlite
2011-10-18 22:19:03 +02:00
Dane Springmeyer
1fe029c6e9 Merge pull request #908 from MapQuest/shield-placement-bug
Fixed bug in shield line placement
2011-10-17 14:08:50 -07:00
Dane Springmeyer
b7a4906978 Merge pull request #908 from MapQuest/shield-placement-bug
Fixed bug in shield line placement
2011-10-17 14:08:50 -07:00
Konstantin Käfer
763ece8db6 group-by attribute for Layer 2011-10-13 01:30:18 +02:00
Dane Springmeyer
3c14ada217 enable contruction of a memory_featureset from a std::vector<feature_ptr> 2011-10-11 17:29:42 -07:00
Matt Amos
b5c4bb77de Exposed the label collision detector outside the agg_render object
and via Python, allowing detectors to be re-used across renderings.
2011-10-12 01:05:35 +01:00
Matt Amos
3f47de0e81 Fixed bug in shield line placement when dx/dy are used to shift
the label relative to the placement point.
2011-10-12 01:02:28 +01:00
Dane Springmeyer
f8e2a3ed1b fix compile on ppc (big endian) systems 2011-10-10 14:03:43 -07:00
Artem Pavlenko
c97399b0f6 + move <unicode> includes to .cpp
+ disble 'ubidi_getBaseDirection' check for ICU < 4.6
2011-09-26 08:58:33 +00:00
Artem Pavlenko
3d6ea00c66 + linewrap-patch-r3362.patch from dimka (#189) 2011-09-25 19:43:02 +00:00
Dane Springmeyer
00e8f06f13 ensure the experimental svg_renderer compiles 2011-09-16 16:18:10 +00:00
Alberto Valverde
4444907855 ported warer warping functionallity to cairo renderer. Closes #887 2011-09-16 14:34:14 +00:00
Alberto Valverde
e41abb0e12 add a label attribute to colorizer_stop 2011-09-16 13:32:16 +00:00
Alberto Valverde
97431c8de4 made mesh_size configurable 2011-09-16 12:21:21 +00:00
Alberto Valverde
6ffbd07174 use AGG for interpolation when warping rasters 2011-09-13 15:41:39 +00:00
Artem Pavlenko
d5e57afac0 + move compositing into core lib 2011-09-13 15:31:07 +00:00
Artem Pavlenko
fad2d7739b + change wkb interface to work directly on ptr_vector<geometry_type>
+ expose ptr_vector<geometry_type> in feature
2011-09-13 11:54:04 +00:00
Dane Springmeyer
67df69834f allow reprojection of batches of points - patch cherry picked from albertov's work on optimizing raster reprojection performance (upcoming) - closes #877 2011-09-12 18:30:34 +00:00
Dane Springmeyer
ac3e43e5a4 support faster wgs84->merc transforms, a very common reprojection scenario in web mapping - added benefit of this approach is easy clipping for robust handling of out of bounds mercator coords - closes #839 2011-09-12 02:10:58 +00:00
Dane Springmeyer
0ec7ef6d46 renderers can now report to image if any features have been rendered via im.painted(), and im.background now uses boost optional to allow easy detection of whether a background has been set - closes #875 2011-09-11 06:24:26 +00:00
Dane Springmeyer
67d7a3a6f0 add alternative line rasterizer that can be enabled to draw faster lines at the expense of dropping short geometries - for thin lines has nicer look but should not be used with think lines - refs #873 2011-09-09 23:45:49 +00:00
Artem Pavlenko
a59c961c1f + add missing save_to_file overloads
+ remove dummy rgba_palette args
2011-09-09 12:40:30 +00:00
Artem Pavlenko
aba5f21936 + applied patch from itayperl (bidi-mirroring-SVN-r3110.patch) 2011-09-08 15:08:17 +00:00
Artem Pavlenko
53b50c871c + modify WKT parser to work with ptr_vector<geometry_type>
+ fix memory leaks in wkt_grammar
+ add support for GEOMETRYCOLLECTION
2011-09-08 11:52:51 +00:00
Artem Pavlenko
e5de1ac285 + looks like it has been pasted twice,
removing duplicates.
2011-09-08 07:57:37 +00:00
Dane Springmeyer
d9e09e1221 add fastmath.hpp 2011-09-08 03:50:22 +00:00
Artem Pavlenko
02c143895d + refactor palette stuff a bit
TODO: We need to change save_to_file|string interface
  to avoid passing dummy rgba_palette objects.
2011-09-07 15:01:25 +00:00
Dane Springmeyer
25196e3a8e revise png palette api by removing default arguments to ensure no temporary references 2011-09-07 00:45:18 +00:00
Dane Springmeyer
aa5cfad4b7 add minimum-path-length to text_symbolizer - closes #865 2011-09-04 17:33:48 +00:00
Artem Pavlenko
2c5f723344 + oops, corrected:) 2011-09-01 19:21:03 +00:00
Artem Pavlenko
9a9e5fb2e3 Iterate unusedPool until we get 'valid' connection or
create a new one if usedPool.size() < maxSize_.
2011-09-01 19:20:26 +00:00
Dane Springmeyer
964cfdd423 newline 2011-09-01 05:19:13 +00:00
Dane Springmeyer
c61decc3e8 more includes for timer 2011-09-01 04:48:09 +00:00
Dane Springmeyer
f9358f005f ensure the timer compiles on osx with clang++ - patch from rcoup 2011-09-01 04:33:39 +00:00
Dane Springmeyer
5f548cbe26 new timer.hpp that includes both cpu and wall clock output - patch from rcoup - refs #780 2011-09-01 01:06:33 +00:00
Dane Springmeyer
b2dc2fa6d2 move feature_style_processor to cpp 2011-09-01 00:44:27 +00:00
Dane Springmeyer
106173914c avoid compiler warning 2011-09-01 00:42:23 +00:00
Dane Springmeyer
a013cd5032 add support for fixed color palettes when encoding to png 2011-08-31 02:28:14 +00:00
Dane Springmeyer
00d059b39c expose blend pixel methods for grid renderer 2011-08-30 22:26:59 +00:00
Dane Springmeyer
9e87c9f914 apply patch from Peter Körner adding AlsoFilter functionality - closes #820 2011-08-30 17:38:27 +00:00
Dane Springmeyer
caf541d87e add support for controlling zlib compression level and strategy when encoding to png - patch from kkaefer - closes #841 2011-08-26 05:58:21 +00:00
Dane Springmeyer
4a0ed78cb7 add ability to discard a timer without it later printing 2011-08-24 23:15:22 +00:00
Dane Springmeyer
ae41899152 simply and cleanup the wall clock timer 2011-08-24 22:02:07 +00:00
Dane Springmeyer
d3211372a4 sqlite: support both single and double quoted table names 2011-08-16 23:24:02 +00:00
Dane Springmeyer
d5035d0474 remove const from setter 2011-08-11 22:58:53 +00:00
Dane Springmeyer
81bf8b3d06 expose the name2file mapping of font family/style and font file publically so apps can ask mapnik where a given font face was found on the filesystem 2011-07-29 18:03:45 +00:00
Hermann Kraus
53e0b22c2b Added metawriter helper function. 2011-07-28 22:59:05 +00:00
Dane Springmeyer
da337036d4 avoid compiler warning re intialization order 2011-07-27 04:34:02 +00:00
Dane Springmeyer
f14fc9dcf7 improve code comments around transforms and intersection checks 2011-07-21 21:53:39 +00:00
Dane Springmeyer
c5c729b17c fix typo (map_ext.intersects(map_ext) -> map_ext.intersects(layer_ext)) and add small optimization so that if projections are equal we don't check intersection twice before returning no hit 2011-07-21 21:14:06 +00:00
Hermann Kraus
8bb6df1a07 Optionally output JSON data with pixel coordinates. 2011-07-16 12:24:52 +00:00
Dane Springmeyer
3d862034cd allow '[field] is null' syntax to work with the understanding this may have unintended consequences and we should likely ultimately replace with proper 'is' equality support for nulls - track issue at http://trac.mapnik.org/ticket/794 2011-07-12 01:48:36 +00:00
Dane Springmeyer
a726787a40 add mapnik::Boolean type so we can report attributes with boolean type - closes #795 2011-07-11 22:34:08 +00:00
Dane Springmeyer
4356144e4a shuffle attribute_descriptor class to its own header, previously extant but unused 2011-07-11 21:03:39 +00:00
Dane Springmeyer
aab601da64 comment unused struct that trips up clang++ 2011-07-09 01:05:52 +00:00
Dane Springmeyer
161d978fb4 support hsl colors for boost versions 1.42 - 1.45 2011-07-01 18:54:01 +00:00
Dane Springmeyer
eab80c5a91 fixup proj_init error message 2011-06-30 17:59:27 +00:00
Dane Springmeyer
476e04c4c7 add gamma to polygon-pattern-symbolizer, useful for avoiding AA affects at tile edges so that global patterns can have seamless alignment 2011-06-28 22:37:35 +00:00
Dane Springmeyer
4e229ac516 more sql utility functions for handling quoting 2011-06-13 21:43:37 +00:00
Artem Pavlenko
9bc45c9ca1 + addd boost::equality_comparable<box2d<T> 2011-06-07 21:16:03 +00:00
Artem Pavlenko
1d2abb8206 + add support for CSS3 HSL colors: http://www.w3.org/TR/css3-color/#hsl-color 2011-06-07 16:14:11 +00:00
Artem Pavlenko
4a72a7d680 + fix color(std::string const& ) ctor to initialize r,g,b,a.
+ impl eq ops using boost::equality_comparable.
+ output alpha in to_hex_string if not 255.
2011-06-07 16:14:02 +00:00
Artem Pavlenko
bc3d784b85 + change ingterface to work with std::string 2011-06-07 16:13:54 +00:00
Dane Springmeyer
3d81a07f06 support for png 1.5.x, should work fine with 1.4.x - closes #772 2011-06-05 21:02:55 +00:00
Dane Springmeyer
ef6af65f17 remove debug output 2011-06-03 22:11:51 +00:00
Dane Springmeyer
e93bfa7a5a add a grid_view class to allow subsetting of grids for metatiling 2011-06-03 05:55:28 +00:00
Dane Springmeyer
001f38fc57 expose get/set of key and resolution on grid renamed from join_field/step 2011-06-03 01:55:26 +00:00
Dane Springmeyer
3654e92ee4 nearest neighbor resampling impl for grid array 2011-06-01 17:22:56 +00:00
Dane Springmeyer
2bec001a44 add missing change to header for r2942 2011-05-31 22:44:48 +00:00
Dane Springmeyer
fcdf033004 restore boost 1.41 -> 1.44 compatibility 2011-05-31 17:34:09 +00:00
Hermann Kraus
8474976353 Prepare for merging "text_placement_info" and "placement". 2011-05-30 01:16:21 +00:00
Hermann Kraus
de089f0d68 Add alignment to text_placement_info. 2011-05-29 22:33:41 +00:00
Dane Springmeyer
8322a96575 code cleanup 2011-05-27 21:00:19 +00:00
Artem Pavlenko
b6f02e6d4d + adapt mapnik::color as fusion sequence to avoid intermediate data structure 2011-05-26 10:07:37 +00:00
Dane Springmeyer
7a17c7e597 load_map_from_string has always accepted a base path argument to drive the interpretation of relative paths in the stylesheet when loaded in memory- this really should be a full map property so that it can be known on the map object after parsing and changed if the map is saved to a new location 2011-05-25 23:48:07 +00:00
Dane Springmeyer
e4329847d2 shape.input: re-assign feature id's once we know their correct value after reading geometry up to the dbf link - TODO - we should be able to look ahead to avoid this re-assign 2011-05-20 01:41:28 +00:00
Dane Springmeyer
ba15947a4f add Projection.expanded() function to ask proj4 what its internal, normalized definition looks like (useful only for debugging) 2011-05-17 19:05:15 +00:00
Dane Springmeyer
b578c02c54 make renderer type a template argument of agg svg renderer 2011-05-17 06:18:06 +00:00
Dane Springmeyer
b3c258c9a8 allow usage of boost::make_shared in gdal featureset construction by passing const reference - #760 2011-05-16 22:17:50 +00:00
Dane Springmeyer
aeb1b7f963 renable previous (non-agg) internal bilinear scaling method for testing #759a 2011-05-12 16:43:23 +00:00
Dane Springmeyer
90fbd6a204 use boost::make_shared to avoid explicit new and ensure fast and exception safe allocation 2011-05-10 21:09:54 +00:00
Dane Springmeyer
301824e60d remove unused header 2011-05-10 21:05:35 +00:00
Artem Pavlenko
3bef010056 + move feature_factory.hpp include to impl file 2011-05-09 13:52:06 +00:00
Artem Pavlenko
692af5cbc1 + use boost::make_shared to improve shared_ptr
allocation locality
2011-05-09 13:51:58 +00:00
Artem Pavlenko
82a71649b6 + remove extra namespace qualifiers 2011-05-09 09:11:57 +00:00
Artem Pavlenko
7b620a9f71 + cleanup/formatting 2011-05-09 09:11:49 +00:00
Dane Springmeyer
d05b0c539f apply major refactor of RasterColorizer by ben moores from https://github.com/BenMoores/mapnik-trunk/wiki/RasterColorizer - closes #523 2011-05-04 00:20:17 +00:00
Dane Springmeyer
2f77de0bf9 add a few more centroid algorithms for testing 2011-05-03 21:38:02 +00:00
Dane Springmeyer
adb44a6ec2 account for scaling and alpha of bitmap images in grid_renderer 2011-05-02 22:33:11 +00:00
Dane Springmeyer
e69f17eb35 add ability to pass a scaling ratio just to the affine scaling - needed by grid_renderer 2011-05-02 22:30:50 +00:00
Dane Springmeyer
b6c5c57713 label_position on lines should take the middle point to preserve previous behavior before move to path type geometries - patch from Ldp - closes #740 and #668 2011-04-30 00:43:57 +00:00
Dane Springmeyer
157d52e38f add option to collect the total extent of all placement bboxs to enable passing along to metawriters - modified patch from kevin.kreaiser - closes #755 2011-04-30 00:06:27 +00:00
Dane Springmeyer
ab94fd43d8 add test for grid generation, and make sure point_datasource feature id starts at 1 (as datasources should) 2011-04-29 19:25:00 +00:00
Dane Springmeyer
da4893d8fe declare dlf ctor explicit 2011-04-29 17:40:55 +00:00
Dane Springmeyer
b072de4769 create layer descriptor when memory_datasource is created - TODO - gather attribute descriptors as features are added 2011-04-28 17:36:36 +00:00
Hermann Kraus
6650f999b9 char is to short for unicode chars. Replace it with unsigned int. Should fix #746. 2011-04-27 20:28:53 +00:00
Dane Springmeyer
5eea164b5a add grid_renderer backend 2011-04-26 21:44:52 +00:00
Dane Springmeyer
9da2d701a5 further template the svg_renderer based on pixfmt 2011-04-26 17:38:18 +00:00
Dane Springmeyer
318465ef53 output feature id when printing feature to string 2011-04-19 22:41:16 +00:00
Dane Springmeyer
424eef4a2f refactor feature_style_processor a bit to allow passing reference of names as arg apply_to_layer. Will set up for more potential flexibility around passing pre-populated query names. 2011-04-19 04:23:11 +00:00
Dane Springmeyer
74bb2da73b avoid uninitialized variable warning 2011-04-18 18:48:57 +00:00
Dane Springmeyer
5c799b2174 skip rendering specific coordinates which cannot be back projected from the layer srs into the map srs, avoiding the previous outcome of full skipping of features (this is at the cost of potentially odd looking polygons, but should not impact performance) - closes #308 2011-04-15 22:13:23 +00:00
Dane Springmeyer
69eb5c4579 first forward map ext to layer srs, falling back to backward projecting layer to map (previous behavior). Also leverage new clip function of box2d<double> class - closes #402, #548, and #549 (and indirectly fixes #308 combined with #506) - see also http://trac.mapnik.org/wiki/BoundsClipping 2011-04-15 18:39:07 +00:00
Dane Springmeyer
92a36f21ff early return if layer has no styles 2011-04-15 07:19:44 +00:00
Dane Springmeyer
fd54be4cc5 if 'maximum-extent' is provided, clip map query extent to it allowing one simple and fast way of controlling out of bounds coordinates when projecting into/from layer projection - see also solution at #549 2011-04-15 07:13:08 +00:00
Dane Springmeyer
8998296f7b add 'maximum-extent' attribute to map and use this, if set, in place of calculated layer extents in zoom_all() 2011-04-14 02:20:33 +00:00
Dane Springmeyer
ff006dd3f0 allow copy of mapnik::projection when proj_transform is created - closes #658 - TODO - consider using shared_ptr 2011-04-13 21:30:39 +00:00
Dane Springmeyer
383d8a3f15 add proj_transform forward/backward box2d implementation 2011-04-13 19:40:44 +00:00
Dane Springmeyer
daf5cff723 add ability to set the bbox of a query object after initial contruction 2011-04-13 19:30:19 +00:00
Dane Springmeyer
903d1b49ef add a clip method to mapnik::box2d 2011-04-13 19:19:23 +00:00
Artem Pavlenko
0e0b7a578c + implement memory mapping using boost::interprocess
+ cache mapped memory regions for re-use
2011-04-06 13:02:31 +00:00
Dane Springmeyer
2d1e2ef998 add valid() method to box2d, and comment subtraction override as it does not have any function currently 2011-04-04 03:50:09 +00:00
Dane Springmeyer
7d6ed703f4 move numeric2string to sql_utils.hpp 2011-04-04 03:46:41 +00:00
Dane Springmeyer
49c011a48a avoid various compiler warnings 2011-04-03 04:30:32 +00:00
Dane Springmeyer
9b1a33be5c remove spurious semicolon 2011-04-02 03:08:16 +00:00
Dane Springmeyer
7095b1c907 initialize all metawriter members 2011-04-02 00:12:12 +00:00
Dane Springmeyer
de9a46cfeb remove tabs 2011-04-01 23:56:12 +00:00
Dane Springmeyer
84ea9e6101 avoid clang++ -pedantic compiler warnings 2011-04-01 06:24:57 +00:00
Dane Springmeyer
7181f631e8 avoid clang++ compiler warnings with -pedanic 2011-04-01 05:32:25 +00:00
Dane Springmeyer
14068cad23 move segment y_order sort to header that can be used by each renderer 2011-03-22 00:02:50 +00:00
Dane Springmeyer
b3c01a5b59 avoid uninitialized variable compiler warnings 2011-03-21 20:35:15 +00:00
Artem Pavlenko
9abfc24219 + remove namespace qualifier from DEFINE_ENUM
macro to keep clang++ 3.0 happy
2011-03-21 15:24:04 +00:00
Dane Springmeyer
3f219a7046 workaround for latest clang trunk (>=127962) which throws on template <> (extraneous 'template<>' in declaration of variable...) 2011-03-20 19:18:03 +00:00
Hermann Kraus
720d9f216c Add virtual constructors to text placement base classes. 2011-03-20 19:00:29 +00:00
Artem Pavlenko
ec4ef1bb34 + add missing files from 735_metawriter_inmem.patch 2011-03-16 16:50:02 +00:00
Artem Pavlenko
b543d7f1f4 + add optional length parameter to allow
passing not-null terminated char strings
2011-03-16 13:31:56 +00:00
Artem Pavlenko
9b47d8353e + restore #ifdefs around -> if(!p.process(symbols,*feature,prj_trans)) 2011-03-15 14:18:46 +00:00
Dane Springmeyer
aea93fe1f9 fix bug in hit_test for points, allowing possibility of hit if tolerance is fractional (most cases) 2011-03-13 22:15:52 +00:00
Artem Pavlenko
cbbc904bbd + qualify boost::spirit::qi placeholders to avoid ambiguity 2011-03-09 11:07:21 +00:00
Artem Pavlenko
3a4f9307a5 + add missing header 2011-03-07 12:54:00 +00:00
Artem Pavlenko
3daa06bb11 + impl GEOMETRYCOLLECTION parser as composite 2011-03-07 12:53:52 +00:00
Dane Springmeyer
4079fd7d08 make feature caching optional, and disabled by default (to avoid std::bad_alloc in low memory environments). Can be set as new layer property 'cache-features' - closes #657 2011-03-01 17:09:29 +00:00
Dane Springmeyer
efb19dea6c make the requirement of boost_regex unicode support optional by detecting if boost_regex was itself built with ICU support 2011-02-28 20:00:56 +00:00
Dane Springmeyer
2ea0340e2d avoid unintialized variable warnings in g++ 2011-02-28 18:30:38 +00:00
Hermann Kraus
4af0696b9d Add support for multiple placements.
NOTE: In some places indention is not updated to keep this patch readable. This will be fixed in the next revision.
2011-02-28 13:17:46 +00:00
Artem Pavlenko
57db45095f + boost.spirit WKT parser using mapnik::geometry_type
as synthesized attribute.
2011-02-24 15:47:53 +00:00
Artem Pavlenko
ef28bca095 + add push_vertex(x,y,command) method 2011-02-24 15:47:44 +00:00
Artem Pavlenko
93514d57a2 + add missing geometry types
+ correct geometry types in wkb reader
2011-02-24 15:47:36 +00:00
Dane Springmeyer
a317c5d051 add 'capitalize' option to text-transform - closes #715 2011-02-21 20:43:26 +00:00
Dane Springmeyer
663e030d41 be explicit about types for unicode - allows compile with nacl-g++ 2011-02-19 03:01:13 +00:00
Carlos López
83a7b4710e Fixed a bug that caused half of the vertexes to disappear from the SVG path.
+ mapnik::geometry_iterator was replaced by mapnik::svg::path_iterator
+ svg::path_output_grammar was simplified
+ the container for this grammar is now coord_transform2, instead of geometry
+ added typedef size_type to coord_transform2 and removed it from geometry
2011-02-14 03:40:25 +00:00
Dane Springmeyer
df8a987501 disable SVG_RENDERER until #712 is resolved 2011-02-09 10:43:59 +00:00
Dane Springmeyer
ec2090d8a8 avoid compiler warnings 2011-02-09 06:49:58 +00:00
Carlos López
6f6b161c7c geometry_iterator code documentation. 2011-02-07 01:45:29 +00:00
Carlos López
40047e7a56 SVG_RENDERER working again after changes introduced in r2302.
+ a boost::iterator is used to handle iteration in path grammar
+ svg_path_data_grammar consumes a reference to geometry, rather than a geometry, avoiding copy-construction
+ a size_type was added to geometry so it could model the attribute container concept
2011-02-05 07:08:01 +00:00
Dane Springmeyer
1c2d39f980 bump version to mapnik 2.0.0 2011-02-05 03:10:19 +00:00
Dane Springmeyer
c5833a6db8 remove unmaintained autotools scripts 2011-02-04 22:22:16 +00:00
Artem Pavlenko
da983367a8 + remove 'bind' param
from datasource (base class) ctor
  (FIXME: would be better to use parameters to
          pass to specific options to concrete
          datasource implementations)
2011-02-02 15:09:46 +00:00
Dane Springmeyer
7e7ca0a814 fix spelling 2011-02-02 02:44:46 +00:00
Dane Springmeyer
fd2d9d7ff3 enable aliased lines using stroke-gamma for line_symbolizer - closes #689 2011-02-02 01:46:14 +00:00
Dane Springmeyer
7043c416fa enable if/else type behavior in rules using style level keyword to control whether all rules will be evaluated or just the first that matches - closes #706 - thanks to original patch from kkaefer 2011-02-01 22:55:50 +00:00
Dane Springmeyer
75649b8863 add 'interior' point placement option to point_symbolizer - closes #709 2011-02-01 08:16:32 +00:00
Dane Springmeyer
e803b1c2ec add 'interior' placement option to text_symbolizr - patch from Toby Collet - closes #709 2011-02-01 08:13:08 +00:00
Dane Springmeyer
65a19d1f8b forward declare agg:trans_affine as a struct in cairo_renderer.hpp as per original declaration 2011-01-27 04:22:11 +00:00
Dane Springmeyer
a8328e1588 forward declard agg:trans_affine as a struct as per original declaration 2011-01-27 04:20:04 +00:00
Dane Springmeyer
5bf6efafb0 apply patch from Craig de Stigter for better scaling methods using agg image filters - closes #656 2011-01-27 03:47:54 +00:00
Dane Springmeyer
790e6c4282 clean up handling of raster_symbolizer filter_factor by using boost visitation instead of boost::get() 2011-01-27 03:20:39 +00:00
Dane Springmeyer
bcb9a66acf struct to hold directives to send to raster symbolizer 2011-01-27 03:03:46 +00:00
Dane Springmeyer
57f15aa74e forward declare agg:trans_affine and mapnik::marker classes to allow compiling against libmapnik without agg headers - see #703 2011-01-26 09:19:00 +00:00
Dane Springmeyer
481aeb6c98 comment debug output 2011-01-26 09:17:01 +00:00
Robert Coup
386a4f5daf #654 - add support for linear and radial gradients in SVG symbols. Thanks to Toby Collett for the coding & Paul Wicks for funding. 2011-01-26 01:18:40 +00:00
Carlos López
85bfb11c03 SVG renderer grammars working with iterator of geometry, but generating wrong path vertexes (all vertexes are output as 0s). 2011-01-23 23:10:05 +00:00
Carlos López
d270a555eb Added missing file 'geometry_iterator.hpp'. The iterator is still unused. 2011-01-22 16:45:23 +00:00
Carlos López
bdfaee32a6 SVG_RENDERER is compiling now, but it won't generate path data, only simple svg tags.
+ It is working with vertex_vector, instead of vertex_vector2.
+ The body of every function related to path generation was commented out so mapnik would compile with SVG_RENDERER=True.
+ TODO: Create an iterator for geometry.
2011-01-22 06:47:20 +00:00
Carlos López
d5d9858a84 SVG_RENDERER grammars adapted to use vertex_vector instead of vertex_vector2 and BOOST_FUSION_ADAPT_STRUCT instead of BOOST_TUPLE_ADAPT_CLASS. This changes have not been tested though. There's still a compile error because there is no iterator in class geometry anymore. 2011-01-18 03:43:53 +00:00
Artem Pavlenko
98b7f62155 + remove template from mapnik::rule
+ rename globaly rule_type -> rule
 ( ticket #552 )
2011-01-13 21:35:01 +00:00
Dane Springmeyer
2f369ff407 add a few missing include guards 2011-01-13 18:45:40 +00:00
Dane Springmeyer
2fa027855a don't return reference to temporary, and intialize metawriter values 2011-01-10 23:04:34 +00:00
Dane Springmeyer
ed22d073c3 fix serialization of missing shield symbolizer properties 2010-12-11 02:07:47 +00:00
Dane Springmeyer
fc6227afda better handling of alpha blending - patch from cdestigter - closes #674 2010-12-10 19:31:57 +00:00
Robert Coup
1acc54f1fb TextSymbolizer: make '\n' trigger line break. fixes #584. Thanks bcrosby for porting to trunk 2010-12-09 08:48:46 +00:00
Artem Pavlenko
6713df5937 + if avoid_edges=true check 'contains' using un-buffered extent. 2010-11-22 11:25:36 +00:00
Dane Springmeyer
58c72fc1c9 reflect new box2d<double>from_bbox() function in python, and add a new value_error class to represent parsing errors (TODO: translate in python to ValueError and throw from other parsers like expression and color) 2010-11-15 03:21:43 +00:00
Lucio Asnaghi
86a248d443 - leverage building extent (box2d) from string: multiple usage in datasources 2010-11-14 14:38:43 +00:00
Dane Springmeyer
84a8590964 remove const which has no effect here 2010-11-14 08:32:41 +00:00
Alberto Valverde
2d329799ef typo 2010-11-12 22:45:24 +00:00
Alberto Valverde
51d8df72f9 attempt at fixing geometry::hit_test() 2010-11-12 22:11:31 +00:00
Dane Springmeyer
385ad05205 create an sql_utils header for all sql-based plugins to be able to leverage, and move the postgis table_from_sql function into it 2010-11-11 16:33:30 +00:00
Artem Pavlenko
d5f0a497a8 + auto detect paths orientation
+ not need to set clip box on rasterizer it's
  already set (fixes gap when label is overlapping border)
2010-11-10 14:40:05 +00:00
Dane Springmeyer
90e51e79e8 warn the user if we are going to ignore their raster layer because exact projection matching is so brittle 2010-11-09 19:54:53 +00:00
Dane Springmeyer
ecc974aa6e avoid compiler warning 2010-11-08 23:17:35 +00:00
Artem Pavlenko
ab101401cd + simplify geometry implementation
+ removed multiple geometry typedefs
+ use geometry_type
+ revert to storing vertices in vector_vertex
  (previous implementation using std::vector was
   fragmenting heap causing performance issues with large geometries)
+ FIXME: hit_test is broken!
2010-11-03 13:19:15 +00:00
Artem Pavlenko
0823b83900 + apply Nino Walker's patch text_minimum_padding.diff #547
TODO:  consider simplifying text symbolizer options
2010-11-03 13:18:56 +00:00
Artem Pavlenko
87eafdba19 + fix unused argument warning 2010-11-03 13:18:46 +00:00
Dane Springmeyer
ea39e6f69e add a directory for plugin templates - and add a first "hello world" with basic docs" 2010-10-24 08:04:16 +00:00
Robert Coup
1dce437120 #622 add optional late-binding of datasources 2010-10-24 06:34:18 +00:00
Dane Springmeyer
3011f53205 add support to PointSymbolizer for 'ignore_placement' - #564 2010-10-15 02:15:40 +00:00
Dane Springmeyer
688b1f2299 add an 'extra_attributes' property to the map to store mapnik::parameters that don't make sense as full attributes but need to be carried through from load_map() to save_map() for applications that use mapnik to serialize to xml such as Cascadenik and Quantumnik (currently useful storage for 'minimum_version' and 'font_directory') 2010-10-07 19:34:36 +00:00
Dane Springmeyer
157e835ebf make sure to return with something 2010-10-07 19:30:35 +00:00
Alberto Valverde
6e31bacf2c fixed the regression in hit_test mentioned in #560 in a temporary way until the geometry interafce settles down 2010-10-01 12:24:29 +00:00
Artem Pavlenko
bbc797aeff + pass scale_factor to text placement 2010-09-27 09:58:30 +00:00
Artem Pavlenko
1557892862 + ident 2010-09-27 09:58:12 +00:00
Dane Springmeyer
154450fb8b fix test failure when calling ds.all_features() by allowing a simple Box2d Query contructor - sidestepping issue of converting a python tuple to a boost tuple atm 2010-09-26 23:39:04 +00:00
Dane Springmeyer
207168fafc fix broken feature caching - #624 2010-09-26 10:25:15 +00:00
Artem Pavlenko
01076f87e3 + don't process raster datasource
+ if src and dest projections are not matched
2010-09-24 15:44:35 +00:00
Dane Springmeyer
b3810a5f6a stub in new alpha manipulation functions for mapnik image - #609 2010-09-24 15:37:19 +00:00
Tom Hughes
05ab656b57 The upcoming 4.8.0 release of PROJ.4 is supposed to be threadsafe, so
lets believe them and not use any locks if we are building against
version 4.8.0 or later.

Instead we use the new proj_ctx_alloc routine to create a context and
pass that when initialising the projection structure.
2010-09-24 15:26:50 +00:00
Artem Pavlenko
6fa56b143a + add 'is' keyword (same as 'eq', '=')
+ parse 'null' as  value_null()
2010-09-24 12:55:20 +00:00
Dane Springmeyer
c35310445a rename text_convert to text_transform to match css naming convention (also matching enums to css) 2010-09-18 19:10:18 +00:00
Dane Springmeyer
ec8de98740 avoid compiler warnings 2010-09-18 18:51:22 +00:00
Dane Springmeyer
e22c187e95 expose an indexing operator on box2d to allow for easy pythonic access to bounds parts 2010-09-16 14:41:29 +00:00
Artem Pavlenko
571bd1141b + make typdefs public 2010-09-02 20:20:26 +00:00
Dane Springmeyer
8125366ed6 add newline at end of file to avoid compiler warning on RHEL 2010-08-26 23:15:07 +00:00
Dane Springmeyer
22fc14ef05 + ability to pass coord2d to box2d::re_center in core and python 2010-08-19 21:35:27 +00:00
Dane Springmeyer
b307013ba2 add additional support for dynamically drawing ellipses in the markers_symbolizer, now supporting both line/point placement, metawriters for point placement, and width/height/stroke attributes - TODO - reflect in python bindings, buggy matrix transform for ellipses 2010-08-19 17:33:01 +00:00
Dane Springmeyer
a7e9cc7e87 make output of empty json (if no features are hit) on by default, and rename parameter from 'only-nonempty' to 'output-empty' 2010-08-19 05:50:08 +00:00
Hermann Kraus
d3bb11456f Last Summer of Code changes: Support metawriter in upgrade_map_xml.py, fix attribute collector. 2010-08-16 19:14:21 +00:00
Hermann Kraus
55d9bf3290 Add glyph dimension caching and move functions from .hpp to .cpp 2010-08-13 18:41:54 +00:00
Hermann Kraus
7fea0f7a6c Metawriter support for LineSymbolizer and LinePatternSymbolizer 2010-08-12 21:39:29 +00:00
Hermann Kraus
fb4baa4fcf Metawriter support for LineSymbolizer and LinePatternSymbolizer 2010-08-12 19:12:15 +00:00
Marcin Rudowski
bd8f189bd1 fix raster blending, ported r2137, fixing #589 2010-08-12 06:59:35 +00:00
Hermann Kraus
24fb874c7d Add metawriter support to save_map.cpp 2010-08-12 00:11:01 +00:00
Dane Springmeyer
0637d59b5c make SVG processor dependent (for now) on SVG_RENDERER scons option 2010-08-10 23:46:11 +00:00
Dane Springmeyer
6cce96dd06 upgrade default projection of epsg:4326 to match exactly what proj4 stores in /usr/local/share/epsg for 4326 (aka WGS84) 2010-08-10 18:18:31 +00:00
Dane Springmeyer
5297d9bba0 allow for maintaining default ctor for projection class, reverting part of r2105 and part of r2102 (would have caused compile problems in mod_tile) - see also #333, which this sets us up for 2010-08-10 17:42:17 +00:00
Dane Springmeyer
48a9edb01c allow vertex_vector2 to be copyable, enabling compiles on osx - needs second look #588 2010-08-10 17:22:21 +00:00
Hermann Kraus
db21530977 Add symbolizer_base constructor to all symbolizers. 2010-08-10 12:34:44 +00:00
Hermann Kraus
30470bd52b Metawriter support for TextSymbolizer. 2010-08-10 12:19:19 +00:00
Hermann Kraus
85cd4b67c3 Get full fontsize information. 2010-08-10 12:05:38 +00:00
Carlos López
fda7f66204 Added missing files from last commit. 2010-08-10 08:25:09 +00:00
Carlos López
e390715c58 Added support for processing multiple symbolizers to svg renderer. 2010-08-10 08:23:02 +00:00
Hermann Kraus
72c5983f1e Fix typo. 2010-08-08 19:00:56 +00:00
Hermann Kraus
92626bc1ad Document metawriter classes. 2010-08-08 02:42:40 +00:00
Hermann Kraus
0fdf3a2463 Pass parameter as const&. 2010-08-07 20:03:05 +00:00
Artem Pavlenko
ccf9f841da destroy source glyph in FT_Glyph_Stroke 2010-08-05 11:56:26 +00:00
Artem Pavlenko
7e0e117352 + call FT_Done_Glyph on (FT_Glyph_Copy) created glyph 2010-08-05 11:56:18 +00:00
Artem Pavlenko
f9b9c14500 pass parameters by const ref 2010-08-05 11:56:11 +00:00
Hermann Kraus
5725c694c6 Add "only-nonempty" to XML config. 2010-08-02 12:37:15 +00:00
Hermann Kraus
035e99d2f0 Only initialize proj_transform once in metawriter_json_stream. 2010-08-02 12:14:27 +00:00
Hermann Kraus
03718169b1 Only write non-empty tiles. 2010-08-02 01:35:18 +00:00
Hermann Kraus
75dcf67c92 Add some helper functions. 2010-08-02 00:37:15 +00:00
Hermann Kraus
0ae110015b Metawriter: Only write features that are actually rendered. 2010-08-01 15:07:50 +00:00
Hermann Kraus
8f8903baa5 Bugfix + better performance. 2010-07-31 10:20:56 +00:00
Carlos López
eec4864f41 SVG renderer now outputs path tags for polygons, with a fixed stroke color and size. 2010-07-30 22:15:50 +00:00
Carlos López
9af87ba8db SVG generator outputs path vertices in user coordinates. 2010-07-30 18:40:41 +00:00
Hermann Kraus
3791e95eda Some metawriter fixes. 2010-07-29 16:49:47 +00:00
Carlos López
6872d13968 Implemented svg_renderer::process_polygon_symbolier that uses the SVG path grammar, which outputs coords in map coords. 2010-07-28 06:50:25 +00:00
Carlos López
39a1038eb8 Added missing files: include/mapnik/svg/svg_generator.hpp and include/mapnik/svg/svg_generator_path_grammar.hpp. 2010-07-26 06:23:43 +00:00
Carlos López
853d55b7d6 Changed geometry and vertex_vector2 back to inherit from boost::noncopyable. Thought that Karma would require them to be copyable. 2010-07-26 06:19:50 +00:00
Carlos López
f44333fa4e Added dummy grammar to generate SVG paths from geometries, as well as an SVG generator component. 2010-07-26 04:25:09 +00:00
Hermann Kraus
87fd78f313 Add support for dynamic filename in metawriters. 2010-07-25 22:41:18 +00:00
Hermann Kraus
7df4474f0b Add metawriter properties to Map object. 2010-07-25 21:05:30 +00:00
Carlos López
b5b94a868c Changed template parameter type from stream to iterator and added a specialization for std::ostream_iterator. 2010-07-22 04:48:11 +00:00
Dane Springmeyer
f802d21865 speed optimizations by more careful use (or avoidance) of locking around projection code 2010-07-21 23:05:22 +00:00
Dane Springmeyer
8b66c34eca only using cache-first logic if caching features 2010-07-21 00:43:13 +00:00
Artem Pavlenko
1ecdba1965 + fix feature caching implementation - collect
attributes names from all active styles

+ use BOOST_FOREACH to improve readability

 TODO - move 'filter_factor' to raster_symbolizer
2010-07-20 22:21:14 +00:00
Carlos López
bb44d76ee1 Added generation of SVG root element with width and height attributes. Also added test for testing the output generated by svg_renderer (combined_test.cpp). 2010-07-20 06:41:16 +00:00
Carlos López
789ff19824 Added generation of XML declaration and doctype definition to svg_renderer. 2010-07-20 01:35:01 +00:00
Carlos López
30e85c4d58 Added template parameter and data member to svg_renderer for holding the output stream. 2010-07-20 00:40:37 +00:00
Carlos López
eb7da9bcf5 Added the path of the svg_renderer's files to scons for compilation. There is no variable yet to disable their compilation. 2010-07-19 19:48:34 +00:00
Artem Pavlenko
8b8e247e62 + add support for background-image attribute
( background image is repeated both vertically
   and horizontally )
2010-07-19 11:10:03 +00:00
Artem Pavlenko
4bf42fe2d7 + pass std::string argument by const& 2010-07-19 11:09:44 +00:00
Hermann Kraus
384c703557 Remove unneeded headers from save_map.{cpp,hpp} 2010-07-19 00:21:53 +00:00
Hermann Kraus
2c10bb68ef Enable metawriter_json to operate on any stream object. 2010-07-18 23:49:11 +00:00
Dane Springmeyer
7918184d13 add helper functions for recursively registering fonts, and ensure they match one of the known freetype2 supported fonts (by ext) - closes #559 2010-07-15 23:04:51 +00:00
Dane Springmeyer
4f9d6e135c output metadata about the searched plugin directories if a plugin cannot be found - closes #568 2010-07-15 21:11:41 +00:00
Artem Pavlenko
3d888515b3 + add feature caching support when multiple styles are
specified for the same layer. This should reduce
  I/O for complex styles and make multiple styles per
  layer a relatively cheap op. TODO: tweak memory_datasource
  impl.
2010-07-15 12:35:25 +00:00
Carlos López
d273101adc Added empty svg_renderer class, with unimplemented methods. 2010-07-15 05:32:31 +00:00
Dane Springmeyer
e670a1c44d only expose save_to_cairo_file if cairo support available 2010-07-14 18:30:22 +00:00
Artem Pavlenko
5c2f51504a + call base class ctor 2010-07-14 14:46:26 +00:00
Hermann Kraus
7e10a32503 Created a class for metawriter_properties. 2010-07-14 10:34:18 +00:00
Dane Springmeyer
ae0274cc6b make sure to only use mutexes if THREADING=multi/MAPNIK_THREADSAFE=True 2010-07-14 01:28:28 +00:00
Hermann Kraus
d5b0432dd7 Many metawriter improvements:
- Easier to configure
- Correct JSON output
- Handling more than one renderer run (writing pre-/postamble is no longer done in constructor/destructor)
- Collect all attributes required by metawriters
2010-07-12 15:27:33 +00:00
Hermann Kraus
9a0bcf23be Added basic infrastructure for metawriter and support for JSON output (limited to PointSymbolizer atm) 2010-07-06 00:37:05 +00:00
Artem Pavlenko
aa0e17afd1 + check cached connection status before returning.
if PQstatus(conn) == CONNECTION_BAD attempt to
  create a new one
+ expose "conect_timeout" PG connection parameter
  default to 4 sec
+ throw mapnik::datasource exception if connection
  is 'bad' in mapnik::features(..)
2010-07-02 11:42:35 +00:00
Artem Pavlenko
a486aed3af + fixed bug introduced in r1920
(ustring parser includes single quotes
   - remove extra '\'' in match/replace)
2010-06-28 22:43:35 +00:00
Artem Pavlenko
70b2453065 + add explicit support for shield displacement
(NOTE:text displacement is relative shield!)
2010-06-28 21:32:30 +00:00
Artem Pavlenko
9b3809443c + fix naming style in mapnik::Map 2010-06-25 15:23:35 +00:00
Artem Pavlenko
b472808fb1 + refactor remaining processing methods in agg_renderer
+ move agg_renderer.cpp to src/agg
2010-06-24 15:57:25 +00:00
Dane Springmeyer
04b7f5aa6f maintain boost 1.42/1.41 compatibility as lemexe appears to behave like no_skip with boost 1.42 2010-06-23 03:53:29 +00:00
Artem Pavlenko
8c8f303429 + allow empty strings in expressions e.g [name] <> '' 2010-06-22 13:06:55 +00:00
Artem Pavlenko
2f3a2c88b3 + css color grammar
- case-insensitive named colors
  - corrected alpha values parsing
2010-06-21 10:38:46 +00:00
Artem Pavlenko
ff9cca417b + use no_skip[] instead of lexeme[] directive
to avoid pre-skipping
2010-06-21 09:40:46 +00:00
Dane Springmeyer
e21f670275 add missing include 2010-06-21 03:18:07 +00:00
Dane Springmeyer
701c091f81 remove unneeded includes 2010-06-21 02:56:29 +00:00
Dane Springmeyer
0959f8ef16 + add support to polygon_patter_symbolizer for global pattern alignment in addition to local/feature (default) alignment - closes #203 2010-06-20 22:36:49 +00:00
Dane Springmeyer
182628e3ab + add filter_factor on mapnik::query and allow setting of factor for image scaling modes which demand high quality resampling - bilinear requires 2x, others in future like lanzcos may require 3-4x - addresses #563 2010-06-20 04:01:59 +00:00
Artem Pavlenko
e81b1abb8f + add implementation files 2010-06-18 15:39:57 +00:00
Artem Pavlenko
7bf6a35f5f + fixed clang++ issue 2010-06-18 15:39:40 +00:00
Artem Pavlenko
cf26db081a + refactor path expressions parser 2010-06-18 15:39:32 +00:00
Artem Pavlenko
ca59a06743 + move deg2rad to svg_path_commands 2010-06-18 15:39:23 +00:00
Artem Pavlenko
4c3eba876d + fixed template parameter shadowing (clang++) 2010-06-18 15:39:14 +00:00
Artem Pavlenko
5461739e64 + remove ununsed varialble 2010-06-18 15:38:59 +00:00
Artem Pavlenko
a5557d2b98 + qualify wit std:: 2010-06-18 15:38:52 +00:00
Artem Pavlenko
c99dff801a + forward decl mapnik::Map 2010-06-18 15:38:29 +00:00
Artem Pavlenko
79458691a1 + 'mutable' can't be applied to ref 2010-06-18 10:53:42 +00:00
Artem Pavlenko
e645338237 + use FT_Stroker to stroke glyphs outlines
(we can have outlined text now!)
+ allow fractional halo_radius
+ TODO: Rename halo_fill to stroke
               halo_radius to stroke-width
+ TODO: Implement proper 'halo' effect
2010-06-16 15:15:13 +00:00
Artem Pavlenko
e572b83d3a + fix copy ctor in symbolizer_with_image 2010-06-15 13:36:41 +00:00
Artem Pavlenko
9826cf98c5 + move opacity parameter to the base class
(symbolizer_with_image)
+ rename opacity to text_opacity in text_symbolizer
  to avoid name clashing
2010-06-15 12:27:42 +00:00
Artem Pavlenko
f43c36daad + separate state mutating svg ops from underlying data
to allow multi-threded access to svg symbols (SVG commands
  are stored in std::vector<vertex_type> )
2010-06-14 16:38:02 +00:00
Artem Pavlenko
6030efab50 + specialise svg parsers to expect const char* input 2010-06-14 13:18:17 +00:00
Artem Pavlenko
b309bba36e + pass scale_factor to feature_style_processor 2010-06-14 10:29:29 +00:00
Artem Pavlenko
03092107b6 + refactor path grammar to match svg spec close
+ ensure first 'moveto' command is always in
  absolute coordinates
  FIXME:probably better to modify path grammar
        to handle this.
+ vertex_stl_storage
2010-06-13 20:24:46 +00:00
Artem Pavlenko
68522e39fc + use agg implementation for circle,ellipse and rounded_rect 2010-06-13 13:45:59 +00:00
Artem Pavlenko
30b87400ca + put rasterizer def into sepatate header 2010-06-13 12:03:42 +00:00
Hermann Kraus
31a7aa2a3d Output a warning if a style is not found. 2010-06-13 00:19:56 +00:00
Artem Pavlenko
d272326d88 + skip <defs>...</defs> 2010-06-11 14:09:05 +00:00
Artem Pavlenko
b1b730d94c + add middle_point() method
+ fixed 'point' positioning
  in shield_symbolizer
2010-06-10 16:34:52 +00:00
Artem Pavlenko
11fad966cb + add experimental 'scale_factor'
TODO: discuss with Carlos and Dane if this is a better approach
  than having scale_factor in mapnik::Map object.
2010-06-10 14:12:20 +00:00
Artem Pavlenko
25dcebc18a + correct 'opacity' parameter logic
(SVG spec: 'The uniform opacity setting to be applied across an entire object.')
2010-06-10 14:12:12 +00:00
Artem Pavlenko
cc7e803b9d + preserve previously set alpha channel in
stroke/fill assignment so constructs like :
     style="fill-opacity:0.5;fill:blue"
  work with current svg attributes implementation
2010-06-10 14:12:03 +00:00
Artem Pavlenko
7e89bfa2db + don't use mapnik namespace inside mapnik namespace 2010-06-10 14:11:40 +00:00
Dane Springmeyer
f5ed4305f4 expose more coordinate transform methods, allowing projecting box2d<double> into screen coordinates at the same time as reprojecting geographical coordinates 2010-06-08 20:27:28 +00:00
Dane Springmeyer
13d192f255 add area method for polygon geometries, and avoid compiler warnings about intializations with -03 2010-06-08 20:01:40 +00:00
Artem Pavlenko
2b3858df07 + cache SVG marker bounding box 2010-06-08 10:16:31 +00:00
Artem Pavlenko
c500451cd8 + refactor SVG parsing/rendering code into separate logical units
to facilitate multi-threading:
    * SVG data (todo: enforce const)
    * SVG parsing/reading mutable
    * SVG rendering (read-only access to the data)
2010-06-08 10:16:22 +00:00
Artem Pavlenko
a47f6214a7 + add markers_symbolizer.cpp 2010-06-06 12:10:36 +00:00
Artem Pavlenko
bde8c1196f + add default ctor 2010-06-06 12:10:20 +00:00
Dane Springmeyer
9804e7e90d scons: make libjpeg dependency optional (still required by default) 2010-06-03 19:50:27 +00:00
Artem Pavlenko
7f36d5e2a1 + derive markers_symbilizer from symbolizer_with_image and inherit
filename expression and transformation matrix
2010-06-03 12:35:20 +00:00
Artem Pavlenko
f72fc9b397 + move transformation matrix to the parent class 2010-06-03 12:35:11 +00:00
Artem Pavlenko
b6414778d6 + add transformation matrix 2010-06-03 12:35:02 +00:00
Artem Pavlenko
246731874b + apply 'mapnik-format' to *.cpp *.hpp 2010-06-02 11:03:30 +00:00
Artem Pavlenko
484dce8943 + impl transform parameter (follow SVG spec) in point_symbolizer 2010-06-01 15:27:19 +00:00
Dane Springmeyer
a84b397f48 markers_converter.hpp was moved to markers_placement.hpp 2010-05-30 03:17:59 +00:00
Dane Springmeyer
89f6b32b76 apply patch from Herm from #553 adding support for markers_symbolizer to Cairo renderer, new placement finder, and fill/spacing/overlap options - works nicely with new svg support being tested against markers_symbolizer 2010-05-30 03:16:51 +00:00
Dane Springmeyer
74599581ec apply patch from Herm for fixing compilation on linux - closes #557 2010-05-30 02:16:49 +00:00
Artem Pavlenko
83c0f1ca59 + remove agg_svg_parser 2010-05-28 16:34:45 +00:00
Artem Pavlenko
a15e86e528 + add libxml2 based svg parser implementation 2010-05-28 16:34:34 +00:00
Artem Pavlenko
a0a21eaa59 + fixed transform mult order 2010-05-28 16:34:19 +00:00
Artem Pavlenko
6a5ea3f1a1 + SVG markers rendering 2010-05-27 14:21:31 +00:00
Artem Pavlenko
bb0ae08280 + marker_cache impl 2010-05-27 11:41:02 +00:00
Artem Pavlenko
823b7ba0fc + SVG markers initial import 2010-05-27 11:19:09 +00:00
Artem Pavlenko
e6e165f1e0 + use path-like geometries 2010-05-27 10:20:41 +00:00
Artem Pavlenko
b1195c79d7 + formatting 2010-05-27 10:20:25 +00:00
Artem Pavlenko
3ef0e2f789 + comment out exit() calls (todo: implement better
compile time tests)
2010-05-27 10:20:17 +00:00
Artem Pavlenko
c020acb3a7 + update attribute collector to handle 'orientation' 2010-05-27 10:19:55 +00:00
Artem Pavlenko
258a62616e + implement rotated text logic in placement finder 2010-05-27 10:19:47 +00:00
Artem Pavlenko
77c31e8643 + add orientation parameter
orientation="<expr>" e.g
  orientation="10+35" -> rotate by 45 degrees anti-clockwise
  (TODO: consider using standard SVG transform!)
2010-05-27 10:19:39 +00:00
Alberto Valverde
38e1570b8b added a max_value attribute to color_band to handle the case of the last band more gracefully 2010-05-06 07:21:11 +00:00
Dane Springmeyer
97eb553605 expose get/set for allow_overlap in MarkersSymbolizer 2010-04-15 21:47:44 +00:00
Artem Pavlenko
4b4967c351 + use doubles 2010-04-09 18:47:12 +00:00
Artem Pavlenko
5fcc311764 + add stroke-dashoffset property
+ replace <CssParameter name='xxx'>yyy</CssParameter>
   element with 'xxx'=yyy attribute
2010-04-09 18:46:25 +00:00
Artem Pavlenko
feb041f543 + apply formatting 2010-04-09 18:46:09 +00:00
Artem Pavlenko
61e423473e + no need for extra std::string alloc - we
+ can specialize css_parser to work with char*
+ (TODO: pass std::string const& as an input arg??)
2010-04-09 18:46:01 +00:00
Artem Pavlenko
f423a39bae + corrected name 2010-03-24 18:02:18 +00:00
Artem Pavlenko
1787c2b6ef + use <mapnik/filter_factory.hpp> 2010-03-24 18:02:02 +00:00
Artem Pavlenko
1a2b320252 + sanitize header inclusion a bit 2010-03-24 18:01:53 +00:00
Artem Pavlenko
666ff418dc + add specialization for bool in to_expression_string() 2010-03-24 18:01:45 +00:00
Marcin Rudowski
3426e7a0ac handle case of empty octrees. #540 2010-03-24 17:36:39 +00:00
Marcin Rudowski
8369278662 fixed color quantization in case of one color and transparency. #539 2010-03-24 17:19:33 +00:00
Alberto Valverde
c79865586b added an angle_mode attribute to GlyphSymbolizer to define the way the angle expression should be interpreted: as an azimuth or as a trigonometric angle 2010-03-22 11:21:17 +00:00
Alberto Valverde
a613dc6397 Created python binding to memory_datasource which can be added Features built programaticcaly. See tests for sample use until docs are done. #528 is almost closed. 2010-03-19 16:16:15 +00:00
Alberto Valverde
be9f874bbc added an attribute_collector visitor for glyph_symbolizer 2010-03-18 20:32:57 +00:00
Alberto Valverde
d098c98c5e pre-eliminary GlyphSymbolizer implementation. TODO: XML de/serializing. more tests. remove workaround mentioned in test 2010-03-18 20:05:08 +00:00
Alberto Valverde
31c3d20e43 modified the old arrow_symbolizer interface on glyph_symbolizer and documented it 2010-03-18 20:04:51 +00:00
Alberto Valverde
fc3a1beeef initial skeleton of glyph_symbolizer (coarsely ported from arrow_symbolizer). Mapnik compiles but symbolizer does nothing useful yet and is going to be heavily modified to make use of expressions to be general enough to be usable for purposes other than rendering arrows representing vector direction/intensity 2010-03-18 20:04:35 +00:00
Artem Pavlenko
d58b04a3f6 + use math stuff defined in <cmath> e.g std::pow std::log
+ fixed identation
+ use c++ style comments //
2010-03-17 21:39:36 +00:00
Artem Pavlenko
4aef1c46c1 + fix compiler warning 2010-03-17 21:39:28 +00:00
Artem Pavlenko
0fb695c133 + don't use C style casts 2010-03-17 21:39:20 +00:00
Artem Pavlenko
21dee82146 + remove mapnik:: classification from inside namespace mapnik {}
+ use c++ style casts!
2010-03-17 21:03:10 +00:00
Artem Pavlenko
83b20c3036 Revert "re factor expression grammar/parser stuff"
This reverts commit c58b8c4f71813a2490cf135573009c92be1a90c4.
2010-03-15 21:08:56 +00:00
Artem Pavlenko
0f8deb5e73 re factor expression grammar/parser stuff 2010-03-15 21:08:46 +00:00
Artem Pavlenko
1b860f8229 + merge ctors 2010-03-15 21:08:37 +00:00
Marcin Rudowski
583c9858f0 add missing file from r1691 2010-03-12 19:07:12 +00:00
Dane Springmeyer
d7256295ae port r1680/r1683/r1690 from 0.7.1-dev branch to trunk 2010-03-12 18:23:06 +00:00
Alberto Valverde
a7ea07ee0d modified raster_colorizer so the color of the last band is used if the value matches its value exactly. This is to make declaring legends for rasters with discrete values easier (ie: no need to define a dummy band for N+1) 2010-03-12 13:34:32 +00:00
Alberto Valverde
2f1d60b666 pre-eliminary raster coloring support 2010-03-12 13:34:13 +00:00
Dane Springmeyer
3a44dd3258 + use rint(v) instead of int(round(v)) + add rint implementation - msvc hasn't got one + minor cleanups 2010-03-11 23:19:12 +00:00
Artem Pavlenko
4066e76730 + removed unused #include
+ small cleanup
2010-03-08 11:55:08 +00:00
Artem Pavlenko
b6d0343e4c + tidy 2010-03-08 11:55:00 +00:00
Marcin Rudowski
e05fd8f5d8 png256 bugfix and improvements merged from r1663 2010-03-06 16:47:55 +00:00
Marcin Rudowski
34578099c1 merged r1661: fixed png256 for large images + improvements to palette generation: #522 2010-03-06 11:13:44 +00:00
Dane Springmeyer
b540dab73b apply slighly modified (env->box2d) mapnik-trunk.mr.raster-position2.diff from mar_rud to close #475 2010-03-03 03:23:53 +00:00
Artem Pavlenko
4f4c3782d3 + calculate resolution using map's current extent
(see ticket #502 for discussion, thanks springmeyer and
   mar_rud!)
2010-03-01 00:04:05 +00:00
Dane Springmeyer
c3ea59c3c8 don't pass expression_ptr as const 2010-02-03 18:36:01 +00:00
Artem Pavlenko
f4e7a7931f + implement x/y resolution 2010-02-03 16:56:42 +00:00
Artem Pavlenko
a98f3c19ff + minor formatting 2010-02-03 12:19:41 +00:00
Artem Pavlenko
f3eed56396 + remove unused code
+ add 'add_border' helper method for debugging
  raster alignment issues
2010-02-03 12:19:30 +00:00
Dane Springmeyer
c950e38a46 reenamble python access to TextSymbolizer 'name' expression 2010-01-30 03:08:03 +00:00
Dane Springmeyer
c6a29690ce fix formatting 2010-01-30 00:45:24 +00:00
Dane Springmeyer
6115a1590d add 'gamma' attribute to PolygonSymbolizer, along with tests against simplified world borders shapefile - setting gamma to .5-.7 can remove gaps in processed_p.shp depending on background color - closes #428 2010-01-13 00:31:45 +00:00
Dane Springmeyer
417468c125 revert r1348 rolling back to layer based bounds clipping - see #486 and #402 for more details 2010-01-11 19:00:56 +00:00
Dane Springmeyer
6c02f67a42 fix include guard 2010-01-11 18:57:45 +00:00
Dane Springmeyer
067fdb884d sync trunk with new cairo support added previously to 0.7 branch in r1531 2010-01-11 18:55:30 +00:00
Dane Springmeyer
f87790cd5b merge a few small 0.7 branch changes back into trunk 2010-01-11 00:36:51 +00:00
Artem Pavlenko
2840097822 + increment version (trunk) to 8.0.0 2010-01-07 11:09:00 +00:00