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
Dane Springmeyer
5094080f77
fix class names botched in r1509 merge from 0.7 branch
2010-01-05 16:16:31 +00:00
Dane Springmeyer
b3711b07d1
apply fix from Marcin for semitransparency of png256 - closes #477 and resolves discussion at #202
2010-01-05 15:54:25 +00:00
Dane Springmeyer
6bbfc5a1f2
apply patch from marcin to fix problem with occaisionaly garbled/striped png256 output along shape edges - closes #416,#445,#447, improves upon #202
2009-12-31 15:45:58 +00:00
Artem Pavlenko
47dc1e197b
+ merge mapnik2 to trunk
2009-12-16 20:02:06 +00:00
Dane Springmeyer
0ccdac028e
merge r1492 from 0.7 branch into trunk
2009-12-15 22:16:39 +00:00
Dane Springmeyer
f60fa76242
merge 0.7. branch changes back into trunk
2009-12-15 19:25:35 +00:00
Dane Springmeyer
5e2e6a76ad
apply fixes from David Eastcott originally applied to 0.7 branch
2009-12-13 23:30:36 +00:00
Dane Springmeyer
1b91db1db3
pass the scale_denom in a mapnik::query - closes 465
2009-12-10 23:22:48 +00:00
Dane Springmeyer
bd0a1ee08f
cherry pick one more changeset from mapnik2 into trunk
2009-12-07 06:43:02 +00:00
Dane Springmeyer
c01d1d0c69
integrate a few changes from mapnik2 branch - making sure to pass strings by const ref + formatting
2009-12-07 04:15:17 +00:00
Dane Springmeyer
fe3ffe6c2d
rename map.save_map_string to map.save_map_to_string
2009-12-06 22:33:47 +00:00
Dane Springmeyer
d0b4db9ba3
add support for relative paths for entities when using libxml2 and loading xml from string - thanks dodobas for the initial patch
2009-12-06 22:18:45 +00:00
Lucio Asnaghi
0aeb286bfa
- make the library compile with more strict flags ( closes #407 )
2009-12-04 15:00:06 +00:00
Dane Springmeyer
b041bd7ba8
proper namespacing and remove tabs
2009-12-03 17:08:05 +00:00
Dane Springmeyer
33c702ffa3
remove duplicate include
2009-11-28 22:11:27 +00:00
Artem Pavlenko
6e48eb3504
Revert "+ add templated operator==" -- not
...
a good idea at all :). TODO!
This reverts commit da976bb51f8e47e93ab1c42e41501db30c149b8b.
2009-11-11 11:11:18 +00:00
Artem Pavlenko
71b28a0914
+ add templated operator==
2009-11-11 10:56:21 +00:00
Artem Pavlenko
9f51cfdede
+ apply mapnik formatting
...
+ change order of template specialization (tidy)
2009-11-08 10:35:29 +00:00
Dane Springmeyer
d1f1f6971b
avoid loss of true black on BIG_ENDIAN
2009-11-02 23:55:16 +00:00
Dane Springmeyer
c29c8b459e
add BIG_ENDIAN support to graphics rectangle methods
2009-11-02 22:48:39 +00:00
Dane Springmeyer
878143960e
support BIG_ENDIAN and jpeg output
2009-11-02 20:55:26 +00:00
Dane Springmeyer
f8248faf4d
support BIG_ENDIAN and png256
2009-11-02 20:54:35 +00:00
Dane Springmeyer
1b4443e800
add support for BIG_ENDIAN to 'blendPixel2', to support propertly colored text labels
2009-11-02 19:57:02 +00:00
Dane Springmeyer
8e5d4368bb
add missing header so that MAPNIK_BIG_ENDIAN is propertly defined
2009-11-02 19:18:52 +00:00
Dane Springmeyer
34f2214396
apply alternative method of comparing map and layer bounds to support PointDatasource (patch from phispi, test from JRohrer), closes #402
2009-10-21 21:24:44 +00:00
Artem Pavlenko
2dcf88b392
+ wall-clock timer from auf
...
(see #439 for more details)
2009-10-20 20:32:53 +00:00
Artem Pavlenko
a3a5859466
Patch from David Eastcott :
...
1. Modified Text Symbolizer
a) corrected line fragment centering (for 2nd and subsequent lines, when line breaks occur).
b) adjusted vertical alignment calculation so that:
i) middle -> has the center of the text line(s) at the point origin
ii) bottom -> has the text line(s) below the point origin
iii) top -> has the text line(s) above the point origin
c) added new text_symbolizer attribute: 'wrap_before', value range: true/false, default == false
allows line breaks at first wrap_char before wrap_width as an alternative to the original
which was to create the line break at the first wrap_char after wrap_width
d) added new text_symbolizer attribute: 'horizontal_alignment', value range: left/middle/right, default == middle
i) left -> has all text line(s) to left of the point origin
ii) middle -> has all text line(s) centered on the the point origin
iii) right -> has all text line(s) to the right of the point origin
NOTE: dx, dy position adjustments are applied after alignments and before Justify.
e) added new text_symbolizer attribute: 'justify_alignment', value range: left/middle/right, default == middle
i) left -> after alignments, has all text line(s) are left justified (left to right reading)
ii) middle -> after alignments, has all text line(s) center justified
iii) right -> after alignments, has all text line(s) right justified (right to left reading)
f) added new text_symbolizer attribute: 'opacity', value range: 0.0 thru 1.0; 1.0 == fully opaque
g) modified positioning to compensate for both line_spacing and character_spacing, to ensure proper
centering of the text envelope. Also ensure that centering occurs correctly even if no wrapping
occurs. Line spacing is uniform and consistent and compensates for errors between text_size and
the actual size (ci.height is inconsistent, depending on case and character); fixes issue with
multi-line text where some lines have a slight gap and others are compressed together.
2. Modified shield_symbolizer
a) added the attributes:
i) allow_overlap
ii) vertical_alignment
iii) horizontal_alignment
iv) justify_alignment
v) wrap_width
vi) wrap_character
vii) wrap_before
viii) text_convert
ix) line_spacing
x) character_spacing
xi) opacity
b) added new shield_symbolizer attribute: 'unlock_image', value range: true/false, default == false
i) false == image and text placement behaviour same as before
ii) true == image placement independant of text, image is always centered at geometry point, text placed per attributes,
dx/dy only affect text.
Allows user to create point markers with text, but both the text and image rendering collision detection are done
as a pair (they come and go together - solves problem if using point_symbolizer and text_symbolizers where one or the
other are omitted due to overlaps, but not both)
c) extended choices for the attribute 'placement' to include vertex; effect is limited to the shield_symbolizer
Allows an attempted placement at every vertex available, gives additional shield placement volume when using line geometry
d) ensured that the text placement was not updating the detector unless a shield image was actually placed.
e) added new shield_symbolizer attribute: 'no_text', value range: true/false, default = false
When set true, the text for the feature is ignored ('space' subsituted) so that pure graphic symbols can be used
and no text is rendered over top of them.
2009-10-19 13:52:53 +00:00
Dane Springmeyer
ba9376626a
add a filter parsing alias of '!=' for '<>' - closes #427
2009-09-29 23:40:40 +00:00
Dane Springmeyer
78fd5dc89a
avoid deprecation warnings with boost 1_40 related to location of property_map.hpp
2009-09-25 22:08:52 +00:00
Dane Springmeyer
d9d15bb081
avoid segfault when pickling a TextSymbolizer using wrap_character by removing const declaration
2009-09-25 20:29:03 +00:00
Dane Springmeyer
e897b832a4
+reflect new text symbolizer options added in r1254 - closes #391
2009-08-17 22:54:50 +00:00
Dane Springmeyer
65066f604f
formatting
2009-08-11 01:22:08 +00:00
Dane Springmeyer
e7dd9094a5
revert unintended file changes from r1275
2009-07-26 01:15:44 +00:00
Dane Springmeyer
45266074c8
scons: fix typo, and ensure all temp output is writeable
2009-07-26 01:08:51 +00:00
Dane Springmeyer
52eb500749
formatting
2009-07-24 07:26:14 +00:00
Dane Springmeyer
286ad12c47
add method to save a map to a string ( closes #396 )
2009-07-24 06:15:58 +00:00
Dane Springmeyer
e0c9e5c826
add missing serialization of building symbolizer height, be explicit of double in polygon_symbolizer
2009-07-24 06:10:42 +00:00
Artem Pavlenko
85ecc33d7f
+ applied patch from Jochen Topf :
...
* text_convert="none|toupper|tolower"
Convert all text to upper/lower case before rendering. "none" doesn't do
anything with the text and is the default. Works for labels along lines
or at points.
* line_spacing="<number>"
Add this many pixels space between two lines in text labels that have
been broken into several lines. Default is 0. Doesn't do anything for
labels along lines.
* character_spacing="<number>"
Add this many pixels space between two characters in a text. Default is 0.
Currently only works for text labels on point geometries. This should
also be implemented for labels along lines, but I'll leave that for
another day.
* wrap_character="<character>"
Instead of breaking text into lines on spaces, use this character. This
is useful, when you want to make sure that labels are broken at the right
spot. Note that you'll probably want to make wrap_width small so that
your lines are actually broken, otherwise you'll see the wrap_character
in the output. Default is ' ' (space). Doesn't do anything for labels
along lines.
2009-07-20 15:30:19 +00:00
Dane Springmeyer
d6cf82efb0
+support for BigInt(int8) datatype in postgres, closes #384
2009-07-17 04:30:11 +00:00
Artem Pavlenko
e81f6b23ef
+ increment version to 0.6.1
2009-07-09 14:41:14 +00:00
Artem Pavlenko
e5ac14a236
+ removed unused #include
2009-07-08 20:50:20 +00:00
Artem Pavlenko
155e490c33
+ store individial colour components internally
2009-07-08 11:52:13 +00:00
Dane Springmeyer
408e3fedcb
fix small typo in #define
2009-07-08 00:06:13 +00:00
Artem Pavlenko
ae96fffee0
+ use MAPNIK_BIG_ENDIAN
...
+ support for reading int16_t
+ allow compiling shape.input with or without memory mapped files support
( define SHAPE_MEMORY_MAPPED_FILE to enable)
2009-07-07 23:56:01 +00:00
Artem Pavlenko
535a8dc2a5
+ fully qualify stl strings
2009-07-07 23:54:02 +00:00
Artem Pavlenko
470c92adee
+ reverse order when reading NDR int/double
2009-07-07 19:44:40 +00:00
Artem Pavlenko
6ca258cc1e
+ fixed read_xxx_double methods
2009-07-07 16:05:24 +00:00
Artem Pavlenko
d20a2de459
+ move byte order depended I/O to global.hpp
...
this should fix shape.input PPC issues
2009-07-03 13:29:50 +00:00
Dane Springmeyer
14ef2b36f0
expose list of registered plugins as a 'plugin_names()' method of DatasourceCache similar to the FontEngine.face_names() - closes #246
2009-06-22 06:59:56 +00:00
Jon Burgess
8c60753db6
Fix reduce_4() to make it consistent with reduce_8(). This was breaking tiles which were compressing down to a 16 entry colormap. All the pixels were being set to the alpha index.
2009-06-13 18:27:44 +00:00
Dane Springmeyer
7eb01c0be4
+make cairo compilation conditional on CFLAG (as well as Scons) like bindings/python/python_cairo.cpp
2009-06-08 19:43:49 +00:00
Dane Springmeyer
06f740615d
apply patch from River Tarnell <river@loreley.flyingparchment.org.uk> for Sun CC (Solaris) compile support
2009-06-03 06:10:35 +00:00
Dane Springmeyer
e7aff375db
std namespacing
2009-06-03 05:26:46 +00:00
Dane Springmeyer
dadd64519b
+add pickle support for proj_transform and view/coord_transform - see #345
2009-05-24 06:31:32 +00:00
Dane Springmeyer
fd98a4a49a
shuffle guess_type to image_utils for logical re-use
2009-05-19 22:43:54 +00:00
Dane Springmeyer
88765bb582
add MAPNIK_DECL to symbolizer_with_image - closes #94
2009-05-15 23:56:06 +00:00
Dane Springmeyer
13fa57e61f
expose setting of symbolizer_with_image filename
2009-05-14 22:54:36 +00:00
Dane Springmeyer
b905e81fbe
formatting
2009-05-14 22:53:03 +00:00
Dane Springmeyer
196b01c16c
+ make interface to datasource attributes, featuresets, and features more pythonicby adding feature.envelope() method returning combined extent of geometries, ds.fields() method returning list of names, and featureset.features() which returns list of all features in featurset - now accessible via datasource.all_features()- closes #283 , #280 , #171
2009-05-01 01:21:29 +00:00
Dane Springmeyer
263674d3d9
fix compiler warnings after r1111 (adding png256 alpha support)
2009-04-30 17:38:32 +00:00
Lucio Asnaghi
eaa49ca028
+ applying patch proposed by dane that add explicit_defaults selection when saving maps ( closes #327 )
2009-04-28 21:44:34 +00:00
Lucio Asnaghi
158989fc56
+ fix text_symbolizer support for vertical_alignment in save_map() ( closes #328 )
2009-04-28 21:23:43 +00:00
Dane Springmeyer
201461e8c9
+png256 alpha support from Marcin - closes #202
2009-04-28 07:29:48 +00:00
Artem Pavlenko
8d963e4270
+ use separate x/y scales - important for raster
2009-04-10 12:00:51 +00:00
Artem Pavlenko
9cdc8951ca
+ pass parameter by const ref
2009-04-10 11:47:46 +00:00
Dane Springmeyer
4276ae24fe
allow customization of JPEG output image quality using syntax similar to png256, but using 0-100 as suffix, e.g. render_to_file(m,'image.jpeg','jpeg80') - closes #198 - patch from Dennis Luxen
2009-04-07 15:48:51 +00:00
Dane Springmeyer
1fd4ed0a55
fix missing const - thanks Denis - closes #273 and #287
2009-04-02 16:35:08 +00:00
Dane Springmeyer
08669a08fb
scons: add an option to turn on XML spirit debug output in addition to debug mode (note earlier commit added part of this patch http://trac.mapnik.org/changeset/1027/trunk/include/mapnik/filter_parser.hpp ) - closes #150
2009-04-01 03:31:24 +00:00
Artem Pavlenko
4a3a9128ec
+ move compositing modes implementation out of Image class
2009-03-31 10:08:33 +00:00
Artem Pavlenko
e4f305620f
+ use 'byte' (boost::uint8_t)
2009-03-31 09:42:20 +00:00
Artem Pavlenko
10f55a678b
+ add support for vertical_alignment (text_symbolizer)
...
valid values are : top, middle, bottom
default to middle which can now center multi-line text
2009-03-30 20:47:26 +00:00
Artem Pavlenko
2eec236fc2
+ applied "hill shading" patch from Marcin Rudowski
...
a) Raster opacity
b) Raster merging modes (TODO:add more modes, consider agg impl)
c) Raster scaling algos: fast,bilinear,bilinear8
(TODO: add alpha support in bilinear8)
d) improvements to png256
*Great work, thanks!*
2009-03-29 11:05:20 +00:00
Andreas Volz
cab469eefb
- added new et input plugin
...
- add missing files to plugins Makefile.am
- split debugging and tracing
- documentation
2009-03-22 22:26:42 +00:00
Artem Pavlenko
570fe611f4
+ qualify 'value' to avoid names clashing
...
+ use _enumeration helper wrapper
2009-03-21 12:39:06 +00:00
Artem Pavlenko
afaf2df3ec
+ update CHANGELOG
...
+ formatting
2009-03-21 11:25:07 +00:00
Andreas Volz
194093d719
doxygen docs for some functions and classes
2009-03-01 21:09:09 +00:00
Lucio Asnaghi
556095af04
- sqlite.input: added row_offset and row_limit to parameters
...
- sqlite.input: added wkb_format parameter for selecting WKB format (generic/spatialite)
- sqlite.input: commented check of the spatial index
- wkb.hpp: removed wkqSQLite in favour of wkbSpatiaLite
2009-02-23 15:00:25 +00:00
Andreas Volz
c64269e1e3
support for sqlite3 and ogr
2009-02-18 22:17:00 +00:00
Artem Pavlenko
f3a835d2f2
+ const correctness
2009-02-18 16:39:26 +00:00
Artem Pavlenko
97a40d7e7e
+ fix msvc-9.0 compiler warnings
2009-02-17 23:19:28 +00:00
Artem Pavlenko
5358417474
+ use class/struct keywords correctly
2009-02-17 22:06:30 +00:00
Artem Pavlenko
021c7c0044
+ ignore unused variable warning
2009-02-16 23:31:47 +00:00
Artem Pavlenko
da9f79c494
+ add specialisations for bool
...
+ small fix
2009-02-16 15:47:18 +00:00
Artem Pavlenko
98267e2959
+ MAPNIK_VERSION (defined in mapnik/version.hpp)
...
+ expose version in Python :
mapnik.mapnik_version()
mapnik.mapnik_version_string()
+ add SQLite plug-in in Python bindings
2009-02-12 16:44:04 +00:00
Artem Pavlenko
950cfb8473
+ add missing MAPNIK_DECL
2009-02-12 14:33:00 +00:00
Artem Pavlenko
8839d9fd3f
+ add <string>
2009-02-11 17:09:56 +00:00
Artem Pavlenko
698037e782
+ use 'byte' defined in global.hpp
2009-02-11 16:57:46 +00:00
Artem Pavlenko
f65f3782dc
+ use 'typedef byte' instead of uint_8t
2009-02-11 16:45:20 +00:00
Artem Pavlenko
c937fe280a
+ make compile cleanly with boost >= 1.38.0
...
(TODO : move to spirit2 in milestone 1.0.0)
2009-02-11 16:29:44 +00:00
Artem Pavlenko
160c227196
+ boost-qualify type
2009-02-11 15:58:22 +00:00
Artem Pavlenko
66120740cf
+ add missing header cstdint.hpp
2009-02-11 15:23:45 +00:00
Artem Pavlenko
87add8220f
+ fixed typo affecting win32 build
2009-02-11 15:12:06 +00:00
Lucio Asnaghi
2c81706eb5
Following #223 :
...
+ improvements to the wkb converter
+ improved sqlite index usage
+ added more parameters to sqlite datasource
2009-02-10 19:09:16 +00:00
Tom Hughes
abe24475d8
Add a modulus operator to the filter language.
2009-02-10 15:46:54 +00:00
Artem Pavlenko
7d2f492ef2
+ sqlite-input-plugin.patch (kunitoki)
...
+ wkb-sqlite.patch (kunitoki)
+ very preliminary spatial index support (idx_<tablename>_<geometry_field>)
2009-02-09 19:43:57 +00:00
Jon Burgess
5ac5522f4b
Improve numerical accuracy of calculations used for finding the polygon centroid. Otherwise the labels for small polygons might appear outside the boundary.
2009-02-07 23:46:26 +00:00
Tom Hughes
220bb3e99a
Revert the patch to add a show_page flag to the cairo renderer and
...
replace it with support for rendering to a cairo context rather than
a cairo surface.
When rendering to a surface a show_page is done, when rendering to a
context it is not so that multiple renders can be done, possibly with
modified scaling and/or translation.
2009-02-06 00:46:29 +00:00
Dane Springmeyer
51293f64ba
+ apply show_page.patch (thanks Berteun) ( closes #201 )
2009-02-05 18:09:14 +00:00
Artem Pavlenko
a45e93b79a
+ more property goodness on the TextSymbolizer from Python (springmeyer)
2009-02-05 11:54:07 +00:00
Dane Springmeyer
29cc79b9cf
Fix compiler warnings introduced in r855 by moving allow_overlap below has_dimensions
2009-02-03 03:10:18 +00:00
Artem Pavlenko
e27a71cc39
+ mapnik_text_overlap.patch (Marcin Rudowski)
2009-02-02 23:37:16 +00:00
Artem Pavlenko
760d82f511
+ mapnik_png256_reduce.patch (Marcin Rudowski)
2009-02-02 23:35:57 +00:00
Artem Pavlenko
10481f8403
+ use 'buffered' extent in bbox query
2009-02-02 23:08:28 +00:00
Artem Pavlenko
866f5f98eb
+ implement buffered_extent method on Map object
2009-02-02 23:07:18 +00:00
Artem Pavlenko
6a86e239b1
+ always clip bbox to layer extent
2009-02-01 23:25:05 +00:00
Artem Pavlenko
d61b3e4918
+ remove unused header
2009-02-01 23:23:37 +00:00
Jon Burgess
cc91460a01
Filter parsing: Allow numbers in the filter field name. This allows for shapefiles with columns like '1970'.
2009-02-01 23:07:37 +00:00
Dane Springmeyer
f5127d6ee4
Remove reference to CAIRO_HAS_IMAGE_SURFACE macro since this is not supported until cairo 1.8 release
2009-01-28 21:11:10 +00:00
Artem Pavlenko
98875e392b
+ fix compiler warning
2009-01-27 10:18:06 +00:00
Artem Pavlenko
eeb759d9e1
+ normalize rgb color ranges to 0-255,
...
+ clip alpha to 0.0 - 1.0 range
2009-01-26 15:59:10 +00:00
Artem Pavlenko
9b1c4b2413
+ cast to unsigned int to avoid compiler warnings
2009-01-26 14:25:05 +00:00
Artem Pavlenko
2c317f7706
+ mapnik-write-colors-using-rgba-not-hex.patch (jonb)
...
When you use save_xml() the colors are written out in #RGB format
which can not represent alpha information. The patch makes it save using
the rgb()/rgba() strings.
2009-01-21 15:43:49 +00:00
Artem Pavlenko
a0cbbaaec0
+ mapnik-roundup-alpha-conversion.patch (jonb)
...
Round up alpha values when converting float to int otherwise the value
to changes each time we read/write the color to XML.
2009-01-21 15:39:54 +00:00
Artem Pavlenko
8b298729bf
+ mapnik-centralise-image-tostring-functions.patch (jonb)
...
(moves Image.tostring() to core c++ code)
2009-01-19 22:51:55 +00:00
Artem Pavlenko
fbb8b5da3e
+ added specializations for mapnik::color to avoid to/from stream conversions
2009-01-17 23:45:19 +00:00
Artem Pavlenko
e6ab076a4c
+ init alpha to 255 in actions
2009-01-17 21:44:01 +00:00
Artem Pavlenko
387ff213ef
+ mapnik-serialize-fontset.patch from jonb
...
This adds the fontset support into save_xml
- Adds fontset_name into the text attributes
- Adds the fontset definitions
- glue to read fontsets from map
2009-01-17 20:18:41 +00:00
Artem Pavlenko
cad0a839b6
+ mapnik-load-map-from-string.patch (jonb)
2009-01-15 23:51:07 +00:00
Artem Pavlenko
c22295c766
+ use fully qualified name in global.hpp
2009-01-15 23:16:15 +00:00
Artem Pavlenko
32d21d7c80
+ use fully qualified names from stl
2009-01-15 23:12:56 +00:00
Artem Pavlenko
e3658a7a1a
+ applied mapnik-image32-from-cairo.patch (jonb)
2009-01-15 22:51:12 +00:00
Artem Pavlenko
7395363258
+ applied mapnik-image-data-setrow-size.patch (jonb)
2009-01-15 00:56:56 +00:00
Artem Pavlenko
fe20652629
+ removed unused parameter from has_point_placement
2009-01-14 12:34:56 +00:00
Artem Pavlenko
a07767ef3d
+ (c++) renamed mapnik::Color to mapnik::color
...
+ (c++) added mapnik::color ctor from named colours (TODO: consider not to export color_factory)
+ (Python) fixed pickling
+ (Python) added to_hex_string method
2009-01-14 12:10:24 +00:00
Dane Springmeyer
689b1eb018
Made Scale Denominator available as a property of the Map
2009-01-14 06:12:55 +00:00
Artem Pavlenko
9a75034a88
+ applied python_point_datasource.patch from lwu
2009-01-13 00:56:09 +00:00
Artem Pavlenko
a11cc119e4
+ applied intersection patch from randomjunk - #127
2009-01-13 00:35:45 +00:00
Artem Pavlenko
dd12ac8e36
+ fixed unused paramater warning
2009-01-10 11:42:17 +00:00
Artem Pavlenko
65ea5bca98
+ applied mapnik-skip-projection-if-equal.patch (jonb)
2008-12-07 16:23:57 +00:00
Artem Pavlenko
c95002a0e3
+ minor formatting
2008-11-21 13:12:27 +00:00
Artem Pavlenko
7cbb0ab35a
+ added support for 'min_distance' for 'POINT' label placement.
2008-11-21 12:48:19 +00:00
Artem Pavlenko
6062f42bbe
+ applied patch avoid_extent from rcoup
2008-11-19 21:50:12 +00:00
Artem Pavlenko
190f8e5cb9
+ return boost::optional in find_style (c++)
...
+ return feature_type_style by value, raise KeyError otherwise (Python)
2008-11-18 21:15:46 +00:00
Artem Pavlenko
7e6e00f06a
+ return UTF-8 in to_string
2008-11-16 21:40:10 +00:00
Artem Pavlenko
b423b45b22
+ to_utf8 function to convert from icu::UnicodeString to utf-8 std::string
2008-11-16 21:11:57 +00:00
Artem Pavlenko
2257d63a65
+ minor formatting
2008-11-16 21:11:07 +00:00
Artem Pavlenko
dce49f4a75
+ hebrew rtl patch from JonB
2008-10-09 07:23:36 +00:00
Artem Pavlenko
11100cf30e
+ apply has_dimensions for line_placement only
2008-09-21 10:42:51 +00:00
Artem Pavlenko
20f3a9460d
+ expose buffer_size parameter (default 0)
...
influences envelope used by placement detector
( i.e. 'avoid_edges' parameter)
2008-09-21 10:14:38 +00:00
Artem Pavlenko
565da55742
+ point symbolizer opacity patch from Brian (openstreetmap@brian.quinion.co.uk)
2008-09-19 08:27:32 +00:00
Artem Pavlenko
85e713f4c7
+ make 'update_detectot' public
2008-09-15 08:46:47 +00:00
Andreas Volz
bd2b9e2ea0
- add new files
...
- optional check for gdal
2008-08-02 20:39:26 +00:00
Tom Hughes
7d173be190
Add support for font sets on shield sumbolizers.
2008-07-29 23:21:39 +00:00
Tom Hughes
271540f710
Don't return a null point when no glyph can be found in any font.
...
Patch from Jon Burgess <jburgess777@googlemail.com>.
2008-07-29 07:51:45 +00:00
Tom Hughes
779a0e67b2
Make the cairo renderer build again, with font fallback support now.
2008-07-25 23:26:02 +00:00
Tom Hughes
026e4e71e7
Refactor some of the font set stuff so that the cairo renderer can be
...
made to work again.
2008-07-25 00:23:33 +00:00
Tom Hughes
b958b0d9bc
Add parentheses to avoid compiler warnings.
2008-07-25 00:04:07 +00:00
Artem Pavlenko
93ccef2564
added missing font_set.hpp
2008-07-07 16:00:25 +00:00
Artem Pavlenko
6046bf49f4
+fixed init order
2008-06-29 11:40:06 +00:00
Artem Pavlenko
376cdeb453
applied aspect ratio patch from Frederik Ramm
2008-06-29 10:59:28 +00:00
Artem Pavlenko
1b47afde07
applied font fallback patch from Beau Gunderson
2008-06-29 10:58:48 +00:00
Artem Pavlenko
3f9127b5d0
reverting back to 700
2008-06-29 10:58:29 +00:00
Artem Pavlenko
c7cbfa5c82
reverting back to 700
2008-06-29 10:56:29 +00:00
Artem Pavlenko
3275cf9ce6
applied font fallbacj patch from Beau Gunderson
2008-06-29 10:40:08 +00:00
Tom Hughes
bbbfd735c4
Include ltdl.h instead of trying to forward declare libtool
...
types in place. Closes #95 .
2008-05-22 07:08:14 +00:00
Tom Hughes
4483d59797
Revert previous fix for #89 and add a new improved fix that enhances the
...
value class to have a proper null type and do comparisions SQL style so
that null is neither equal nor not equal to other things.
2008-04-12 15:22:27 +00:00
Tom Hughes
a27bde741e
Don't try and render text if the attribute containing the text does
...
not exist for the feature. Closes #89 .
2008-04-11 23:11:35 +00:00
Andreas Volz
e29743d933
- updated autotools build files
...
- build now osm plugin automatic if libxml2 is used
- moved osm/Makefile to osm/Makefile.example because if name collision
-> better move the example to another directory later
- optional CAIRO support
- changed libxml2 switch comment
2008-04-06 18:13:13 +00:00
Artem Pavlenko
ab29b03833
reverting r681
2008-04-06 09:23:17 +00:00
Dominic Hargreaves
8d223c57e0
re-enable regex support
2008-03-29 00:58:09 +00:00
Artem Pavlenko
7bcba5f1be
applied http://snecker.fedorapeople.org/mapnik/devel/gcc43-warnings.patch from Christopher Brown
2008-03-26 09:56:17 +00:00
Dominic Hargreaves
c436461ee8
Fix build with GCC 4.3 ( fixes #76 )
2008-03-24 14:03:05 +00:00
Tom Hughes
37eeb870cc
Add support for boolean values in filters, and reading of boolean
...
values from PostGIS data sources.
2008-02-27 18:50:59 +00:00
Artem Pavlenko
e1ea0a72db
use range based 'parse' method
...
transcode strings in filter expressions (default to utf8 input)
-- we can use map definition *.xml to define encoding
-- and in case of Python from
# -*- coding: utf-8 -*-
utf8 encoded filters are working now.
2008-02-26 11:43:49 +00:00
Artem Pavlenko
cb905b533a
restored templated version
2008-02-26 08:48:47 +00:00
Tom Hughes
02962156c5
Add support for rendering to a cairo surface.
2008-02-23 00:17:53 +00:00
Artem Pavlenko
308e315432
added Unicode support based on ICU
2008-02-18 21:40:34 +00:00
Artem Pavlenko
1ea7bffd4c
pass parameter by reference
...
store reference to wstring in text_path
2008-02-12 20:05:04 +00:00
Andreas Volz
ba5c156c45
fixed autotools build
2008-02-08 19:41:57 +00:00
Artem Pavlenko
1b03c81e84
hide implementation details
2008-02-05 13:58:47 +00:00
Artem Pavlenko
658a2a4932
corrected init order
2008-02-05 13:57:40 +00:00
Artem Pavlenko
b44762e592
allow multi/single threaded variants
2008-02-04 16:12:13 +00:00
Artem Pavlenko
fa82f6fc50
corrected sorting criteria
2008-02-04 16:10:34 +00:00
Artem Pavlenko
f4949ffca5
patch from TomH adds a global mutex to protect all access to the
...
proj4 library and ensure that only one thread can be inside a call to
the library at a time.
2008-02-04 11:54:07 +00:00
Artem Pavlenko
cdfaf36ee9
call reduce on fully built tree
2008-01-30 11:11:20 +00:00
Artem Pavlenko
c63c2efe42
support for user defined 'extent' parameter (for example : -180,-90,180,90)
2008-01-29 16:59:51 +00:00
Artem Pavlenko
651cdbe968
added support for saving images into Python String object
...
(NOTE: some methods have different signitures now- API changed)
2008-01-25 14:40:48 +00:00
Dave
5bbe90b85f
Remove find_placements, build_path_follow, build_path_horizontal.
...
Add new find_point_placements to cover the gap left.
Change shield symbolizer to use find_point_placements.
Results are the same as before, but with much less duplicate code.
2008-01-24 01:16:14 +00:00
Dave
1d556b54fd
Make line placement retry if it places >= 50% of the characters upside down.
2008-01-23 21:38:48 +00:00
Artem Pavlenko
b04e6197aa
some cleanups and fixes
2008-01-23 15:24:59 +00:00
Artem Pavlenko
f802250e0f
refactored image i/o , see ticket #15 for more details.
2008-01-23 11:34:59 +00:00
Dave
918bd1ef6b
Improved character placement code.
...
Slightly changes the result of max_char_angle_delta as now character angles aren't strict against the line angles.
Example screenshots on mailing list! :)
2008-01-23 04:18:17 +00:00
Artem Pavlenko
2b60d6d425
applied patch to build on OSX Leopard and Sun's C++ compiler on Solaris from Justin Bronn
2008-01-21 20:15:07 +00:00
Artem Pavlenko
418e3fc43a
added missing extent() method
2008-01-21 20:07:32 +00:00
Artem Pavlenko
96daa6e996
applied patch from gravitystorm (see ticket:64)
2008-01-21 19:59:06 +00:00
Artem Pavlenko
a61553edb8
removed redundant bounding box from label_placement
2008-01-21 16:18:46 +00:00
Dave
d3ec70aff9
Return pre-r557 rendering of line aligned labels. (Not the code, the algorithm ideas)
...
Spacing and no spacing line rendering are done by the same function.
Code is cleaner, performance should be equal or improved.
Text displacement is "Different", better in some cases and worse in others, I can revert it if wanted.
Old non spacing code is not yet removed as it is used by ShieldSymbolizer which I haven't investigated yet.
Individual character placement still has issues, that is my next task to fix!
2008-01-21 03:08:18 +00:00
Dave
76e18f8a4a
Remove functions that don't exist from placement headers.
2008-01-16 21:42:08 +00:00
Dave
017a966ea1
Fix blending onto transparent background. Detailed on mailing list.
2008-01-14 20:43:55 +00:00
David
0dbaeafbe9
- found and fixed another wild pointer
2008-01-07 07:32:55 +00:00
David
bec8f8951f
fixed pointer to temporary bug
2008-01-03 15:48:10 +00:00
Artem Pavlenko
0390f129a1
refactored transcoder stuff
2008-01-03 11:41:00 +00:00
Artem Pavlenko
52bed0b89a
applied patch from Jochen (throw an exception if unknown type)
2007-12-19 16:34:36 +00:00
Artem Pavlenko
2058f966b2
applied patch from Jochen :
...
1. The README talks about "scons.py", but it is just called "scons".
2. In demo/c++ there is a Makefile, but the readme.txt gives a command
line to compile. Both don't work for me. One error can at least be
fixed by adding -I../../agg/include to the command line.
3. When compiling Mapnik an error is thrown because of a redefined type.
This was on an Intel 64Bit machine. Fixed by "typedef char byte" to
"typedef uint8_t byte" in include/mapnik/global.hpp. I am not sure
whether thats the right fix, though, I just guessed. :-)
4. include/mapnik/image_data.hpp needs
#include <mapnik/octree.hpp>
to compile
2007-12-16 12:33:28 +00:00
Artem Pavlenko
58f4431df1
support for palette based PNGs, user 'png256' as a format parameter (see updated rundemo.py)
2007-12-10 19:59:17 +00:00
Artem Pavlenko
4586586448
added convinence overloads for 'save_to_file' and 'render_to_file'
...
Example:
>>> from mapnik import *
>>> im = Image(200,200)
>> save_to_file('test.png',im) # Guess image type from file extension
>> save_to_file('test.png,'jpeg',im) # Explicitly save as JPEG
2007-12-06 12:14:29 +00:00
Artem Pavlenko
d515b51973
added ImageData<uint8_t> typedef
2007-12-06 10:58:15 +00:00
Artem Pavlenko
171675dfcf
1. added external "C" around <iconv.h>
...
2. direct conversion from client_encoding to UCS-4{LE,BE}
2007-11-16 13:19:09 +00:00
Artem Pavlenko
17e2b12390
1. things to keep win32 built happier
...
2. print color table in gdal.input if present (-DMAPNIK_DEBUG)
2007-11-08 21:15:45 +00:00
Artem Pavlenko
8d51cb421b
1. re-factored placement_finder to be more efficient. 'find_*' methods are templated on PathType.
...
2. PostGIS plug-in - optional 'multiple_geometries' parameter to control how Multi* geometries built.
3. MarkersSymbolizer (work in progress) to render vector shapes (markers) alonh a path with collision detection.
2007-11-02 12:50:15 +00:00
Artem Pavlenko
4018c728de
corrected int2net macro to use int16_t , thanks to John Leslie.
2007-10-21 09:49:45 +00:00
David
2cf8278f1d
Generic python binding for mapnik::enumeration
2007-10-19 22:17:16 +00:00
David
1c5bbea587
workaround for enumeration python binding issue::
...
allow implicit conversion from long
2007-10-14 13:39:11 +00:00
Artem Pavlenko
f736196cb4
1. image_data.hpp - fixed mismatched new/new[] in ctor in ImageData
...
2. image_data.hpp - initialize image data (ImageData)
3. unicode.hpp - added missing <iostream> when in debug -DMAPNIK_DEBUG
2007-10-11 21:18:04 +00:00
David
44a83c0eac
- use AGG row_ptr_cache the portable way
2007-10-08 20:07:53 +00:00
David
515ab55a53
- fixed agg-2.5 build
2007-10-08 19:37:05 +00:00
David
3c97052c5e
- more include order reversion
2007-10-08 18:10:31 +00:00
David
bc54b150ea
- reversed header include order
2007-10-08 17:42:41 +00:00
Artem Pavlenko
d1a345a3d2
1.don't share FT_Library object between threads (TODO : implement freetype_engine pool)
...
2. merged changes with latest load_map
2007-10-05 11:27:00 +00:00
Andreas Volz
9507f1bbf2
build libxml2 loader
2007-10-03 10:41:08 +00:00
Andreas Volz
f0cca52c3b
optional build with libxml2
2007-10-02 21:43:13 +00:00
David
bc11d0a5e5
- added some tests
...
- added missing disclaimers
2007-09-25 21:06:52 +00:00
David
b2df387a9d
- merged strict-xml-branch r530:532 to trunk:
...
- libxml2 support
- strict error handling while parsing XML map files
- implemented save_map()
- removed some duplicate defaults
- all symbolizers with icons share a common base class now
2007-09-25 18:47:12 +00:00
Artem Pavlenko
13d741f400
added size method : returns (unused,used) size pair
...
useful for debugging
2007-09-18 13:58:01 +00:00
Artem Pavlenko
8e071f84c7
1. Changed internal geometry representation (explicit support for multi geometries)
...
(FIXME : label_spacing is still, too slow!!)
2. Re-use some agg objects.
3. placement_finder cleanups!
4. Added support for 'building_symbolizer' - extruded polygons
2007-09-16 11:23:51 +00:00
Andreas Volz
d38dedad68
+ added GNU autotools build environment
...
+ raster and gdal input isn't tested. Not working currently...
+ *-input.so plugins created. Change loader in source or link plugin to correct place
+ use pkg-config uninstalled feature
-> define project root to PKG_CONFIG_PATH to use mapnik without installation
+ added various library checks
+ don't install fonts
+ don't use included AGG
-> check for a installed libagg
+ Added Makefile for c++ demo
+ don't build any python wrapper stuff
-> this follows if all other building works
+ added Anjuta file
-> not needed to build anything, but helps much if you use Anjuta
2007-09-14 23:07:16 +00:00
Artem Pavlenko
b835bac9ba
user for loops instead of while, some cleanups
2007-09-11 11:26:10 +00:00
Artem Pavlenko
9b2b2a5691
clip query bbox to layer's extent
2007-09-11 11:06:20 +00:00
svn
63ca9a0b41
use non const char* on Linux
2007-09-01 09:48:01 +00:00
Artem Pavlenko
edb4150b33
restored iconv support
2007-08-29 15:21:32 +00:00
Artem Pavlenko
388eb1761f
we don't need those
2007-08-29 15:19:33 +00:00
Artem Pavlenko
4e427f978c
fixed bug introduced in r495
2007-08-29 14:06:35 +00:00
Andreas Volz
8b3f5ef483
only minor docs
2007-08-15 20:46:12 +00:00
Artem Pavlenko
0f07bbd945
corrected docs
2007-08-13 09:59:52 +00:00
Artem Pavlenko
e05f730122
applied changes overwritten betweed r504-505
2007-08-13 09:15:41 +00:00
Andreas Volz
59977745a0
- doxygen documentation files
...
- added first docs to map.hpp
2007-08-12 21:05:45 +00:00
Artem Pavlenko
b47bfa185a
couple optimizations
2007-08-09 14:13:41 +00:00
Artem Pavlenko
19daab2461
provide both const/non-const iterators
2007-08-09 08:06:47 +00:00
Artem Pavlenko
80566ea1ba
added accesor to styles
2007-08-07 12:02:24 +00:00
Artem Pavlenko
d959701d5a
1. added boost::optional<T> to/form Python converter
...
2. make background color optional (Map object)
3. exposed 'blend' method for Image object
2007-08-01 09:59:23 +00:00
vspader
9fe4a94c98
Added minimum_distance property to text symbolizers. This prevents the same label from appearing within N pixels (across features).
...
Shield symbolizer is now a subclass of text symbolizer.
Some small improvements to text rendering.
Fixed up placement finder for horizontal placement.
Cleaned up placement finder.
2007-07-02 13:39:08 +00:00
Artem Pavlenko
f3ae318ca3
1. added 'allow_overlap' in load_map from xml
...
2. added overlap_ field to TextSymbolizer (ignored by renderer at the moment)
2007-06-20 21:08:23 +00:00
Artem Pavlenko
ab149257ad
added save_to_file method that works with Image object.
2007-06-12 19:30:58 +00:00
Artem Pavlenko
8010d5433f
1. Removed srid from geometry class
...
2. Pass resolution to bbox query
3. Use variant<int,double,string> as parameter value e.g in Python:
ds = Raster(file="/path/to/file",lox = 12312.4,.....)
Added extractor facility to work with mapnik::parameter (C++):
mapnik::parameters params;
params["parameter0"] = 123.456;
params["parameter1"] = "123.456"; // initialize with string extract double later
boost::optional<double> val0 = params.get<double>("parameter0");
if (val0)
{
std::cout << *val0;
}
// with default value. NOTE: there is no 'parameter2' in params
boost::optional<double> val2 = params.get<double>("parameter2",654.321);
std::cout << * val2;
//
4. Added Gdal factory method in __init__.py
ds = Gdal(file="/tmp/file.tiff")
2007-06-12 08:59:54 +00:00
Artem Pavlenko
15e73b98f4
small formatting
2007-06-05 09:10:40 +00:00
Artem Pavlenko
ef42640476
applied patch from jonb to use calloc instead of malloc (allocating fribidi buffer)
2007-05-15 22:20:18 +00:00
Artem Pavlenko
235244a1c0
added max_depth_ parameter (default to 8) to handle empty envelopes.
2007-05-12 12:01:43 +00:00
Artem Pavlenko
d3d40234c9
share collision detector between labels and text.
2007-05-12 11:34:55 +00:00
Artem Pavlenko
a6a31f42f6
implelmented optional 'clear' text labels cache at the layer level
2007-05-01 07:53:20 +00:00
Artem Pavlenko
28ee22ac95
fixed mistype
2007-04-25 08:21:54 +00:00
Artem Pavlenko
5daa49ff41
forward declare ltdl stuff
2007-03-22 10:55:43 +00:00
Artem Pavlenko
d163c8d59f
explicit cast to FT_Pos added
2007-03-16 12:08:50 +00:00
Artem Pavlenko
e0d243dcec
1.Added support for building on Darwin (Xcode 2.4.1, gcc4.0.1).
...
Mainly taming gcc4.0.1 (anonymous enum bug)
2.Input plug-ins now have .input extension on all platforms
2007-03-16 10:11:37 +00:00
Artem Pavlenko
7a7e2101f9
rewind path in envelope() method
2007-03-08 10:38:09 +00:00
Artem Pavlenko
13dd535d6c
check strings size before applying bidi.
2007-02-26 12:42:10 +00:00
Artem Pavlenko
215ceccb73
added specialization for double values in to_unicode()
2007-02-25 12:59:23 +00:00
Artem Pavlenko
eda5386b3f
added missing mapnik::value to std::wstring conversions
2007-02-14 20:25:24 +00:00
Artem Pavlenko
2d256166b4
Store text attributes as USC-2 encoded std::wstring
2007-02-14 19:54:39 +00:00
Artem Pavlenko
d024c86b1b
Restored support for the text displacement (point placement only at moment)
2007-02-09 16:32:44 +00:00
Artem Pavlenko
32ad956e2e
Disabled timer print-outs by default. Use -DMAPNIK_DEBUG to enable.
2007-02-06 15:53:32 +00:00
Artem Pavlenko
e016bd61f8
Added transcoder based on iconv. Internally we use UCS-2 at the moment.
...
* Postgis plug-in determines encoding by querying 'client_encoding' parameter (libpq).
* Shapfiles (dbf!) don't store character encoding information. Users can apply 'encoding' parameter at datasource creation stage (defaults to Latin1 (ISO-8859-1))
* Raster plug-in utf-8
2007-02-06 14:27:21 +00:00
Artem Pavlenko
1e710ceab3
to_string() : added specialization for double values with increased precision.
2007-01-26 15:50:39 +00:00
Artem Pavlenko
097397f422
vc-8_0 needs template functions instantiated/defined?? in header file for proper export. gcc on the other hand , chokes with error : can not instantiate undefined function. Added #ifdef/#endif _MSC_VER.
2007-01-17 20:04:21 +00:00
Artem Pavlenko
ed5bbe25fe
improved win32 support from Valery Moiseev.
2007-01-17 11:43:11 +00:00
Artem Pavlenko
199f3f6c12
include Layer instead of forward declaration
2007-01-11 17:19:51 +00:00
Artem Pavlenko
85f4bfc697
added queryable property and visible method to Layer (Python)
2007-01-09 11:23:19 +00:00
Artem Pavlenko
995980433e
reflect feature's properties in Python
...
(see wiki for more info and usage)
2006-12-31 11:44:34 +00:00
Artem Pavlenko
b5cf9da686
1.added more accessors
...
2.in tiff_reader check for valid file prior opening.
2006-12-20 00:22:45 +00:00
Artem Pavlenko
14f98509b9
added 'transparent' named colour = Color(0,0,0,0) (from Luiz Vital)
...
TODO: support transparency for any background colour.
2006-12-17 12:10:28 +00:00
Artem Pavlenko
dee8851b26
added support for right to left languages by using
...
the fribidi library (patch from Ehud Shabtai, thanks!)
2006-12-17 11:56:57 +00:00
Artem Pavlenko
05424a5f12
added query_point method that accepts lat,lon coordinates :
...
>>> for f in m.query_point([ layer.name for layer in m.layers ].index('world'),51,0):
... print f
...
feature (
f_code:FA001
fac_id:193
id:3147
na2:UK
na3:E
nam:ENGLAND
tile_id:10
)
>>>
2006-12-06 21:21:17 +00:00
Artem Pavlenko
af44541598
implemented query_map_point method on map object:
...
fs = m.query_map_point(x,y) # Map (screen) coordinates
for feature in fs:
print feature
TODO: provide interface to feature in Python, at the moment only __str__ implemented which dumps attributes
2006-12-06 20:26:59 +00:00
Artem Pavlenko
4d4e9f5d91
Tiling patch from Toby allows for a selected pixel region within an extent
...
to be rendered. This allows for a large extent (larger than can be
rendered into a single image in memory) to be rendered out as tiles.
Since the full extent is used for the placement calculations text
crossing tile boundaries will be consistent.
This method is a little inefficient when a large number of labels need
placed, an improved method would be to cache these placements between
tiles, but the attached is a start.
c++ users should simple call the render method with a start X and Y
coordinate specified,
for (int TileX = 0;TileX < 5;++TileX)
{
for(int TileY = 0;TileY < 5; ++TileY)
{
int TileSize=250;
int StartX = TileX*TileSize;
int StartY = TileY*TileSize;
Image32 buf(TileSize,TileSize);
agg_renderer<Image32> ren(m,buf,StartX,StartY);
ren.apply();
char name[324];
sprintf(name,"tile_%d_%d.png",TileX,TileY);
ImageUtils::save_to_file(name,"png",buf);
}
}
python users should call render_tile_to_file
for y in range(tile_count_y):
for x in range(tile_count_x):
if not os.path.exists("tiles/%d/%d/" % (map_scale, y)):
os.makedirs("tiles/%d/%d/" % (map_scale, y))
render_tile_to_file(m, x*tile_size, y*tile_size, tile_size, tile_size,
'tiles/%d/%d/%d.png' % (map_scale,y,x), 'png')
2006-12-01 09:37:37 +00:00
Artem Pavlenko
a8a26d2a75
make params_ accessible from derived classes
2006-11-29 12:28:17 +00:00
Artem Pavlenko
8c374a22a6
Label position tolerance and text spacing patch from David Leaver. Thanks!
2006-11-29 10:44:42 +00:00
Artem Pavlenko
7a7fe3d569
opps, fixed license note
2006-11-29 00:14:25 +00:00
Artem Pavlenko
bc5f860437
don't keep bad connections around
2006-11-28 00:16:53 +00:00
Artem Pavlenko
f4502df850
1. register singleton destruction with std::atexit
...
2. allow connection pool to grow (up to max)
2006-11-27 21:13:15 +00:00
Artem Pavlenko
f1393cc019
1. hit_test implementation for geometry objects:
...
bool hit_test(double x, double y, double tol);
2. added image_view(unsigned x, unsigned y, unsigned width, unsigned height)
allowing to select region from image data e.g (in Python):
im = Image(2048,2048)
view = im.view(0,0,256,256)
save_to_file(filename,type, view)
3. changed envelope method to return vy value in datasource classes
4. features_at_point impl for shape and postgis plug-ins
2006-11-25 11:02:59 +00:00
Artem Pavlenko
1c5eeb19af
added basic support for unicode string
2006-11-22 22:01:37 +00:00
Artem Pavlenko
ebdd0f6030
disable clog printing in release mode. Pass -DMAPNIK_DEBUG to enable.
2006-11-19 17:13:33 +00:00
vspader
d7b94f5d8c
Added avoid_edges property to shield and text symbolizers.
...
If this is enabled, no shield/text symbolizers will be cut off
at the edges of the image.
2006-11-17 14:07:41 +00:00
Artem Pavlenko
6469c19ba7
fixed scale_denominator
2006-11-17 02:02:29 +00:00
Artem Pavlenko
81fbe706a6
fixed scale_denomitator
2006-11-17 02:01:21 +00:00
Artem Pavlenko
7b0f3d3fb9
export symbols for win32 dlls
2006-11-13 10:13:14 +00:00
Artem Pavlenko
889ac41694
Patch from Toby: adds a maximum angle delta for text placement (if the
...
angle changes too much between characters it finds an alternate
placement), this is specified in the max_char_angle_delta property in
radians (feel free to change it to degrees).
It also improves the text placement around corners trying to minimise
the distance between the center of the character and the line on each
side. This is the major portion of the patch.
2006-11-04 10:38:24 +00:00
Artem Pavlenko
e924b597f4
1. patch from Toby that allows repeated labels to be placed on a line
...
geometry (such as roads)
2. restored text labels for point geometry.
3. process 'spacing' attribute in load_map.cpp
2006-11-01 23:17:05 +00:00
Artem Pavlenko
d7fcefc848
1. applied text-wrap patch from Robert Coup. Thanks!
...
2. by default use tinyxml as a property_tree parser
3. modified load_map.cpp to allow to test new features
2006-10-27 17:29:39 +00:00
Artem Pavlenko
90a293e952
removed extra qualifier (GCC >= 4.1 reports as an error).
2006-10-21 12:17:41 +00:00
vspader
118e8f0d52
Added face_name parameter to text and shield symbolizers,
...
which specifies the font face to be used for rendering.
New constructor is: text_symbolizer(name, face_name, size, ...)
2006-10-19 17:11:45 +00:00
Artem Pavlenko
ac155e89ba
call FT_Done_Glyph(image) in character_dimensions
2006-10-19 08:46:17 +00:00
Artem Pavlenko
ff52bdc244
ellipsoid
2006-10-18 23:02:57 +00:00
Artem Pavlenko
69bde0b206
added scale_denominator calc + great-circle distance
...
(needs checking with different projections)
2006-10-18 22:44:37 +00:00
Artem Pavlenko
1c8d7586b5
changed boost::progress_timer to output to std::clog (which defaults to std::cerr)
2006-10-18 11:42:56 +00:00
Artem Pavlenko
110016fe78
1. refactored proj stuff into separate files
...
2. added is_geographic property
3. added basic support for text_symbolizer in load_map
2006-10-17 17:26:35 +00:00
vspader
f76079f15b
1) Added line following labels. Use set_label_placement(POINT_PLACEMENT) or set_label_placement(LINE_PLACEMENT) on a text symbolizer.
...
2) Added placement_finder class so labels try to avoid each other.
3) Added Shield Symbolizer which is essentially a combined image/text symbolizer.
2006-10-17 14:12:53 +00:00
Artem Pavlenko
2e73fe0841
1.added features_at_point to datasource interface
2006-10-16 21:29:54 +00:00
Artem Pavlenko
2392565a4d
removed commented out code
2006-10-16 16:04:57 +00:00
Artem Pavlenko
bb235fa316
1.added projection transformation support based on proj4 (new dependency!!!)
...
Map and Layer objects both have a new parameter 'srs', initialized to "+proj=latlong +datum=WGS84" by default.
Basic usage (Python):
p = Projection("+proj=merc +datum=WGS84")
point = p.forward(Coord(-2,51))
...
2.reflected arithmetic operators for Envelope/Coord into Python
3.altered return policies for python objects
4.modified build system to require proj4 lib and headers
2006-10-16 13:44:52 +00:00
Artem Pavlenko
52033ad4e8
added operators +,-,*,/
2006-10-16 13:32:45 +00:00
Artem Pavlenko
1988181bd7
added operators +,-,*,/
2006-10-16 13:31:52 +00:00
Artem Pavlenko
d349c5f0c9
just help compiler a little bit
2006-10-09 20:48:42 +00:00
Artem Pavlenko
514f500bfb
use boost::shared_ptr<datasource>
2006-10-09 10:28:48 +00:00
Artem Pavlenko
e2d645ad80
simplified coord transformation interface.
2006-10-09 09:52:15 +00:00
Artem Pavlenko
10cffb9174
added remove_all
2006-10-09 09:43:43 +00:00
Artem Pavlenko
992af4747d
1. move include to mapnik/include
...
2. update demos,bibdibgs etc.
2006-10-04 11:22:18 +00:00
Artem Pavlenko
8328424af5
1. datasource is now a property of Layer object.
...
2. modified python/c++ demos to reflect the above.
3. removed large 'blobby' mapnik.hpp (compilation times!!!)
2006-10-03 08:44:04 +00:00
Artem Pavlenko
88892c196b
added save/load functionality based on boost::property_tree (aka ElementTree in c++)
2006-10-03 08:39:43 +00:00
Artem Pavlenko
c0fa1a6004
* create_filter moved to core lib
...
* modified demo/c++/rundemo.cpp to reflect the above
2006-09-17 19:45:01 +00:00
Artem Pavlenko
8a72060fad
added alpha to to_string method.
...
rgb ( R, B, G, A)
TODO: modify CSS color parser to accept alpha channel e.g
rgb (R,G,B,A)
#RRGGBBAA
#RGBA
2006-09-15 08:19:03 +00:00
Artem Pavlenko
2d04ce0360
This patch:
...
* Adds set_alpha()
* Reorders the get/set color functions to be red() green() blue() alpha() (code tidyness)
* Changes the internal color variable to be named abgr_ instead of rgba_ since that is the order the colors are stored in it.
Thanks to Dave Leaver.
2006-09-15 07:56:35 +00:00
Artem Pavlenko
2f360a6549
1.removed map width/height from query interface
...
2.small cleanups
2006-09-12 14:29:22 +00:00
Artem Pavlenko
93740b5dec
refactored #includes to reduce compilation times
...
added mapnik_query skeleton
2006-09-11 09:48:27 +00:00
Artem Pavlenko
26a406706e
wrap C headers with :
...
extern "C"
{
//
}
2006-08-31 21:32:07 +00:00
Artem Pavlenko
00ef5d1c96
addded missing <string>
2006-08-21 21:25:25 +00:00
Artem Pavlenko
9ee055718c
removed unused headers
2006-08-21 15:00:59 +00:00
Artem Pavlenko
72fae1daa1
1. removed dependency on boost_serialization ( we don't really need it) at this time.
...
2. coord and envelope operator<< to use 16 digit precision.
3. added 'inside polygon' method impl.
2006-08-20 18:49:22 +00:00
Artem Pavlenko
0bb121a747
formatting mostly
2006-07-24 20:08:32 +00:00
Artem Pavlenko
024f501903
1. exposed fill_opacity property in PolygonSymbolizer
...
2. added default ctors to {Point,Line,Polygon}Symbolizers
2006-05-31 21:25:21 +00:00
Artem Pavlenko
50416422e0
replaced tabs with spaces
2006-05-30 13:41:15 +00:00
Artem Pavlenko
ffe47e4816
1. return shared_ptr from point_symbolizer
...
2. small cleanup
2006-05-26 13:11:31 +00:00
Artem Pavlenko
53193826a8
added MAPNIK_DECL
2006-05-26 13:08:48 +00:00
Artem Pavlenko
aec33499b2
export symbols from wkb
2006-05-25 14:19:21 +00:00
Artem Pavlenko
ec92236c1f
small cleanup
2006-05-24 15:17:16 +00:00
Artem Pavlenko
ba2514398a
implemented to_hex_color() method that returns
...
#RRGGBB color representation.
2006-05-24 15:13:51 +00:00
Artem Pavlenko
b73ca350fb
added const Style iterators to Map
2006-05-23 17:23:20 +00:00
Artem Pavlenko
d99f6b4455
replace tabs with spaces
2006-05-23 16:53:38 +00:00
Artem Pavlenko
d0ddc88253
1. move parameters to datasource
...
2. general cleanup
2006-05-23 16:52:10 +00:00
Jean-Francois Doyon
799d5d9691
- Fix a bug with missing version.
...
- Add support for layer title and asbtract to c++ and python
- Make WMS server use above changes, edit docs
2006-05-22 17:00:35 +00:00
Artem Pavlenko
ef5931d915
added default point_symbolizer 4x4px black square
2006-05-22 10:30:55 +00:00
Artem Pavlenko
0c745b9d3a
corrected ctor
2006-05-21 19:17:15 +00:00
Artem Pavlenko
453b714580
1.added default ctor in polygon_symbolizer (grey fill - RGB (128,128,128)
...
2.replaced tabs
2006-05-19 16:11:59 +00:00
Artem Pavlenko
ed4195ad5a
explicit black colour in default ctor
2006-05-19 16:08:42 +00:00
Artem Pavlenko
bf218a46b9
oops! added missing bits
2006-05-19 12:50:40 +00:00
Artem Pavlenko
1daa91e07f
added set_name method
2006-05-19 08:59:50 +00:00
Artem Pavlenko
6c9fd45234
replaced tabs with spaces
2006-05-17 16:41:28 +00:00
Artem Pavlenko
2db18565b2
reorder #include
2006-05-05 14:29:01 +00:00
Artem Pavlenko
62019e0849
small cleanup
2006-04-22 19:37:59 +00:00
Artem Pavlenko
cdc48edfd6
1. validate image reader
...
2. open files in binary mode (win32)
2006-04-05 08:27:45 +00:00
Artem Pavlenko
61fd258fd1
changing licence from GPL to LGPL
2006-03-31 10:32:02 +00:00
Artem Pavlenko
bb606d04f5
added non-const getLayer
2006-03-28 15:39:38 +00:00
Artem Pavlenko
8986108775
added set_datasource method (TODO!!!)
...
fixed pointz in shapeindex
2006-03-28 08:29:36 +00:00
Artem Pavlenko
d35e9f047e
small cleanup
2006-03-23 21:45:32 +00:00
Artem Pavlenko
fce4076ad5
refactored font engine to export symbols correctly on win32
2006-03-23 11:54:50 +00:00
Artem Pavlenko
98763057e6
added pragma to disable 4996 warning
2006-03-23 11:54:03 +00:00
Artem Pavlenko
6f1ed0029c
code cleanup
2006-03-22 20:31:02 +00:00
Artem Pavlenko
9480cbade6
re-implemented value class to compile on win32
2006-03-22 19:57:48 +00:00
Artem Pavlenko
56a8187bcb
added new line at the end of file
2006-03-22 15:59:15 +00:00
Artem Pavlenko
883e21fe0c
added __declspec(dllexport)
2006-03-22 15:52:29 +00:00
Artem Pavlenko
33ec516bd4
added platform specific configuration file
2006-03-22 15:51:06 +00:00
Artem Pavlenko
f2ac0a97f6
removed unused files
2006-03-22 15:50:05 +00:00
Artem Pavlenko
3848515e6e
removed unused files
2006-03-22 15:48:54 +00:00
Artem Pavlenko
e85db9ac69
removed unused files
2006-03-22 15:46:58 +00:00
Artem Pavlenko
2fa9d1967e
added __decl(dllexport) to exported symbols\n removed unused files
2006-03-22 15:45:52 +00:00
Artem Pavlenko
e21c3b36f6
removed save and load to text archive functionality to keep x86_64 build happy
2006-03-19 21:59:16 +00:00
Artem Pavlenko
673bd4bc19
replaced cout and cerr with clog (by default redirected to cerr)
2006-03-19 21:53:47 +00:00
Artem Pavlenko
e8d68b615e
removed unused text.{hpp,cpp}
2006-03-19 21:51:40 +00:00
Artem Pavlenko
89cad86d8e
added anchor and displacement to text_symbolizer
2006-03-10 12:08:55 +00:00
Artem Pavlenko
ce93c69fa3
minor syntax corrections to comply with ansi c++
2006-03-08 23:02:28 +00:00
Artem Pavlenko
0f3fcc7f34
updated text symboilizer
...
fixed memory leak in FT_Glyph
2006-03-01 15:16:45 +00:00
Artem Pavlenko
c3ff3084ca
1.added to_string method to Color
...
2.added factory methods to python Color
use factory methods
2006-02-27 21:57:08 +00:00
Artem Pavlenko
3818da6bc5
added quad_tree implementaion
2006-02-27 21:25:25 +00:00
Artem Pavlenko
9de253198b
1.python bindings updated to reflect symbolizers changes
...
2.added label collision detector ( TODO - proper impl!)
2006-02-25 11:03:30 +00:00
Artem Pavlenko
1728bdbc7e
added:
...
1. start/end map/layer handlers
2. some cleanups
2006-02-21 20:17:08 +00:00
Artem Pavlenko
bd173527a0
added font_engine impl - work in progress:)
2006-02-21 19:55:24 +00:00
Artem Pavlenko
aed5516197
1. new feature model - based on boost::property_map concept
...
f = feature(id);
f["name"] = "what is my name?";
boost.put(f,"area",123123.4325);
2. simplified and corrected value class and operators
3. updated input plug-ins to work with new features
4. add text_symbolizer (getting there:)
5. template version of agg_renderer
6. attribute_collector how accepts rules
(to collect attribute names for text labels)
2006-02-10 17:13:02 +00:00
Artem Pavlenko
034298f7dd
make agg_renderer non-copyable
2006-02-08 10:44:46 +00:00
Artem Pavlenko
a181d78403
Of course,we can use one templated member functions
...
to handle all symbolizers.
2006-02-07 20:51:08 +00:00
Artem Pavlenko
6a4070a32a
added raster_symbolizer
2006-02-07 16:16:54 +00:00
Artem Pavlenko
af2601eea0
1. new style/feature processor abstraction allowing plugable backends.
...
(to construct custom 'Output' derive from feature_style_processor (CRTP) e.g
class MyOutput : public feature_style_processor<MyOutput>
and implement:
process(***_symbolizer const&, Feature const&)
methods
At the moment only AGG renderer is implemented
2006-02-07 14:41:41 +00:00
Artem Pavlenko
2d4ea20560
added set_capacity method to geometry classes.
...
(now we can use std::vector<boost::tuple<value_type,value_type,char> >
as an alternative vertex storage).
2006-02-05 12:31:24 +00:00
Artem Pavlenko
2a858bcd19
1.removed named_style_cache
...
2.styles moved to Map object
2006-02-05 09:45:51 +00:00
Artem Pavlenko
6b7d874ff3
1.corrected set_rectangle and set_rectangle_alpha to use envelope intersection for proper clipping
...
2. clean up render.cpp
2006-01-28 16:05:51 +00:00
Artem Pavlenko
27a880fe99
midpoint calc for line strings
2006-01-26 23:52:22 +00:00
Artem Pavlenko
b89195f9e6
added label_position method for geometry objects (todo line_string)
2006-01-26 16:43:10 +00:00
Artem Pavlenko
4ed7158908
better interface for clip_line
2006-01-26 16:41:15 +00:00
Artem Pavlenko
a6f96ea5c1
changed symbolizer interface to accept 'feature' and CoordTransform, instead of
...
geometry (feature centric OGC model:).
2006-01-23 22:33:37 +00:00
Artem Pavlenko
245be985e2
1.symbolizers refactored - split into hpp/cpp
...
(all AGG is private to libmapnik and not exposed to client code)
2.removed unused files (more todo)
3.added line pattern symbolizer to python bindings
2006-01-23 13:24:41 +00:00
Artem Pavlenko
390b9c4655
1.added line pattern symbolizer
...
2.added layer envelope check in main rendering loop
2006-01-23 10:33:32 +00:00
Artem Pavlenko
a7c154f223
fixed to_string() method for filter expressions
2006-01-23 10:31:10 +00:00
Artem Pavlenko
150f9dc99a
fixed to_string() method for filter expressions
2006-01-23 10:29:28 +00:00
Artem Pavlenko
0ea95e8b11
fixed pattern fill symbolizer
2006-01-23 10:26:43 +00:00
Artem Pavlenko
55ae073ba2
added alternative vertex storage impl
2006-01-23 10:25:38 +00:00
Artem Pavlenko
6a0cc48b0a
added missing header for boost_1_32_0 serialization lib
2006-01-19 16:40:24 +00:00
Artem Pavlenko
119c352fe7
added alpha blending for image copying
2006-01-01 17:41:55 +00:00
Artem Pavlenko
b3330fc49b
corrected return value
2006-01-01 17:40:26 +00:00
Artem Pavlenko
fa2045d998
revert back to scale calc
2005-12-23 12:45:25 +00:00
Artem Pavlenko
36e5e7238e
1. removed #include <iostream>
2005-12-23 12:34:09 +00:00
Artem Pavlenko
955ff4c4f5
1. fixed shape datasource bug - attributes were ignored for point/pointz/pointm types
...
2. use boost::thread for mutex/lock
3 use boost::noncopyable
4 build agg as a shared lib for now
5. corrected panning code in map.cpp
6. improved coord_transform
2005-12-23 12:31:54 +00:00
Artem Pavlenko
81ace03173
1. use boost::noncopyable
...
2. use boost:🧵 :mutex
2005-12-23 12:24:24 +00:00
Artem Pavlenko
5e2aa3fc60
use boost::noncopyable
2005-12-23 12:23:15 +00:00
Artem Pavlenko
30c713d639
moved vertex_vector to classes that needed it
2005-12-23 12:22:09 +00:00
Artem Pavlenko
ec9b301364
removed unused headers
2005-12-16 16:08:41 +00:00
Artem Pavlenko
6f9528c2e3
1.added serialization support
...
2.some class names changes
2005-12-14 17:01:09 +00:00
Artem Pavlenko
a6191fade0
1. corrected LIBS in SConsctipt files
...
2. use boost::shared_ptr instead of ref_ptr
2005-12-12 13:15:33 +00:00
Artem Pavlenko
2d08614042
return object in envelope()
2005-12-01 10:06:40 +00:00
Artem Pavlenko
7f4df91371
check for valid datasource in the main loop
2005-11-30 00:21:07 +00:00
Artem Pavlenko
64427961d7
added qualifier
2005-11-30 00:19:33 +00:00
Artem Pavlenko
01f9df9b43
added feature factory
2005-11-24 15:51:29 +00:00
Artem Pavlenko
d9973561ad
use delete instead of destroy_ds for now
2005-10-17 19:39:41 +00:00
Artem Pavlenko
007398725f
fixed rounding error
2005-09-19 22:15:43 +00:00
Artem Pavlenko
17c368af52
removed to_string()
2005-09-19 22:14:32 +00:00
Artem Pavlenko
f5dda2f207
1. more pythonic feel:)
...
2. added CSS color string parser and color factory
3. added docs dir
2005-09-08 13:20:37 +00:00
Artem Pavlenko
820b6bb23a
return ref_ptr<Feature> from datasource next() method
...
should play better with python
2005-09-08 13:09:04 +00:00
Artem Pavlenko
e01a831850
1.removed debug printing from filter_parser
...
2.to_string method in Envelope
3.filter_factory - static method
4.mapnik_envelope.cpp - more bindings
TODO - fix __str__ , .def(str(self)) - doesn't compile at the moment
2005-08-31 19:43:37 +00:00
Artem Pavlenko
eb7890cfe8
added alpha() method
2005-08-31 19:36:08 +00:00
Artem Pavlenko
04f86c3dc7
unused class clean-up
2005-08-31 19:34:51 +00:00
Artem Pavlenko
48775a5cd9
1.renamed null_filter -> all_filter
...
2.added none_filter
3.fixed some warnings in shapeindex util
2005-07-06 20:52:06 +00:00
Artem Pavlenko
c7f9d1e568
1.polygon_symbolizer + using agg rasterrizer
...
2.render.cpp - exit rules loop (mastermap styles-?? not sure)
3.pre-allocate space for attributes
2005-06-24 08:39:47 +00:00
Artem Pavlenko
32c76d5a5f
1.added copyright notice to SConstruct/SConscript files
...
2.fixed include/libs in datasources
3.revived shapeindex utility (+ boost::program_options)
2005-06-17 12:40:51 +00:00
Artem Pavlenko
84bd684f87
revived shape support + removed unsed header from postgis.cpp
2005-06-16 20:56:31 +00:00
Artem Pavlenko
41d8341547
some useful macros
2005-06-15 22:17:12 +00:00
Artem Pavlenko
ae86b29d7f
1. added installation instructions
...
2. support for more types in postgis datasource
2005-06-15 20:50:02 +00:00
Artem Pavlenko
cb9059326e
removed : Jamfiles,config.hpp
2005-06-14 18:43:31 +00:00
Artem Pavlenko
a8ec856a15
initial import
2005-06-14 15:06:59 +00:00