Commit graph

1122 commits

Author SHA1 Message Date
Dane Springmeyer
88b24144b6 ensure libmapnik DEFINES are propagated to the python bindings 2013-07-23 19:58:13 -04:00
Dane Springmeyer
ef4dfeb747 make it possible to disable compilation of grid_renderer - closes #1962 2013-07-23 19:37:25 -04:00
Dane Springmeyer
93d36ff1e3 avoid -Wunused-parameter warning 2013-07-23 16:10:16 -04:00
Dane Springmeyer
31931b89cb git rid of a few fixme 2013-07-23 16:00:16 -04:00
Dane Springmeyer
0b58eea131 scons: link bindings to rt on linux 2013-07-14 16:32:16 -04:00
Tom Hughes
a93832cbff Avoid truncating 64 bit return values on 32 bit platforms 2013-07-10 22:36:11 +01:00
Dane Springmeyer
4bc28d547b handle lacking return value handling caught by coverity 2013-07-04 14:31:46 -04:00
Dane Springmeyer
c011524b67 add mapnik.Image.premultiplied() to query status of pixel premultiplication 2013-07-02 16:01:23 -04:00
Dane Springmeyer
fbeeb54558 fix compile with python 3.x 2013-06-06 13:11:34 -07:00
Dane Springmeyer
5cb6bbe01c fix python linking when using static libraries for deps or statically building libmapnik 2013-06-03 13:17:45 -07:00
Dane Springmeyer
3b2bdba7b0 iwyu 2013-06-02 20:19:33 -07:00
Dane Springmeyer
1036eb1c99 support base_path adjustment when reading from xml file as well as from a string 2013-06-02 16:24:21 -07:00
Dane Springmeyer
fa15b5feaa add python wrappers for CSV and GeoJSON plugins - closes #1882 2013-06-02 12:12:39 -07:00
Dane Springmeyer
481fb3d380 no need to explicitly link to cairo on osx in python bindings if using dynamic lookup 2013-05-30 09:19:05 -07:00
Dane Springmeyer
126d1b73d6 reflect debug symbolizer in python 2013-05-22 06:49:38 -07:00
Dane Springmeyer
8634a04938 add support for drawing all geometry verticies with debug symbolizer mode=vertex and expose in python - closes #1848 2013-05-21 19:21:35 -07:00
artemp
7a119a5b9e + mapnik_datasource parameters : handle unicode objects - convert to internal UTF8 representation 2013-05-20 14:00:02 +01:00
artemp
e57f5f9547 cherry picking.. 2013-05-20 14:00:02 +01:00
artemp
4c05d3a617 + mapnik_datasource parameters : handle unicode objects - convert to internal UTF8 representation 2013-05-20 11:48:13 +01:00
Dane Springmeyer
ef5e8f7fff fix linking of python bindings when building against libmapnik.a 2013-05-17 08:38:09 -07:00
artemp
392561c5d9 add to/from specialisation for boost::optional<bool> 2013-05-17 11:16:11 +01:00
Dane Springmeyer
b6a937e93d iwyu 2013-05-16 12:47:36 -07:00
artemp
d5c9fea7b6 + remove redundant work-around 2013-05-16 20:32:19 +01:00
Dane Springmeyer
5a6ea9ee6f finish to rename of mapnik::Feature -> mapnik::feature_impl 2013-05-16 11:55:58 -07:00
Dane Springmeyer
3fbf4df67d add support for statically linking datasource input plugins - closes #1810 and #1821 - refs #249 2013-05-16 11:55:58 -07:00
Dane Springmeyer
c34f86e08f finish cleanup after geos plugin removal - refs #1809 2013-05-16 11:55:58 -07:00
artemp
37cc3de4aa + use mapnik::noncopyable 2013-05-16 19:41:59 +01:00
artemp
a3900131fd + add python_optional<float> specialization 2013-05-16 19:41:59 +01:00
artemp
8ed9606046 * c++ style comments, pls!
* formatting
2013-05-16 19:41:59 +01:00
Dane Springmeyer
c127757cd6 remove uneeded exception translator for mapnik::config_error - works around #1847 2013-05-16 07:40:54 -07:00
artemp
26302e19af + add from_geojson static method
TODO: better handling of feature.id() and transcoder
2013-05-14 14:53:52 +01:00
Dane Springmeyer
1b95518ce1 remove kismet plugin - closes #1833 2013-05-09 17:29:03 -07:00
artem@windows
ffc7a088a4 use std::move
msvc : temp fix https://svn.boost.org/trac/boost/ticket/2839
2013-05-02 12:03:16 -07:00
artemp
a8376d2a4b + fix method signature 2013-04-30 18:46:34 +01:00
artemp
58927b404c c++11
+ replace BOOST_FOREACH with for( : )
+ remove boost/foreach.hpp
+ fix benchmarks (17,18)
2013-04-24 16:40:35 +01:00
artemp
03d08799e0 + add missing .cpp file 2013-04-23 18:18:03 +01:00
artemp
f897a54445 + reflect wkt_parser in python
```python

import mapnik
reader = mapnik.WKTReader()
geometry = reader.read("Point(123 123)")

```
2013-04-23 15:10:06 +01:00
artemp
3f6abd3362 + backport image_reader from buffer/string from image-readers-c++11 branch 2013-04-22 11:35:09 +01:00
artemp
8908a4bd1b + re-enable svg generator 2013-04-19 12:11:18 +01:00
artemp
c73e48fa58 + use std::unique_ptr instead of std::auto_ptr (deprecated!) 2013-04-19 09:50:50 +01:00
artemp
22a1df8388 Merge branch 'master' into image-readers-c++11
Conflicts:
	include/mapnik/factory.hpp
