Commit graph

1170 commits

Author SHA1 Message Date
Dane Springmeyer
9f4bde3078 fix unsigned/signed comparision warning 2013-05-22 13:16:12 -07:00
artemp
653e9e73b4 + implement features_at_point in term of existing features(query) 2013-05-22 16:40:26 +01:00
artemp
a3eaebd5e1 feature_at_point
+ use 'tol' where possible
2013-05-22 16:40:26 +01:00
Dane Springmeyer
337410fc98 remove tabs 2013-05-21 12:56:35 -07:00
Dane Springmeyer
8478fdc217 fix boolean check to be easier to read 2013-05-21 12:55:08 -07:00
Dane Springmeyer
49933d7d0f remove tab 2013-05-21 12:54:48 -07:00
Dane Springmeyer
20076e593f support for handling unicode paths on windows in sqlite, csv, and geojson plugins - refs #1177 2013-05-21 12:51:31 -07:00
artem@windows
154c93017a * add support for unicode (utf16) paths on windows 2013-05-21 09:42:55 -07:00
artem@windows
871ac5b4bb * add support for unicode (utf16) paths on windows 2013-05-21 09:48:12 +01:00
artemp
f2132fa7bb + use tol in feature_at_point 2013-05-20 14:00:02 +01:00
artemp
551e9e427e + use tol in feature_at_point 2013-05-17 16:24:32 +01:00
artemp
57d5da9004 + fix sqlite.input build 2013-05-17 16:23:36 +01:00
artemp
9686999a2c fix sqlite build 2013-05-17 13:13:18 +01: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
artemp
499f8aefc5 + fix accidental typo :) 2013-05-15 15:13:19 +01:00
artemp
682b85b27d + fix accidental typo :) 2013-05-15 15:12:28 +01:00
artemp
c698079f5e + log Null geometry case ( via @TomH ) 2013-05-15 15:09:53 +01:00
artemp
99dcc76860 + log Null geometry case ( via @TomH ) 2013-05-15 15:07:17 +01:00
artemp
06e4105310 + check if geometry record (WKB) is not Null before attempting to parse 2013-05-15 14:39:24 +01:00
artemp
4dd1189ac8 + check if geometry record (WKB) is not Null before attempting to parse 2013-05-15 14:38:54 +01:00
artemp
86aeee1ea1 + remove an empty line at the begining 2013-05-15 14:31:57 +01:00
Dane Springmeyer
1b95518ce1 remove kismet plugin - closes #1833 2013-05-09 17:29:03 -07:00
artemp
4915bf138e mapnik::value + add move ctor
mapnik::feature + pass attributes by r-value.
2013-05-07 12:04:06 +01:00
artemp
31a506f3cb + use more consise c++11 syntax 2013-05-06 15:52:04 +01:00
Toby Collett
ac09541243 Use shared pointer reference count to track pools
By using the shared pointer reference count to track the connections
in the connection pool we no longer have to explicitly return them
to the pool.

This resolves an issue where cursor feature sets were returning their
connections before they were done with them, causing a potential race
with another connection user.
2013-04-29 20:33:57 +00: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
ea28abf203 Merge branch 'master' into image-readers-c++11
Conflicts:
	bindings/python/mapnik_image.cpp
	include/mapnik/factory.hpp
	include/mapnik/image_reader.hpp
	src/image_reader.cpp
	src/jpeg_reader.cpp
	src/png_reader.cpp
