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