2013-04-18 09:48:31 +01:00
Dane Springmeyer
19b777455e also translate std::out_of_bounds => IndexError otherwise new std::exception => runtime catch will override - refs #1816 2013-04-17 15:28:48 -07:00
Dane Springmeyer
20b643a22a add missing exception translator for datasource exceptions by catching std::exception - closes #1816 2013-04-17 13:40:48 -07:00
artemp
438bfad732 + factory : variadic templates based implementation ( requires c++11)
+ image_reader : stream based reading interface (boost::iostreams)
+ register additional png and jpeg readers with following sigs :

  ```
  std::auto_ptr<mapnik::image_reader> reader(mapnik::get_image_reader(buffer,size));
  // buffer - char const*
  // size - size_t
  ```
+ initial type_from_bytes implementation (TODO: add more types)
+ python : mapnik.Image.fromstring(str) mapnik.Image.frombuffer(buf)
2013-04-12 12:46:40 +01:00
Dane Springmeyer
5ceecd40a3 avoid ambiguity between boost::python::range and boost::range - fixes compile error with llvm-gcc 2013-03-19 14:09:36 -07:00
Dane Springmeyer
93c4762ed5 fix access to mapnik::query::property_names in python - closes #1762 2013-03-14 15:31:21 -07:00
Dane Springmeyer
e2c7283522 Added new mapnik-config options: git-describe, defines, includes, dep-includes, and cxxflags - closes #1443 2013-03-13 19:49:59 -07:00
Dane Springmeyer
b479de9e96 fix compile with python >=3 2013-03-12 18:42:42 -07:00
Dane Springmeyer
e66d007627 add halo-rasterizer option for text symbolizer
- closes #1298
  - allows for much faster halo drawing and simliar quality for
    radius values in the 1-2 px range
  - also moves grid_renderer away from using freetype stroker completely
    since halo quality is not critical for this renderer
