Commit graph

359 commits

Author SHA1 Message Date
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
2fbc476d19 + formatting 2010-06-25 15:23:09 +00:00
Artem Pavlenko
e7d9db9735 + remove forward decl of transcoder (using mapnik::transcoder) is
sufficient
2010-06-18 15:38:44 +00:00
Dane Springmeyer
682f7ef9de move to full usage of ST_* prefix for postgis functions, which allows support for ST_AsBinary that works with the new postgis 1.5 geography type. NOTE: this drops support for <= postgis 1.2 2010-06-05 23:50:41 +00:00
Dane Springmeyer
b1070d22c8 postgis/oracle: use mapnik::boolean type for 'estimate_extent' rather than std::string, and strip double quotes as the estimated_extent function operates on single quotes - improves upon #393 2010-03-17 22:03:39 +00:00
Artem Pavlenko
e7bfba10fe + enanble installation of mapnik2 side by side with mapnik 2010-03-17 21:03:02 +00:00
Artem Pavlenko
081545eb7e + remove unused *.hpp file 2010-03-17 13:55:27 +00:00
Alberto Valverde
6476c3b850 fixed construction of extimated_extent query since it expects the names of the schema, table and geometry_column single-quoted 2010-03-16 18:42:05 +00:00
Artem Pavlenko
bce0dab02a + lets postgis return geometry in native byte order
(wkb reader can handle both 'NDR' and 'XDR')
2010-03-08 11:55:24 +00:00
Dane Springmeyer
badbc8706f apply modified patch from Mak Kolybabi fixing up postgres schema support in PostGIS plugin - closes #500 - extends #260 2010-02-19 21:04:45 +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
47dc1e197b + merge mapnik2 to trunk 2009-12-16 20:02:06 +00:00
Dane Springmeyer
f60fa76242 merge 0.7. branch changes back into trunk 2009-12-15 19:25:35 +00:00
Dane Springmeyer
4dd6259903 add optional 'geometry_table' and 'extent_from_subquery' parameter and 'scale_denominator' substitution ability to PostGIS driver while enhancing error reporting - closes #260,#426,#456, updates CHANGELOG with other recent PostGIS enhancements and fixes 2009-12-11 01:50:55 +00:00
Dane Springmeyer
c1ed612b2d grok quoted table,schema, and geometry names by unquoting before attempting geometry columns lookup - thanks avar for the report - closes #393 2009-12-05 04:32:38 +00:00
Dane Springmeyer
b104253d9c Add ability to link to custom icu lib name, and remove the unneeded linking to icudata on osx, while offering compiler flags required for compiling against libicucore provided by Apple 2009-11-24 20:32:41 +00:00
Dane Springmeyer
29afe237c8 add postgres int8 type to collected attributes - #384 2009-10-22 21:42:40 +00:00
Artem Pavlenko
2dcf88b392 + wall-clock timer from auf
(see #439 for more details)
2009-10-20 20:32:53 +00:00
Dane Springmeyer
a0411b8d4c postgis: make sure to close the attribute collection resultset and print the type name of unknown oid attribute values when in debug 2009-10-14 17:42:27 +00:00
Dane Springmeyer
60ca6a5677 postgis: allow for altering the default behavior of keeping open postgresql connections until the whole process ends - when 'persist_connection' = false new connections will be opened and closed for each datasource instance. (closes #434) 2009-10-14 04:21:46 +00:00
Dane Springmeyer
e6306010f8 when a SQL query sent to postgres fails, output the whole thing so users know what mapnik tried to send (as the PSQL error hint truncates the sql) 2009-10-02 05:16:15 +00:00
Jon Burgess
6485039a0e Fix numeric2string to output the correct number of digits following the decimal point. Hopefully this covers all the cases correctly. 2009-09-12 11:31:53 +00:00
Jon Burgess
e8cff82a53 Fix numeric2string() to insert the correct number of 0's when building the string. This problem was reported as: [Mapnik-users] unusual problem with Mapnik output. 2009-09-12 10:49:35 +00:00
Dane Springmeyer
9c3594fb30 postgis: add patch exposing srid parameter and when geometry_field also is provided avoid querying geometry_columns. Also fixed problem of missing srid in the bbox substitution. Thanks rcoup for revised patch - closes #376 2009-08-28 15:57:29 +00:00
Dane Springmeyer
c7f85e70f8 postgis: add a hint if the extent parsing fails 2009-08-27 21:24:00 +00:00
Dane Springmeyer
9a0bb92acd Improve handling of BBOX query substitution - closes #415 2009-08-27 03:54:52 +00:00
Dane Springmeyer
72f9c5badc postgis: throw errors if sql queries fail - closes #363 2009-08-27 03:13:42 +00:00
Dane Springmeyer
434c303e83 postgis: add patch from migurski to allow for the passing of a 'bbox' token enabling optimized placement of the bbox/intersects query for complex subqueries- closes #415 2009-08-22 00:51:35 +00:00
Dane Springmeyer
d6cf82efb0 +support for BigInt(int8) datatype in postgres, closes #384 2009-07-17 04:30:11 +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
597889261b + query WKB in platform native format 2009-06-29 14:31:39 +00:00
Artem Pavlenko
15569af061 + specify a byte order to ST_AsBinary (patch from ssinger) 2009-06-29 14:21:56 +00:00
Artem Pavlenko
84fcabcec3 + trim bpchar type 2009-06-25 19:59:33 +00:00
Artem Pavlenko
be1d437e8b trim tokens when parsing extent 2009-04-27 18:39:33 +00:00
Andreas Volz
49cef4cdca wrong header names -> make dist failed 2009-04-05 07:49:23 +00:00
Andreas Volz
42d659a19f compile utils with autotools 2009-04-04 16:33:25 +00:00
Artem Pavlenko
e9a0f020b4 + applied patch from numenor 2009-03-29 11:32:22 +00:00
Andreas Volz
887518fc57 - install plugins in lib/mapnik/input
- Fix: no sqlite3 for kismet
- python files compile and install
2009-03-25 23:11:49 +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
Dane Springmeyer
90f3703505 scons: add option called 'LIB_DIR_NAME' to control the relative directory where input plugins are installed and where python looks to register them 2009-02-23 00:47:01 +00:00
Artem Pavlenko
f6356731e2 + ident 2009-02-18 16:38:54 +00:00
Dane Springmeyer
5b0c59428e + apply PostgisImprovements.diff (rcoup) for record_limit and cursur_size support (#140) 2009-02-05 17:41:44 +00:00
Tom Hughes
fb98b98e64 Include boost/algorithm/string.hpp to get access to string algorithms. 2009-02-05 11:41:10 +00:00
Artem Pavlenko
60a956f260 + allow multi-line SQL queries in table parameter (#173) 2009-02-03 20:09:26 +00:00
Artem Pavlenko
48a13f8cbc appled boost_append_osx_patch_v3 from jbronn 2008-12-04 23:20:44 +00:00
Artem Pavlenko
c4b003f568 + applied postgis_schema patch from dodobas 2008-11-21 13:21:41 +00:00
Artem Pavlenko
f1c1e475d7 + applied patch from rcoup to allow specify geometry column.
(TODO: update load_map to handle geometry_field)
2008-11-19 21:26:20 +00:00
Artem Pavlenko
fe31150a7b corrected boost libs names logic 2008-06-29 11:40:35 +00:00
Artem Pavlenko
3f9127b5d0 reverting back to 700 2008-06-29 10:58:29 +00:00
Artem Pavlenko
3275cf9ce6 applied font fallbacj patch from Beau Gunderson 2008-06-29 10:40:08 +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
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
Tom Hughes
13d32335e0 Check for null values in the PostGIS results and don't add attributes
with null values to the feature rather than adding a value based on
decoding a buffer full of undefined data.
2008-02-23 01:25:52 +00:00
Artem Pavlenko
308e315432 added Unicode support based on ICU 2008-02-18 21:40:34 +00:00
Artem Pavlenko
b44762e592 allow multi/single threaded variants 2008-02-04 16:12:13 +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
e268660ecc implmented support for pg numeric type - converted to double at the moment. 2008-01-25 11:39:53 +00:00
Artem Pavlenko
66bc84ff7e check for empty strings in params 2008-01-24 12:07:53 +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
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
066c8dfa1a Fixed envelope() method to return borrowed connection
NOTE : Always wrap connection into PoolGuard !!!
 
PoolGuard<shared_ptr<Connection>,shared_ptr<Pool<Connection,ConnectionCreator> > > guard(conn,pool);
2007-09-18 14:00:27 +00:00
Andreas Volz
670862879b build plugins without .so extension 2007-09-17 20:16:43 +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
92b22558fd use 'limit 0' when gathering metadata, also we don't need getFieldSize at all 2007-09-07 15:50:40 +00:00
Artem Pavlenko
ef6f1060d3 link to fribidi on Darwin 2007-09-07 15:46:51 +00:00
Artem Pavlenko
76572994b5 Applied mapnik-r511.patch from David Siegel:
plugins/input/postgis/SConscript:
- added boost_thread-mt to darwin builds

demo/c++/rundemo.cpp:
- setBackground() is now set_background()

bindings/python/SConscript:
- added boost_thread-mt to darwin builds
- changed builder to LoadableModule which builds a so called "bundle"
   on darwin and a shared library on all other systems.
- LDMODULEPREFIX = '' 

SConstruct:
- freetype-config is now searched in the path.
2007-08-28 10:12:38 +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
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
6dc3015ea5 Allow omitting username and dbname in connection string. 2007-04-01 08:29:14 +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
0196cb3334 corrected members init order 2007-02-15 17:25:37 +00:00
Artem Pavlenko
2d256166b4 Store text attributes as USC-2 encoded std::wstring 2007-02-14 19:54:39 +00:00
Artem Pavlenko
1b84f2d454 host = '' , host = None and ommiting host all default to unix-domain socket in /tmp 2007-02-06 15:29:04 +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
59f940b090 append namespace to 'transform' to support buiding with STLport. 2007-01-29 12:50:26 +00:00
Artem Pavlenko
c08a4eb221 corrected cut&paste error 2007-01-17 20:05:23 +00:00
Artem Pavlenko
5549045aaa use all parameters to calculate connection id 2007-01-16 15:22:49 +00:00
Artem Pavlenko
6aa5401151 Added connect_timeout parameter to postgis connection (set to 4 sec). 2006-12-22 11:57:02 +00:00
Artem Pavlenko
31442b6bac Added DESTDIR option which is used as an additional prefix for the purposes of
installing files. It is useful for binary distributions (eg
RPM etc). Thanks to Dominic Hargreaves!
2006-12-17 12:05:47 +00:00
Artem Pavlenko
f4786fe76a features at point impl 2006-12-01 11:45:08 +00:00
Artem Pavlenko
c6ee7ce438 trim strings at data source level 2006-12-01 10:37:15 +00:00
Artem Pavlenko
7534217a8f 1.added missing float4 (pg_type OID 700)
2.removed printing "..unknown type_oid .."
2006-12-01 09:42:04 +00:00
Artem Pavlenko
b3b6bbe221 don't calculate extent by default 2006-11-29 12:12:23 +00:00
Artem Pavlenko
943ddf9943 added initial_size ans max_size parameters for setting up db connection pool
(default to 1 and 10 respectively)
2006-11-28 00:16:13 +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
ebdd0f6030 disable clog printing in release mode. Pass -DMAPNIK_DEBUG to enable. 2006-11-19 17:13:33 +00:00
Artem Pavlenko
6c04c5f745 added port parameter support 2006-11-17 21:10:28 +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
7cae55f73f * trim leading and trailing whitespace from all strings before
rendering them as labels when using the text or shield symbolisers
  (blame my horrible datasets)
* correctly recognise the Postgis "text" data type (it was in
  postgisfs.cpp just not postgis.cpp) - my initial workaround to the
  above was "SELECT trim(from label) AS label ..." which failed
  miserably because it returned a text data type. 

Thanks to Robert Coup for the patch!
2006-10-19 09:24:26 +00:00
Artem Pavlenko
58f672fc83 treat oid=25 (TEXT) types as string 2006-10-17 21:36:11 +00:00
Artem Pavlenko
c195e1d24d added yet to be implemented features_at_point 2006-10-16 21:30:58 +00:00
Artem Pavlenko
459f43b39c 1. use more precise coord values in SQL statements.
2. added extra parameter 'estimate_extent'. By default, exact extent will be calulated e.g :
    select extent(geom) from table_name;
Sometimes it is more practical (faster!) to use estimated extent
    select estimated_extent('table_name','geom');
but it is somewhere around 95% accurate.
Usage:
     ....   
     params["estimate_extent"]="true";
     ....
2006-10-09 20:57:04 +00:00
vspader
4b9222f053 Bugfix for PostGIS plugin. 2006-10-09 20:09:46 +00:00
Artem Pavlenko
18ef498140 don't rely on feature id column name. 2006-10-09 09:45:45 +00:00
Artem Pavlenko
d2838011d9 Use <mapnik/*.hpp> includes. Thanks to Vince Spader from 10east.com 2006-10-05 09:00:36 +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
31d04c3131 added support for building on x86_64 platform e.g. /usr/lib64 etc. 2006-09-06 09:14:41 +00:00
Artem Pavlenko
26a406706e wrap C headers with :
extern "C" 
{
 // 
}
2006-08-31 21:32:07 +00:00
Artem Pavlenko
d11153ccf8 use fully qualified names 2006-07-24 20:06:09 +00:00
Artem Pavlenko
d0ddc88253 1. move parameters to datasource
2. general cleanup
2006-05-23 16:52:10 +00:00
Artem Pavlenko
61fd258fd1 changing licence from GPL to LGPL 2006-03-31 10:32:02 +00:00
Artem Pavlenko
f97b552eda changed from gid to ogc_fid (is it standard?) 2006-03-31 08:54:20 +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
ce93c69fa3 minor syntax corrections to comply with ansi c++ 2006-03-08 23:02:28 +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
d8dc53bcf4 new build system 2006-01-31 23:09:52 +00:00