Commit graph

855 commits

Author SHA1 Message Date
Dane Springmeyer
45965381af throw if we encounter a font file which lacks any referencable names (freetype family_name and style_name) making it basically invalid 2011-06-24 00:51:21 +00:00
Dane Springmeyer
086138dedc switch back to using grid width/height to allow for variable size grid to be rendered (purely for testing) 2011-06-16 18:08:04 +00:00
Dane Springmeyer
5f53246337 fix bug in width/height of transform in grid_renderer 2011-06-16 16:48:30 +00:00
Dane Springmeyer
1829093fc9 copy string, don't get reference from boost::filesystem::path 2011-06-13 21:42:44 +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
Dane Springmeyer
104dd25a94 grid_renderer: only clamp markers size if initial grid resolution is reduced 2011-06-04 00:20:29 +00:00
Dane Springmeyer
7da40e3700 grid_renderer: rename step->resolution 2011-06-04 00:16:16 +00:00
Dane Springmeyer
840bb52de6 avoid compiler warning 2011-06-01 18:53:47 +00:00
Dane Springmeyer
c230ed6733 add alternative bbox forward/inverse functions 2011-05-31 22:38:15 +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
1d07c81316 add missed commits to complete the support for map 'base' 2011-05-25 23:51:40 +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
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
e119dc503c move to binary grid renderer for non-aa output rather than setting gamma on aa renderer 2011-05-17 06:24:49 +00:00
Dane Springmeyer
3469c20f1c adapt to new svg renderer template 2011-05-17 06:19:41 +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
9458e2d890 stroke-dash-offet -> stroke-dash-offset (spelling)- #762 2011-05-17 00:33:24 +00:00
Alberto Valverde
d5dafdc2be reverted patch which was committed by mistake 2011-05-12 18:11:16 +00:00
Alberto Valverde
0e0c4aa82c integrated test case from #759 2011-05-12 18:09:03 +00:00
Dane Springmeyer
aeb1b7f963 renable previous (non-agg) internal bilinear scaling method for testing #759a 2011-05-12 16:43:23 +00:00
Hermann Kraus
1cff36576c Remove empty files. 2011-05-11 12:04:18 +00:00
Hermann Kraus
f001d46efc Fix build errors introduced by r2889. 2011-05-11 00:49:52 +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
Artem Pavlenko
53c8225246 + Shield/text misalignment patch from Ldp
( http://trac.mapnik.org/ticket/739 )
2011-05-10 21:05:40 +00:00
Artem Pavlenko
3bef010056 + move feature_factory.hpp include to impl file 2011-05-09 13:52:06 +00:00
Artem Pavlenko
498809dde8 + don't scale shield (scale_factor is applied in agg_renderer<T>::render_marker) 2011-05-09 13:51:50 +00:00
Dane Springmeyer
1b1bd4b02e sync cairo with agg renderer after r2876 2011-05-06 00:36:09 +00:00
Dane Springmeyer
f925c395e5 apply patch from kevin for #756 2011-05-06 00:33:49 +00:00
Dane Springmeyer
1070b293ad tabs -> spaces 2011-05-04 15:53:36 +00:00
Dane Springmeyer
bae28f509e wrap raster_colorizer in mapnik ns and remove uneeded includes 2011-05-04 05:19:58 +00:00
Dane Springmeyer
37118c6d5f ensure valid attributes on the RasterSymbolizer and RasterColorizer, warning if not 2011-05-04 01:57:37 +00:00
Dane Springmeyer
0a278e7c49 slighly more restrictive default max_char_angle_delta 2011-05-04 01:53:20 +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
2c275729b1 initialize variables 2011-05-03 21:38:35 +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
c413d67b82 sync cairo's text rendering with agg 2011-04-30 00:07:03 +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
e9e88e0481 remove uneeded includes 2011-04-29 17:40:15 +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
Dane Springmeyer
31eea84d85 get iterator type right after r2843 2011-04-27 21:06:07 +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
7d394f3d09 load_map: report and check transform in all cases 2011-04-26 17:33:41 +00:00
Dane Springmeyer
5bbc89674e update comments 2011-04-19 00:20:04 +00:00
Dane Springmeyer
f8b3a4b946 add serialization of all markers_symbolizer attributes 2011-04-18 01:17:57 +00:00
Dane Springmeyer
7d08f76e50 add missing 'base' parameter to parse_shield_symbolizer and correct spelling of 'filter-factor' for parse_raster_symbolizer - closes #752 2011-04-18 01:11:38 +00:00
Dane Springmeyer
e00702cd79 touchup error message if zoom_all() fails 2011-04-15 22:46:53 +00:00
Dane Springmeyer
e79e7a1413 box2d: when copying actually copy exactly rather than using init to enforce validity - closes #749 2011-04-14 19:26:49 +00:00
Dane Springmeyer
7570cb5d73 load and save the new map 'maximum-extent' attribute 2011-04-14 02:32:51 +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
ac3488efb6 fix return from proj_transform when coordinates cannot be reprojected 2011-04-13 21:03:15 +00:00
Dane Springmeyer
9b1080e72e don't warn if mmap's file is missing (shapefile does not have an index) 2011-04-13 20:09:52 +00:00
Dane Springmeyer
383d8a3f15 add proj_transform forward/backward box2d implementation 2011-04-13 19:40:44 +00:00
Dane Springmeyer
903d1b49ef add a clip method to mapnik::box2d 2011-04-13 19:19:23 +00:00
Artem Pavlenko
7191d56a16 + throw image_reader_exception if we can't read tiff file
+ catch image_reader_exceptions in raster.input
+ re-throw in bind()
2011-04-11 21:17:10 +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
2699ba42d0 avoid unused parameter compiler warnings 2011-04-04 04:35:28 +00:00
Dane Springmeyer
33f6cbf13d jpeg reader: make to sure call jpeg_finish_decompress if scanlines have been read 2011-04-04 04:03:03 +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
27cc2f0dc5 catch errors in build time pkg-config parsing - closes #738 2011-04-02 03:11:42 +00:00
Dane Springmeyer
8f4386b7b2 use dynamically allocated, scoped array instead of variable-size array, which ISO C++ forbids 2011-04-02 03:07:45 +00:00
Dane Springmeyer
470f48beab avoid compiler warning of 'cast between pointer-to-function and pointer-to-object is an extension' with clang/gcc 2011-04-02 00:43:20 +00:00
Dane Springmeyer
d0e98eb3f1 handle return of fread 2011-04-01 23:54:58 +00:00
Dane Springmeyer
c1a6a54060 remove tabs 2011-04-01 20:47:26 +00:00
Dane Springmeyer
b65c932ac0 avoid -pedantic warnings 2011-04-01 07:20:41 +00:00
Dane Springmeyer
84ea9e6101 avoid clang++ -pedantic compiler warnings 2011-04-01 06:24:57 +00:00
Dane Springmeyer
eafac7fc7b comment out currently unused agg renderer headers 2011-04-01 06:14:55 +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
Artem Pavlenko
ec4ef1bb34 + add missing files from 735_metawriter_inmem.patch 2011-03-16 16:50:02 +00:00
Artem Pavlenko
e580078d26 + apply MetaWriter patch from zerebubuth
( see #735 for details )
2011-03-16 13:32:04 +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
Robert Coup
8ace5b7e6b position shield symbolizer symbols centered (ie. with text), rather than top-left in cairo output. re #737 - thanks @jburgess for testing and @Ldp for the patch. 2011-03-15 22:25:37 +00:00
Dane Springmeyer
c93984f06f fix spelling 2011-03-15 20:50:30 +00:00
Hermann Kraus
f9040c6026 Show error message when invalid placement algorithm is selected. 2011-03-11 14:18:34 +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
714f918332 Fix indentation. 2011-02-28 13:29:39 +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
Dane Springmeyer
4206c46f58 revert unintended change 2011-02-25 21:02:33 +00:00
Dane Springmeyer
03ee4570be make sure to install svg and wkt include files - thanks kiorky for initial patch - closes #718 2011-02-25 21:00:05 +00:00
Dane Springmeyer
545960a340 fix point_placement enum checking 2011-02-24 18:05:07 +00:00
Artem Pavlenko
d5bcf8dccb + fix include paths
+ update src/SConscript
2011-02-24 15:54:59 +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
93514d57a2 + add missing geometry types
+ correct geometry types in wkb reader
2011-02-24 15:47:36 +00:00
Dane Springmeyer
9d351be091 update cairo renderer to include text-transform 'captitalize' support 2011-02-21 20:46:07 +00:00
Dane Springmeyer
a317c5d051 add 'capitalize' option to text-transform - closes #715 2011-02-21 20:43:26 +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
f348c489ad fix property names in load_map error response 2011-02-11 21:32:47 +00:00
Dane Springmeyer
a9cda83300 check XML attributes for markers_symbolizer 2011-02-09 07:51:52 +00:00
Dane Springmeyer
0d5d014474 *warning* breaking change: move to consisten use of dashes (see #644), and start validating property names by printing warning if they are not valid (closes #110) 2011-02-05 03:15:17 +00:00
Dane Springmeyer
154dc59c5a serialize all dashes, no underscores, as per #644 2011-02-05 03:11:09 +00:00
Dane Springmeyer
c5833a6db8 remove unmaintained autotools scripts 2011-02-04 22:22:16 +00:00
Artem Pavlenko
046d99f3be + remove debug printout 2011-02-02 15:09:54 +00:00
Dane Springmeyer
50532801f3 change min_distance and min_padding to minimum_distance and minimum_padding to match python and mimimum_version 2011-02-02 04:20:53 +00:00
Dane Springmeyer
c8b816e498 add missing serialization of marker width and height 2011-02-02 03:47:52 +00:00
Dane Springmeyer
3197bea9ee add missing serialization of max_char_angle_delta and label_position_tolerance 2011-02-02 03:42:15 +00:00
Dane Springmeyer
c52c91c98a serialize point_placement 2011-02-02 02:17:06 +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
Robert Coup
bea611a185 Fix positioning problem with scale() transforms for SVG symbols. Centering transform applied in the wrong order. Thanks to Toby Collett. 2011-01-31 09:56:31 +00:00
Dane Springmeyer
78ec8b1724 fix reading of height value for building_symbolizer - TODO: make expression (#704) 2011-01-28 20:46:49 +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
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
Dane Springmeyer
a79018d0a0 make sure to check relative paths behavior up front, and handle background-image properly - closes #702 2011-01-25 20:47:56 +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
Marcin Rudowski
5a55d99f9a making TextSymbolizer label placement consistant with agg renderer to give more similar output 2011-01-23 22:45:28 +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
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
d54a767dd4 make sure to put cairo/cairomm ldflags into the linkflags for the libmapnik environment 2011-01-13 20:32:19 +00:00
Dane Springmeyer
e0a765429f if a directory is not passed to register_fonts, then assume it is a font file and try registering it 2011-01-11 00:15:57 +00:00
Dane Springmeyer
2fa027855a don't return reference to temporary, and intialize metawriter values 2011-01-10 23:04:34 +00:00
Artem Pavlenko
be458e7ac0 + add support for boost::filesystem v3
(http://www.boost.org/doc/libs/1_45_0/libs/filesystem/v3/doc/deprecated.html)
2011-01-04 15:22:49 +00:00
Dane Springmeyer
47232c265a formatting 2010-12-15 00:42:37 +00:00
Dane Springmeyer
ed22d073c3 fix serialization of missing shield symbolizer properties 2010-12-11 02:07:47 +00:00
Dane Springmeyer
7fc193729c warn or throw if svg transform fails 2010-12-11 01:10:45 +00:00
Dane Springmeyer
7955178468 respect alpha of symbolizer for LINE placement as well as POINT and VERTEX placement 2010-12-10 22: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
Dane Springmeyer
0eb3718934 actually parse label_position_tolerance from xml 2010-12-01 17:40:33 +00:00
Dane Springmeyer
baaf8041bb scons: linking libmapnik to boost_system is required solaris in 64 bit 2010-12-01 02:49:06 +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
b71c75bdeb clang++ caught bug - we need to first call lt_dlinit. Also add better error output based on returns from dladvise functions and simplify compile flag 2010-11-19 23:02:58 +00:00
Lucio Asnaghi
ba034abb1f + support of WKB geometry collection 2010-11-18 21:52:20 +00:00
Lucio Asnaghi
23e1904dca + fixed bad errors when parsing wkb 2010-11-18 20:33:45 +00:00
Dane Springmeyer
0b1d68f1f6 if libtool >=2.x.x is available, utilize the ability to set dlopen flags, so that plugins can be registered on linux without direct linking or modifying dlopen flags at runtime (like we currently do in python bindings) 2010-11-17 19:45:51 +00:00
Lucio Asnaghi
86a248d443 - leverage building extent (box2d) from string: multiple usage in datasources 2010-11-14 14:38:43 +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
4f9dce9a0c only zoom to active layers 2010-11-08 18:57:30 +00:00
Dane Springmeyer
209b0697dc upgrade a hello world plugin and cairo renderer to fully use new geometry_type 2010-11-03 16:26:30 +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
0361061053 + fix text_minimum_padding.diff (#547) patch 2010-11-03 13:19:04 +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
Dane Springmeyer
9281e6dcd8 avoid compiler warnings 2010-10-24 06:44:48 +00:00
Robert Coup
1dce437120 #622 add optional late-binding of datasources 2010-10-24 06:34:18 +00:00
Dane Springmeyer
aef676c090 add changes missed in r2287 2010-10-15 02:16:37 +00:00
Dane Springmeyer
3011f53205 add support to PointSymbolizer for 'ignore_placement' - #564 2010-10-15 02:15:40 +00:00
Dane Springmeyer
5d13869da1 if only width or height are supplied for a marker, make a circle - ellipses can be drawn by different width/height values 2010-10-15 00:14:18 +00:00
Dane Springmeyer
c8d5280b00 only render stroke on markers if it actually has a width 2010-10-15 00:12:51 +00:00
Dane Springmeyer
ca5d44032e explicitly set the runpath to libmapnik for the python bindings - in combination with ability to set 'CUSTOM_LDFLAGS' this closes #354 2010-10-12 04:40:00 +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
2fc2b4c443 add 'font_directory' attribute to map to allow for regstration of fonts within - in combination with r2025 this closes #168 2010-10-07 01:49:07 +00:00
Dane Springmeyer
806971e56d formatting 2010-10-05 20:13:03 +00:00