2013-03-08 20:32:39 -08:00
Dane Springmeyer
662ff26f94 im/view.is_solid method in python bindings to match node-mapnik - closes #1728 2013-02-22 13:40:05 -08:00
Dane Springmeyer
b5a74292a5 return stylename,styleo obj in tuple from map.styles - closes #1725 - amends 16ce1f5bdd 2013-02-22 13:39:14 -08:00
Dane Springmeyer
edbe5aca32 Merge branch 'master' of github.com:mapnik/mapnik 2013-02-22 13:00:10 -08:00
Dane Springmeyer
bdf1a08f1e ensure python bindings return const params 2013-02-22 12:41:12 -08:00
XinGang Li
7bb5676f11 Let template parameter type same as declaration in hpp file. 2013-02-22 23:59:01 +08:00
XinGang Li
df7db521bb Add parse_image_filters function to avoid python bindings access the internal structs. 2013-02-22 23:58:30 +08:00
Dane Springmeyer
86a873857f simplify scale_denominator interface 2013-02-20 18:02:28 -08:00
Dane Springmeyer
a8599d7c61 remove uneeded default args to projection ctor (also fixes msvc linking) 2013-02-20 10:47:55 -08:00
Dane Springmeyer
808b07ad6c fix error output if svg geometry conversion fails 2013-02-10 06:17:04 -08:00
artemp
ad39c9a16a + symbolizers: add hash impl 2013-02-05 16:53:20 +00:00
artemp
79f0f18f3c + provide both symbols and copy_symbols methods 2013-02-04 19:08:10 +00:00
artemp
16ce1f5bdd + implement Map::styles method returning StyleRange object
```
  import mapnik
  m = mapnik.Map(256,256)
  ...
  for style in m.styles:
      print style
  ```
2013-02-04 18:02:52 +00:00
artemp
69e2174524 + fix return value policy 2013-02-04 17:59:31 +00:00
artemp
14fecfd778 + cleanup style.. 2013-02-04 17:59:09 +00:00
Dane Springmeyer
b1c1c86346 make PNG and TIFF support optional - closes #1704 2013-01-29 02:17:37 -05:00
Dane Springmeyer
47ab9913ee make consistent the proj4 string used for spherical mercator across tests and docs 2013-01-28 13:48:13 -05:00
Dane Springmeyer
b987d2287c iwyu 2013-01-25 00:45:58 -08:00
artemp
8c12d6895f + support unicode names in mapnik.Parameter
(Py_Unicode <-> utf8)
2013-01-17 15:59:42 +00:00
artemp
b5f2c8f9f9 + mapnik.Parameter from Py_Unicode ctor
(stored as utf8 std::string)
2013-01-17 15:17:46 +00:00
Dane Springmeyer
18e23be9c0 merge work from mappy/abonnasseau allowing buffer-size to be overiddend by layer - closes #1566 2013-01-15 18:53:34 -08:00
Dane Springmeyer
6859bea499 iwyu 2013-01-13 21:48:56 -08:00
Dane Springmeyer
bbcd53c6f4 refactor headers involving variant attempting to move as much variant usage out of hpp files to speed up compiles 2013-01-12 21:00:45 -08:00
Dane Springmeyer
2175112edd Merge branch 'master' of github.com:mapnik/mapnik 2013-01-10 23:20:35 -08:00
Dane Springmeyer
ce4d0fcd9e expose contains method (fixes infinite recursion in py3k) 2013-01-10 23:11:45 -08:00
Dane Springmeyer
6128097d78 fix compile with python 3.3.x - closes #1595 2013-01-10 23:04:14 -08:00
Dane Springmeyer
94ff584190 finish complete removal of any trace of cairomm/libsigc++ - amends f25d4d9279 and closes #1681 2013-01-09 12:49:39 -08:00
artemp
f25d4d9279 + implement cairo_context wrapper and remove unnecessary dependencies
( cairomm, libsigc++)
2013-01-09 17:00:30 +00:00
Dane Springmeyer
e0622be27d fixup parameters conversion from python 2013-01-04 11:28:00 -08:00
Dane Springmeyer
098f58a206 Merge branch 'master' of github.com:mapnik/mapnik 2013-01-04 09:46:14 -08:00
artemp
e68a65db33 + returning mapnik::parameter makes more sense in this context (?) 2013-01-04 16:55:18 +00:00
artemp
8e78bb3c20 + return value_holder from get_params_by_index 2013-01-04 16:17:51 +00:00
artemp
9ad93d5b06 + change ctor's order - fixes integer parameters convert/extract 2013-01-04 15:55:34 +00:00
Dane Springmeyer
958dce3783 iwyu 2013-01-03 22:34:31 -08:00
Dane Springmeyer
618e43af06 create path_expression.hpp and leverage to simplify and speed up compiles 2013-01-03 20:00:23 -08:00
Dane Springmeyer
c860c9165e various fixes to includes to include what is used 2013-01-03 18:06:07 -08:00
Dane Springmeyer
00e6316ef8 Merge branch 'master' of github.com:mapnik/mapnik into bigint-feature-id 2012-12-20 17:38:01 -08:00
Dane Springmeyer
5479dfbe0e change mapnik::value::to_bool to return false if a string is empty - closes #1665 2012-12-20 14:24:56 -08:00
Dane Springmeyer
66a5c26fdc leverage mapnik::value_integer for feature.id() and grid rendering buffer - refs #1662 2012-12-19 19:24:52 -08:00
Dane Springmeyer
e53914463a return the grid::value_type instead of hardcoding int 2012-12-19 18:06:51 -08:00
artemp
0eefd304bf cMerge branch 'master' into bigint
Conflicts:
	bindings/python/mapnik_feature.cpp