2013-04-22 12:24:09 +01:00
Dane Springmeyer
4c38bf9b81 remove geos plugin (moved to https://github.com/mapnik/non-core-plugins) - refs #1809 2013-04-19 14:09:25 -07:00
artemp
c73e48fa58 + use std::unique_ptr instead of std::auto_ptr (deprecated!) 2013-04-19 09:50:50 +01:00
Dane Springmeyer
83eb8f2595 fix handling of null values for feature id in sqlite/postgis input - closes #1817 2013-04-17 15:34:21 -07:00
Dane Springmeyer
60c6592c4e fix spelling of unknown 2013-04-17 14:23:04 -07:00
Dane Springmeyer
9da1f35b5e plugins do not need to store nulls / save space - refs #1644 2013-04-11 16:05:29 -07:00
artemp
bfaee4afae + avoid std::string->C-string->std::string round trip 2013-04-10 12:44:05 +01:00
artemp
48fa520a83 + figure out raster format from file name unless explicitely specified by
'format' parameter.
2013-04-10 12:16:19 +01:00
kunitoki
206a563e0c - better usage of mapnik::singleton instance in occi datasource
- occi small cosmetics
2013-04-08 15:18:48 +02:00
kunitoki
40c01fd0ed - move occi object creation in the environment 2013-04-08 11:36:22 +02:00
kunitoki
ca9af53829 - keep seeking for valid geometries in oracle featureset (much like postgis featureset) 2013-04-02 09:33:56 +02:00
Artem Pavlenko
a20cf31c01 Merge pull request #1764 from strk/master_connection_leaks
Fix postgresql connection leaks
2013-03-28 05:49:24 -07:00
kunitoki
26ba946cb0 - avoid using clog/cerr in sqlite plugin (use mapnik::logging facilities instead) 2013-03-27 09:02:40 +01:00
Dane Springmeyer
f2ee8cae16 avoid signed/unsigned warning with llvm-g++ 2013-03-19 14:01:48 -07:00
Sandro Santilli
0c5d5ca99c Fix postgresql connection leaks
Return connection to pool on connection error (see #1708)
Fix leaks on persist_connection=false (#1711)

Includes testcase for #1711
2013-03-15 10:34:22 +01:00
artemp
8d3061076d + make operator=() non-throw
+ use std::swap()
2013-03-14 09:35:41 +00:00
artemp
31bcb8507b + poss args by const ref 2013-03-14 09:35:41 +00: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
541e1b7ba2 round floating point to int - refs #1672 2013-03-13 12:19:10 -07:00
Dane Springmeyer
9c7b155b1d add the python libpath to ensure proper linking 2013-03-12 18:43:58 -07:00
Dane Springmeyer
d70cf153cc fix compile of rasterlite plugin 2013-03-12 18:36:03 -07:00
Dane Springmeyer
5b3cca9d44 remove used variables 2013-03-11 12:59:11 -07:00
Dane Springmeyer
84706d22a5 fix linking of python.input to python lib on linux 2013-03-06 14:02:38 -08:00
kunitoki
c7139a55a7 - actually we don't want a shared_ptr as the resultset could be handled in a pool 2013-03-06 13:27:00 +01:00
kunitoki
ad6fe5ae55 - avoid a segmentation fault when an error occurred in oracle sql query 2013-03-06 12:48:34 +01:00
artemp
e9f03a565f + explicit polygon path closing 2013-03-01 11:08:58 -05:00
Dane Springmeyer
054cb13231 Merge branch 'master' of github.com:mapnik/mapnik 2013-02-26 12:07:53 -05:00
Dane Springmeyer
d861636fbc move const char string2value interface to use iterators 2013-02-26 12:07:36 -05:00
kunitoki
5abd52b25f - partially reverted occi changes: oracle Number datatype should really be interpreted as double (not integer or string) 2013-02-26 17:41:14 +01:00
Dane Springmeyer
712ff50abe make a few utility functions inline and static 2013-02-26 10:52:41 -05:00
kunitoki
5d8b9ba4fc - improved oracle sub-select handling
- fixed a logic problem of the rowlimit clause (when using seb-selects)
- applied tokens to the query (much like the postgis datasource)
- leave oracle to convert most datatypes (should fix occi part of ref #1672)
2013-02-25 11:31:18 +01:00
kunitoki
8b61efa333 - improved type conversions in oracle plugin (especially date/time columns now can be filtered in styles) 2013-02-19 11:54:15 +01:00
Dane Springmeyer
ae5f4d26d1 tests: make consistent the proj4 string for epsg:4326 2013-01-25 00:49:55 -08:00
Dane Springmeyer
d6587d791d avoid aign conversion compiler warnings 2013-01-21 14:13:24 -08:00
artemp
1ef9ec2b88 + use std::deque for caching features. 2013-01-18 12:27:29 +00:00
Dane Springmeyer
e16567fecb fixup std:: prefixing of cmath functions - closes #1694 2013-01-17 13:53:48 -08:00
Dane Springmeyer
f483e590d8 remove way out of date and unmaintained demo app previously part of osm plugin code 2013-01-17 13:41:02 -08:00
Dane Springmeyer
d718e95ed6 use std::strlen not strlen from c 2013-01-15 13:32:09 -08:00
Dane Springmeyer
ceb8ffcc6f fixup includes for shape input 2013-01-14 01:49:35 -08:00
Dane Springmeyer
2c28219e4c add back depedence of hello world plugin on libmapnik accidentally removed in refactoring in 3e67c1d694 2013-01-13 22:16:43 -08:00
Dane Springmeyer
071c67d438 iwyu 2013-01-13 22:01:13 -08:00
Dane Springmeyer
0e8d224ecb remove uneeded usage of boost::lexical_cast - refs #1687 2013-01-11 11:11:20 -08:00
Dane Springmeyer
b5c06965ac refactor expression and value type usage to speed up compile time 2013-01-08 14:17:31 -08:00
Dane Springmeyer
4bd5484cdb fixup includes and value type and params usage across plugins 2013-01-04 09:23:06 -08:00
Dane Springmeyer
e682705a86 use the std library tolower over boost::algorithm::to_lower for both better runtime and compile speed - closes #1677 2013-01-03 19:27:53 -08:00
Dane Springmeyer
e7f608c2fa fix -Wshadow warning in geojson plugin 2013-01-03 18:53:22 -08:00
Dane Springmeyer
4471c0f6f4 fixup includes 2013-01-03 18:53:00 -08:00
Dane Springmeyer
626e0056fd replace boost::trim with faster internal trim - refs #1633 2013-01-03 18:02:21 -08:00
Dane Springmeyer
58d53dbe2f avoid -Wshadow warning 2013-01-03 18:01:36 -08:00
Dane Springmeyer
9183ca3d61 remove uneeded semicolon 2013-01-03 18:00:49 -08:00
Dane Springmeyer
771e2f3d8e fix -Wshadow warning 2013-01-03 18:00:28 -08:00
Dane Springmeyer
ebfc3161c1 avoid direct usage of spirit in csv plugin 2013-01-03 16:26:09 -08:00
Dane Springmeyer
a5fdcea9db remove unused and obsolete 'quiet' option from csv datasource 2013-01-03 14:49:22 -08:00
Dane Springmeyer
000b714eae fix more clang++ -Wshadow warnings 2013-01-03 12:37:45 -08:00
artemp
bba0b61dfc + consider metadata first when calculating extent 2013-01-03 15:44:05 +00:00
artemp
9ad4f91780 + should work correctly now (mapnik::value_null) 2013-01-03 15:08:11 +00:00
artemp
b7f463514d + don't add dummy attributes 2013-01-03 15:07:41 +00:00
Dane Springmeyer
e52879d623 ensure plugin is only built after libmapnik 2012-12-26 16:52:24 -08:00
Dane Springmeyer
a4b07553ae store copy of bbox on featureset to avoid the same potential bug as #1667 (9b3d2b7) 2012-12-21 20:02:03 -08:00
Dane Springmeyer
aee275a08c fix number handling in csv plugin and add tests for 64bit integer support in sqlite and postgis datasources - refs #1669 2012-12-21 19:53:33 -08:00
Dane Springmeyer
9b3d2b7d8e fix sqlite featureset results when non using an rtree index - closes #1667 2012-12-20 22:40:39 -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
fa1acc5de7 fix compile of occi plugin by casting from int to mapnik::value_integer (appears occi does not support 64 bit ints) 2012-12-19 10:38:37 -08:00
artemp
94bda55793 Merge branch 'master' into bigint 2012-12-18 21:50:30 +00:00
Dane Springmeyer
5758e6d9de Loosen simplification factor to 1/20 of pixel (master branch) - closes #1639 2012-12-18 11:57:45 -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
artemp
274fbf8f7a + ensure 'close path' handled correcly
(currenlty SEG_CLOSE command must have valid x,y)
+ implement real_policies in wkt and geojson generators
2012-12-18 11:44:35 +00:00
Dane Springmeyer
43244efb7d Merge branch 'master' of github.com:mapnik/mapnik into no-bind 2012-12-17 13:03:11 -08:00
Dane Springmeyer
7b39333234 remove as much mutable as possible 2012-12-17 12:59:15 -08:00
Dane Springmeyer
bdfdca99e9 fix debug output 2012-12-17 10:51:10 -08:00
Dane Springmeyer
c5410fac7e remove bind option for datasources - refs #962 2012-12-17 10:03:07 -08:00
Dane Springmeyer
bb27156df0 use internal noncopyable class to speed up compile times slightly 2012-12-16 18:19:52 -08: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
772c7f52fc knock out some msvc compiler warnings 2012-12-12 15:59:27 -08:00
Dane Springmeyer
3fd7909ba0 fix compile on windows with msvc 2010 - closes #1646 2012-12-12 15:09:07 -08:00
Dane Springmeyer
9575bb8786 return value_null for null integer stored in shapefile dbf - closes #1638 - refs #1642 2012-12-11 19:40:46 -08:00
Dane Springmeyer
e928c483bf properly support tolerance in shape filter_at_point - refs #1640 2012-12-11 14:46:52 -08:00
Dane Springmeyer
53ba3483db remove unused 'using' usage 2012-12-11 14:31:14 -08:00
artemp
02bb955b59 + simplify and refactor shape featuresets to be more resilient to various
quirky shapefiles.
+ fix io navigation functions to use std::streampos
2012-12-11 09:37:53 +00:00
Dane Springmeyer
7c58bf9fcb replace boost::trim with faster custom trim - closes #1633 2012-12-07 14:06:13 -08:00
Dane Springmeyer
c0021d0760 remove unused iostream includes and unnecessary usage of ostringstream - refs #1055 2012-12-06 23:06:12 -08:00
artemp
da0d74529d + fix record length check to account for OGR not writing PointZ according to
shapefile spec - PointZ: type,x,y,z,measure  (#1193, #504)
2012-12-06 15:14:06 +00: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
e9ca5b47e2 finish support for dbf logical type, strip handling of memo, and add tests for all basic types - refs #1614 2012-12-02 21:37:39 -08:00
Dane Springmeyer
4e9f6c12eb Merge branch 'master' of github.com:mapnik/mapnik 2012-11-29 17:53:06 -08:00
Dane Springmeyer
53acae94be as discussed with @artemp - there should be no need or benefit to trying to handle F type in dbf since it is a foxpro extension that shapefiles do not commonly use 2012-11-29 17:44:06 -08:00
artemp
26889c4761 + support 'logical' type #1614 2012-11-29 17:19:34 +00:00
artemp
85e00d6596 Merge remote-tracking branch 'origin/master' 2012-11-29 10:36:18 +00:00
artemp
430e75e0ac + better stdout 2012-11-29 10:35:03 +00:00
artemp
913e1d0cfe + don't expect we _must_ consume all input when parsing numbers
some DBF can have some junk appended to records #1605
2012-11-29 10:23:51 +00:00
Dane Springmeyer
8bfc330015 postgis: do not fatally throw if metadata queries fail - closes #1609 and closes #1565 2012-11-28 20:19:11 -08:00
Dane Springmeyer
0548d6037b fix postgres null connection error adding space for better formatting 2012-11-28 18:20:34 -08:00
Dane Springmeyer
1baeb7036c cleanup unused code 2012-11-28 18:20:09 -08:00
Dane Springmeyer
2ee6c9aca1 Merge branch 'master' of github.com:mapnik/mapnik 2012-11-28 17:48:14 -08:00
Dane Springmeyer
46ee60b398 fix row_limit behavior in shape.input to stop reading when count = row_limit, not just when count > row_limit 2012-11-28 14:15:53 -08:00
artemp
cff52c9f73 + fix typo 2012-11-28 19:16:10 +00:00
artemp
99141fa5e5 + support initialSize_ updates
+ move maxSize_/initialSize_ logic into pool.hpp
2012-11-28 17:38:18 +00:00
artemp
a3fe851737 + overwrite pool::maxSize_ with max value 2012-11-28 17:04:53 +00:00
Dane Springmeyer
9afaf091b1 postgis plugin: avoid printing the password if connection fails - amends 19deb86591 2012-11-27 18:37:22 -08:00
Dane Springmeyer
c95b8ff8d7 fix visual tests by restoring old hack to prevent rendering of all names 2012-11-27 18:15:56 -08:00
artemp
cec34dd5a6 + better error msg 2012-11-27 12:49:19 +00:00
artemp
b114e8219c + add status() method to reduce code duplication 2012-11-27 12:48:22 +00:00
artemp
85192afe2b + avoid creating duplicate attributes 2012-10-26 12:15:31 +01:00
Dane Springmeyer
28c35055e4 fix null feature handling in ogr input - closes #1542 2012-10-20 20:16:17 -07:00
Dane Springmeyer
bc4a74f5b0 python plugin: catch and report exceptions, closes #1422 2012-10-19 17:05:51 -07:00
Dane Springmeyer
8c2604e69c osm input: remove string hack and set feature_id to osm node id 2012-10-16 17:46:24 -07:00
Dane Springmeyer
baa2880dad nicer error formatting of ogr layer names 2012-10-09 13:47:24 -07:00
Dane Springmeyer
65b19680e0 followup to 69fb17cd3c - make sure to report literal in descriptor 2012-10-05 14:49:12 -07:00
Dane Springmeyer
8b73d8527f ogr.input: continue past null features or geometries rather than aborting rendering 2012-10-05 13:49:29 -07:00
Dane Springmeyer
7efb37adb7 formatting 2012-10-04 17:59:43 -07:00
artemp
10a28145b4 + sqlite: load extension 2012-10-04 12:36:07 +01:00
Dane Springmeyer
c27530ec7b remove inefficient and no longer used mapnik::raster constructor - refs #1516 2012-10-03 18:22:18 -07:00
Dane Springmeyer
4bc6b0c800 avoid copy of image data by using new, more efficient mapnik::raster constructor - closes #1516 2012-10-03 15:53:41 -07:00
Dane Springmeyer
86e805b33e Merge pull request #1499 from manelclos/master
Query tolerance for features_at_point
2012-10-03 11:50:29 -07:00
Dane Springmeyer
0b9ebe21dd use boost make_shared 2012-10-02 14:12:15 -07:00
artemp
037c1a84c6 + use format_ 2012-10-01 15:46:03 +01:00
artemp
3ffe8ec21c + add premultiplied_alpha flag to mapnik::raster 2012-09-28 16:43:05 +01:00
Manel Clos
8f7083d14d Add tolerance parameter to features_at_point
Make map.query_point() always pass tolerance to datasources
2012-09-28 15:12:10 +02:00
Dane Springmeyer
083ff236b7 Revert "+ fix parameters names to be more css-ish"
This reverts commit 5c5c4fb76e.
2012-09-26 11:57:29 -07:00
Dane Springmeyer
d6821e8ce9 Merge branch 'master' of github.com:mapnik/mapnik 2012-09-25 14:33:54 -07:00
Dane Springmeyer
e8abc8eef1 csv: stop adding WKT/JSON geometry data to attributes 2012-09-25 14:08:07 -07:00
artemp
ae176d1d19 + use 'extent' for both raster.input and gdal.input 2012-09-24 17:12:03 +01:00
artemp
5c5c4fb76e + fix parameters names to be more css-ish 2012-09-24 16:14:17 +01:00
artemp
ac735e82c2 + make tile_size configurable for 'tiled' read policy 2012-09-24 13:39:03 +01:00
Dane Springmeyer
fca564614f csv plugin: improve newline detection - closes #1497 2012-09-21 13:34:43 -07:00
Dane Springmeyer
9b5189abf0 sqlite: improve the error when no key_field is set and the primary key cannot be autodetected 2012-09-14 16:10:51 -07: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
69fb17cd3c + port 170e23440f to master 2012-09-05 10:58:21 +01:00
Dane Springmeyer
59129a7a2b rename variable to avoid confusion with text_size 2012-09-04 14:35:03 -07:00
Dane Springmeyer
a12b8f1d2f c++ style 2012-09-03 10:27:48 -07:00
Dane Springmeyer
f5cf5aa09d start reporting geometry type in geojson plugin 2012-09-03 10:01:01 -07:00
Dane Springmeyer
f334085079 remove duplicate include 2012-09-03 09:59:58 -07:00
Dane Springmeyer
affecb0f32 csv plugin: support single row data and fix warning when no data can be parsed 2012-08-31 12:07:35 -07:00
Dane Springmeyer
2e44e8c470 postgis: do not attempt to parse an empty extent string 2012-08-30 15:04:05 -07:00
Dane Springmeyer
9a51b31e01 postgis: only warn for non-geometry type attributes 2012-08-28 16:23:09 -07:00
Dane Springmeyer
ac418a7d4e remote the last references 2012-08-27 16:43:40 -07:00
Dane Springmeyer
d9fa1cb0c2 remove old $ cruft 2012-08-24 13:49:28 -07:00
Dane Springmeyer
4e2d2c67b0 double csv parsing speeds when handling geojson encoded geometries - refs #1436 2012-08-23 09:30:51 -07:00
Dane Springmeyer
a3254965fe double csv parsing speeds when handling wkt encoded geometries - refs #1436 2012-08-23 09:07:06 -07:00
Dane Springmeyer
b81f8f0ee8 link the python plugin to libpython by default 2012-08-22 10:39:49 -07:00
Dane Springmeyer
bfc6a08b2e csv: initialize variables to prevent gcc warnings - refs #1330 2012-08-22 09:54:27 -07:00
Dane Springmeyer
9f7e033dbc csv plugin: be more permissive when headers length > column length but more strict when the opposite is true - closes #1417 2012-08-20 14:06:07 -07:00
Dane Springmeyer
f42805a532 CSV plugin: support reading geojson encoded geometries in various flavors of quoting fun - closes #1392 2012-08-17 13:46:32 -07:00
Dane Springmeyer
aee29b27ed only build geojson plugin if >= boost 1.47 is available to avoid potential compiler errors with missing boost/geometry headers if people try to force older boost versions 2012-08-17 08:57:49 -07:00
Dane Springmeyer
cf3bbb8cf0 csv plugin: be more aggressive about detecting and ignoring blank lines 2012-08-16 18:20:48 -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
Dane Springmeyer
d902de1c08 remove unused member variables 2012-08-16 14:05:55 -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
107c72563f avoid some msvc compiler warnings in gdal input- refs #1103 2012-08-15 12:37:17 -07:00
artemp
5f2c2d1a37 + c++ style 2012-08-09 12:41:35 +01:00
Dane Springmeyer
cc1ddc3015 simplify linking logic in python plugin fixing os x install (where we do not want to link the plugin explicitly to python) 2012-08-06 06:32:41 -06: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
Hermann Kraus
42e31faaf5 Reindent code. 2012-08-05 15:35:43 +02:00
Hermann Kraus
e437ae7aeb Fix crash while processing empty ways in OSM data (e.g. deleted ways). 2012-08-05 15:34:22 +02:00
Rich Wareham
16ffdf1fb5 python plugin: remove useless Makefile 2012-07-31 17:07:11 +01: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
artemp
03422de504 + close polygons (SEG_CLOSE) 2012-07-26 15:51:10 +01:00
artemp
618bc1ba0f + close polygon 2012-07-26 15:20:23 +01:00
artemp
4ddddba254 + use pre-increment op 2012-07-26 11:58:48 +01:00
artemp
690b56a511 + use std::auto_ptr 2012-07-26 11:57:41 +01:00
Dane Springmeyer
4ad15db23d collect attribute descriptions in geojson plugin (TODO: sorting of attributes is returned in reverse order) 2012-07-25 16:11:51 -07:00
Dane Springmeyer
6df998cf39 fixup various plugin includes 2012-07-25 09:29:21 -07:00
Dane Springmeyer
241bf28da0 'include what you use' in plugins to set up for future forward declarations in mapnik/feature.hpp and mapnik/datasource.hpp 2012-07-24 19:21:55 -07:00
Dane Springmeyer
1b23838c58 avoid uninitialized compiler warning 2012-07-23 17:43:21 -07:00
Dane Springmeyer
5c20a9f72a suppress unused variable compiler warnings with gcc 2012-07-23 17:29:10 -07:00
Dane Springmeyer
a1d6579da2 silence a few compiler warnings 2012-07-23 17:21:29 -07:00
Dane Springmeyer
0e7414ea1d ogr plugin: no need to pass dataset pointer 2012-07-20 19:01:09 -07:00
Dane Springmeyer
669c4906d4 avoid c-linkage warning with datasources - closes #1323 2012-07-20 18:34:41 -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
Dane Springmeyer
15a624fa79 update readmes for template plugins 2012-07-10 14:54:05 -07:00
Dane Springmeyer
d3b375713b properly populate the context 2012-07-10 14:51:13 -07:00