2012-12-19 09:39:51 +00:00
Dane Springmeyer
4c64fb4b0d fix #1659 but re-break bool->int auto-conversion, which is less of a problem 2012-12-18 20:22:02 -08:00
artemp
f5dd9e53c4 + calc int_parser/generator type from mapnik::value_integer 2012-12-18 18:05:45 +00:00
artemp
a38b252ccd Merge branch 'master' into bigint
Conflicts:
	plugins/input/geojson/geojson_datasource.cpp
	plugins/input/postgis/postgis_featureset.cpp
2012-12-18 13:57:39 +00:00
Dane Springmeyer
c5410fac7e remove bind option for datasources - refs #962 2012-12-17 10:03:07 -08:00
Dane Springmeyer
16aae90bfc iwyu 2012-12-16 12:50:36 -08:00
artemp
3ab9f273d8 + use mapnik values in python converters 2012-12-14 10:24:50 +00:00
artemp
c4bae9d30a Merge branch 'master' into bigint
Conflicts:
	bindings/python/mapnik_feature.cpp
	plugins/input/shape/dbfile.cpp
2012-12-14 10:01:21 +00:00
Dane Springmeyer
9abcda54c7 ensure boolean types are converted first - refs #1642 2012-12-11 19:38:27 -08:00
Dane Springmeyer
2353deced4 enable conversion from Py_None to mapnik::value_null - refs #1642,#794 2012-12-11 18:13:33 -08:00
Dane Springmeyer
6b84269343 add pad method on box2d to help tighten otherwise verbose code 2012-12-11 13:56:25 -08:00
artemp
8fa88a71b6 Merge branch 'master' into bigint 2012-12-03 13:14:31 +00:00
artemp
855aea95e0 + mapnik::value and mapnik::parameters - initial support for 64-bit integers 2012-12-03 13:12:09 +00:00
Dane Springmeyer
be05aa5b60 add palette.to_string() method and add python tests of fixed palette functionality 2012-11-30 12:31:58 -08:00
Dane Springmeyer
bffabbf99d allow input plugins and fonts directories to be set by environment when auto-loaded from python - closes #1594 - refs #1004 2012-11-26 17:44:58 -08:00
Dane Springmeyer
4efb6ea234 round up array length to fix edge case memory corruption in utf grid encoding - closes #1584 and 1585 2012-11-21 19:24:45 -08:00
Dane Springmeyer
f39c3ad857 add marker-multi-policy parameter to support user-configurable rendering behavior for multi-geometries when using either point or interior placement - closes #1573, refs #1555 2012-11-20 17:58:39 -08:00
Dane Springmeyer
eebc8cc73e add image/grid clear methods to make it easier to quickly re-use previously allocated objects for rendering - closes #1571 2012-11-11 21:35:50 -08:00
Alexandre Bonnasseau
267975c388 Coding style correction : tabs to spaces 2012-11-09 11:57:10 +01:00
Alexandre Bonnasseau
efff5f0ef0 Issue #1545 - override buffer-size parameter at layer level - revised 2012-11-08 15:51:22 +01:00
Dane Springmeyer
72124a9f8a apply patch from @lightmare fixing image_filter getter - closes #1534 2012-10-15 08:52:13 -07:00
Dane Springmeyer
ccda92fed1 Revert "finish moving symbolizers out of rule"
This reverts commit 20a317860d.
2012-10-10 10:51:06 -07:00
Dane Springmeyer
20a317860d finish moving symbolizers out of rule 2012-10-10 10:02:45 -07:00
Hermann Kraus
c5e69022cd Fix wrap_before in python.
Closes #1505.
2012-10-06 00:20:58 +02:00
Dane Springmeyer
9b053f493b make src_over the default compositing operation (and an optional kwarg) for im.composite() 2012-10-04 14:19:36 -07:00
Dane Springmeyer
05195ca68d Merge pull request #1444 from sigmapi/issue1107
Fix for issue #1107
2012-10-03 13:06:45 -07:00
Dane Springmeyer
e6f04fd402 new features_at_point tolerance should be optional - make it so in python to avoid test failures after #1499/#503 2012-10-03 12:17:13 -07:00
Dane Springmeyer
7866cc3dec expose more compositing options in python (the non-agg custom ones) to set up for testing as per #1493 and #1369 2012-10-01 17:41:07 -07:00
Dane Springmeyer
09726626cf add 'premultiplied' property on raster symbolizer to allow user to control (in rare cases) the premultiplied status of images in cases where tiffs mis-report it - closes #1512 2012-10-01 16:14:41 -07:00
Dane Springmeyer
e2a76e09b3 use what you include 2012-10-01 15:03:17 -07:00
artemp
01ae1a179d Merge branch 'master' into conv_simplify 2012-09-17 11:35:15 +01:00
Dane Springmeyer
657098fd48 fix git conflicts that snuck into the code 2012-09-14 18:35:54 -07:00
Hermann Kraus
e629cbb1c3 Raise Exception instead of returning None. 2012-09-15 02:06:08 +02:00
Hermann Kraus
1940014a48 Remove deprecation warnings. 2012-09-14 23:25:32 +02:00
Dane Springmeyer
8cfb40ae2f refactor fontsets making them optional on the symbolizer and removing the dangerous default contructor - closes #1483 (TODO - consider modifying insert_fontset to only take single arg of fontset instance) 2012-09-14 14:17:45 -07:00
artemp
fb8f50b0f5 Merge branch 'master' into conv_simplify 2012-09-14 13:15:42 +01:00
Hermann Kraus
d181313e90 Add TextSymbolizer.name in python bindings.
Refs #1482.
2012-09-14 01:56:35 +02:00
artemp
29423cfc1c Merge branch 'master' into conv_simplify
Conflicts:
	bindings/python/mapnik_markers_symbolizer.cpp
	plugins/input/ogr/ogr_index_featureset.cpp
	plugins/input/shape/dbfile.cpp
	plugins/input/shape/shapefile.hpp
	src/load_map.cpp
2012-09-07 16:46:02 +01:00
artemp
967d6110bf + singleton: return ref from instance() method 2012-09-07 16:23:03 +01:00
artemp
11e6ba0c09 + make client methods non-static in classes derived from
mapnik::singleton<> (TODO: apply to all)
+ ensure client methods are accessed through instance() method
2012-09-07 14:56:30 +01:00
artemp
8fa0742a53 + make client methods non-static in classes derived from
mapnik::singleton<> (TODO: apply to all)
+ ensure client methods are accessed through instance() method
2012-09-07 14:51:25 +01:00
artemp
5f8bb423e8 Merge branch 'conv_simplify' of git://github.com/kkaefer/mapnik into kkaefer-conv_simplify 2012-09-06 13:12:39 +01:00
artemp
a513d3f97d + code: avoid exposing unsafe static methods in datasource_cache ( #1451)
+ python: remove redundent 'instance' method (mapnik.DatasourceCache)
+ python: reflect plugin_directories method
+ tests: update python usage

TODO: consider using similar approach in FontEngine etc..
TODO: consider returning reference from singleton::instance() to
      safeguard from accidental deleting a 'singleton' pointer
2012-09-05 12:53:37 +01:00
Dane Springmeyer
ac8e22a781 bindings: get_filename - no need for const here 2012-09-03 10:52:26 -07:00
Dane Springmeyer
a12b8f1d2f c++ style 2012-09-03 10:27:48 -07:00
Konstantin Käfer
ae865a59fb Merge branch 'master' into conv_simplify
Conflicts:
	include/mapnik/vertex_converters.hpp
2012-08-28 20:37:27 +02:00
Dane Springmeyer
5120d0398d add build file for headers and svg/output code directories to hold the svg_renderer used for output - refs #1438 2012-08-27 17:58:49 -07:00
Dane Springmeyer
ac418a7d4e remote the last references 2012-08-27 16:43:40 -07:00
Konstantin Käfer
f5ed45ff80 Merge branch 'master' of git://github.com/mapnik/mapnik into conv_simplify 2012-08-25 15:02:12 +02:00
Panagiotis Skintzos
e34dc99f3a Exposed the label collision detector outside of Cairo renderer and added Python bindings (issue #1107) 2012-08-25 11:43:31 +02:00
Konstantin Käfer
13c46b6cc6 Merge branch 'master' into conv_simplify
Conflicts:
	bindings/python/mapnik_line_symbolizer.cpp
	bindings/python/mapnik_polygon_symbolizer.cpp
2012-08-24 23:29:43 +02:00
Konstantin Käfer
4e1423cefe Merge branch 'master' of git://github.com/mapnik/mapnik into conv_simplify
Conflicts:
	src/cairo_renderer.cpp
2012-08-24 23:24:31 +02:00
Dane Springmeyer
d9fa1cb0c2 remove old $ cruft 2012-08-24 13:49:28 -07:00
Dane Springmeyer
c0539406d8 fix includes post bf3efbeab8 - refs #1435 2012-08-23 11:34:13 -07:00
Dane Springmeyer
ce03b3599b expose svg output for geometries - refs #1437 (TODO: support svg_multi_generator) 2012-08-22 19:13:37 -07:00
Dane Springmeyer
501d322c96 +reflect comp_op, smooth, and clip in python bindings for all relevant symbolizers - closes #1264 2012-08-21 18:05:43 -07:00
Dane Springmeyer
e8101a070a partially repair backward compatibility in python for 'marker-type' - refs #1427 and #1285 2012-08-21 16:36:15 -07:00
Dane Springmeyer
ab5ce64b16 python: add properties to mapnik.Stroke to match xml/svg spec - refs #1427 2012-08-21 15:59:31 -07:00
Dane Springmeyer
6a0df52b1c python: add wrap_character alias to wrap_char - refs #1427 2012-08-21 14:48:10 -07:00
Dane Springmeyer
d069ce7405 apply patch from @lightmare for fixing return of text_transform - closes #1420 2012-08-21 14:37:35 -07:00
Dane Springmeyer
0dec6c69ca +reflect miterlimit in python 2012-08-20 19:19:21 -07:00
Dane Springmeyer
72f967924e +reflect new opacity propert of polygon_pattern_symbolizer in python 2012-08-20 18:52:07 -07:00
Dane Springmeyer
6ca9196c98 remove unused header 2012-08-20 18:22:46 -07:00
Dane Springmeyer
3e4d579a5e +reflect background_image in python and add background_color to match XML 2012-08-20 18:18:36 -07:00
Dane Springmeyer
b76c8e5c64 +reflect building symbolizer in python 2012-08-20 18:17:00 -07:00
Dane Springmeyer
9273f861bc reflect all new style properties in python - refs #1264 2012-08-20 17:17:37 -07:00
Dane Springmeyer
8c8cf71d52 python: add 'status' property to match XML - refs #1418 2012-08-20 17:16:47 -07:00
Dane Springmeyer
55646ce236 fix group_by on layer to be std::string const& and reflect in python 2012-08-20 16:26:41 -07:00
Rich Wareham
0301294c84 python bindings: add wkt_features helper to PythonDatasource
The Python plugin datasource helper class already contained a helper for generating WKB features. This patch adds an
almost identical helper for WKT features. This is to facility Python data source who generate their features directly
using the text formatting support in Python.
2012-08-18 17:15:38 +01:00
artemp
f24641e802 + add envelope() method to mapnik.Path 2012-08-17 16:53:43 +01:00
artemp
258ea94d8d + add_geojson and from_geojson methods
+ add_wkb,from_wkb throw RuntimeError
+ cleanups
2012-08-17 12:48:41 +01:00
Dane Springmeyer
ad2250a4b5 back compatibility for raster-mode values using _ and shield-no-text 2012-08-16 19:20:29 -07:00
Dane Springmeyer
62e039d2c9 double grid encoding performance in python - closes #1315 2012-08-16 18:39:11 -07:00
Dane Springmeyer
58d848ae8e c++ style 2012-08-16 18:25:06 -07:00
Dane Springmeyer
25a1643d54 partial revert of e6e32fc and general cleanup to match node-mapnik grid api - refs #1325 and 1315 2012-08-16 17:51:36 -07:00
Dane Springmeyer
a986aedd05 remove 'info' and 'fatal' severities for logging to simplify framework - closes #1400 2012-08-16 15:52:32 -07:00
Konstantin Käfer
b243f03c90 use a set to make visvalingam a lot faster 2012-08-16 22:26:58 +02:00
Dane Springmeyer
a3e27ed726 Merge branch 'master' of github.com:mapnik/mapnik 2012-08-16 12:29:27 -07:00
Dane Springmeyer
d850ee8b76 correct various old trac links to point to github - closes #1396 2012-08-16 12:27:58 -07:00
Dane Springmeyer
ecb72d6cbc scons: don't run parseconfig if uninstalling 2012-08-16 10:00:05 -07:00
Konstantin Käfer
22150f908f add facilities to choose the simplification algorithm 2012-08-16 16:53:38 +02:00
artemp
8bba93d299 + don't pass std::string arg by value - use const& 2012-08-16 12:05:31 +01:00
artemp
e6e32fcb39 + applied patch from @lightmare - #1325 2012-08-16 11:00:07 +01:00
Dane Springmeyer
91b15c4cdf remove python pickling for map/style/rule/symbolizers/fontset/query - refs #1391 2012-08-15 13:55:36 -07:00
Dane Springmeyer
b8a0587c29 disable deepcopy in python bindings until this is more solid - refs #1390 2012-08-15 13:27:44 -07:00
Dane Springmeyer
6f5d6f65b1 include what you use 2012-08-15 10:24:56 -07:00
artemp
aecf0531f5 + remove metawriters for the upcoming 2.1 release 2012-08-15 09:47:03 +01:00
Dane Springmeyer
3d048c5f72 add ticket reference for workaround added in 60d843a7a8 2012-08-14 12:19:56 -07:00
Konstantin Käfer
dcd7a07c8e simplify-tolerance property boilerplate 2012-08-14 17:04:57 +02:00
Dane Springmeyer
339fd59293 +reflect line_symbolizer offset 2012-08-13 14:06:11 -07:00
artemp
7847af51e7 + fix __iter__ protocol 2012-08-08 16:15:54 +01:00
artemp
abd40edfd9 + add std::runtime_error to python translator 2012-08-08 12:11:30 +01:00
artemp
c2dca42a4f + use Py_RETURN_NONE
+ cleanup/simplify
2012-08-07 17:01:03 +01:00
artemp
7cfdfde247 + call Py_RETURN_NONE macro to properly handle returning Py_None
(http://docs.python.org/c-api/none.html) - thanks, @lightmare!
2012-08-07 15:43:40 +01:00
artemp
9da9ffadc1 + don't crash on empty paths 2012-08-07 14:47:28 +01:00
artemp
60d843a7a8 + temp fix : provide get_fill_opacity_impl to avoid
"No to_python (by-value) converter found for C++ type: float"
2012-08-07 11:37:24 +01:00
Artem Pavlenko
189322ef9f Merge pull request #1337 from rjw57/rjw57-python-plugin
Request for comments: python: a new plugin to use arbitrary Python as a data source
2012-08-06 05:09:29 -07:00
artemp
5541ea0271 + layer : minimum-extent and buffer-size
+ agg::process_xxx : remove ad-hoc query_extent modifiers
+ ctrans : simplify vertex skipping
2012-08-01 15:44:36 +01:00
Dane Springmeyer
a9f99848c2 expose boost::optional<mapnik::stroke> for markers_symbolizer (which works as oopposed to boost::optional<double> and boost::optional<float> which are broken 2012-07-31 18:40:53 -07:00
Dane Springmeyer
f60f40c939 Merge pull request #1157 from mapnik/stroke-as-reference
make stroke property on line_symbolizer a reference when accessed from python (not a copy)
2012-07-31 18:20:55 -07:00
Dane Springmeyer
16084ff335 support both interior placement and point for markers - helps prepare for #952 2012-07-31 18:13:50 -07:00
Rich Wareham
156a7590f4 python: a new plugin to use arbitrary Python as a data source
This plugin allows you to write data sources in the Python programming language.
This is useful if you want to rapidly prototype a plugin, perform some custom
manipulation on data or if you want to bind mapnik to a datasource which is most
conveniently accessed through Python.

The plugin may be used from the existing mapnik Python bindings or it can embed
the Python interpreter directly allowing it to be used from C++, XML or even
JavaScript.

Mapnik already has excellent Python bindings but they only directly support
calling *into* mapnik *from* Python. This forces mapnik and its input plugins to
be the lowest layer of the stack. The role of this plugin is to allow mapnik to
call *into* Python itself. This allows mapnik to sit as rendering middleware
between a custom Python frontend and a custom Python datasource. This increases
the utility of mapnik as a component in a larger system.

There already exists MemoryDatasource which can be used to dynamically create
geometry in Python. It suffers from the problem that it does not allow
generating only the geometry which is seen by a particular query. Similarly the
entire geometry must exist in memory before rendering can progress. By using a
custom iterator object or by using generator expressions this plugin allows
geometry to be created on demand and to be destroyed after use. This can have a
great impact on memory efficiency. Since geometry is generated on-demand as
rendering progresses there can be arbitrarily complex 'cleverness' optimising
the geometry generated for a particular query. Obvious examples of this would
be generating only geometry within the query bounding box and generating
geometry with an appropriate level of detail for the output resolution.
2012-07-31 17:05:27 +01:00
Dane Springmeyer
0d97b851fa markers: support opacity on bitmaps, and move to supporting both opacity and fill-opacity 2012-07-30 18:31:21 -07:00
Dane Springmeyer
1476280189 include what you use 2012-07-24 19:08:15 -07:00
Dane Springmeyer
6c7ab1767b include what you use 2012-07-24 18:35:18 -07:00
Hermann Kraus
08cbf1c71c Fix deprecation warnings. Part 2
Closes #1340.
2012-07-25 01:15:44 +02:00
Dane Springmeyer
e13e81c4d5 move grid utility functions to cpp file - avoids function 'defined but not used' compiler warnings - refs #1330 2012-07-23 11:43:24 -07:00
Dane Springmeyer
e36081a5c0 change geometry_utils::from_wkb to return a bool that signifies if at least one wkb path was parsed - refs #1333 and #1305 2012-07-20 15:09:01 -07:00
Rich Wareham
7b3baee3a1 python bindings: export Query.resolution property as a tuple
Although the mapnik::query class is exposed to the Python bindings, the
resolution attribute is a raw boost::tuple. If you attempt to access
this tuple from Python, boost complains strongly.

This patch adds the required magic to marshal the raw boost::tuple which
is query::resolution_type into an honest-to-goodness Python tuple.
2012-07-19 19:35:20 +01:00
artemp
d3bc55761b + define keys container in client code not in grid/grid_view,
e.g doesn't have to be std::map<...>
2012-07-12 10:57:57 +01:00
Dane Springmeyer
3e895ac6b7 implement built in support for ellipse and arrow markers, make markers_symbolizer default to POINT placement and ellipse drawing, add back compatibility for deprecated marker-type property - refs #1285 and #1304 2012-07-10 22:38:53 -07:00
Dane Springmeyer
5aff56a192 expose ability to clear global caches in python - closes #1022 2012-07-10 09:36:08 -07:00