Commit graph

40 commits

Author SHA1 Message Date
Robert Coup
1dce437120 #622 add optional late-binding of datasources 2010-10-24 06:34:18 +00:00
Dane Springmeyer
f7346b0e72 make sure to seek to the beginning of shapefile when querying points and using indexes - thanks tmcw for uncovering - closes #643 2010-10-06 16:16:58 +00:00
Artem Pavlenko
7776b8f4ae + make shape_io object a shape datasource member and re-use memmapped files
(todo : only implemented for indexed shape files atm)
2010-09-02 20:20:42 +00:00
Dane Springmeyer
930b2cc7b6 better handling and error reporting around ogr layer names and indexes, renamed ogr plugins index file to 'ogrindex' to avoid collision with shape plugins index (when using common shapefile between each as the indexes appear incompatible) 2010-08-20 21:20:55 +00:00
Dane Springmeyer
50147ab509 warn if no index is found for shapefiles - TODO - add an env setting to turn off warnings 2010-08-18 21:02:54 +00:00
Dane Springmeyer
267b48de49 add ability to uninstall all tracked scons targets using an 'uninstall' argument like 'scons uninstall' - closes #311 2010-07-18 20:39:05 +00:00
Dane Springmeyer
6e9fa579fb fix unused variable warning 2010-01-29 23:56:25 +00:00
Dane Springmeyer
ba187a4949 shape plugin: be more explicit about the shapefile name if the file is not found 2010-01-26 22:57:34 +00:00
Artem Pavlenko
bff83c6ac0 + read z and m bounds from the header 2010-01-20 15:26:06 +00:00
Artem Pavlenko
47dc1e197b + merge mapnik2 to trunk 2009-12-16 20:02:06 +00:00
Dane Springmeyer
770d5a727d shape plugin: only trim the '.shp' extension (restores behavior added in r1046 and later changed in r1170) - closes #413 2009-08-27 05:41:02 +00:00
Artem Pavlenko
ed07268576 + more verbose output to stderr 2009-07-03 13:28:11 +00:00
Dane Springmeyer
9bcdda31d2 shape input: before boost 1_36 use convenience.hpp 2009-06-08 08:22:02 +00:00
Dane Springmeyer
e61a8119da shape input: use more flexible (boost::filesystem) method of stripping ext names 2009-06-08 07:07:10 +00:00
Dane Springmeyer
a9f353de05 improve up front error checking of shapefile existence with boost, and allow shapefile plugin to accept filename with or without '.shp' extension - closes #199 and #174 2009-03-30 23:51:58 +00:00
Artem Pavlenko
37f49e29cc Applied patches from Martijn van Oosterhout:
1. The first allows the user to add a <FileSource
name="foo">/home/bar/baz/</FileSource> to the beginning of the file
and then in any of the symbolisers you can say:

<FooSymboliser base="foo" name="bridge">
It it will refer to the file /home/bar/baz/bridge.

2. The second allows you to create Datasource templates at the top
level, which can be used later in the actual layers like so:
<Map>
  <Datasource name="db">
   <Paramaeter name="host">/tmp</Parameter>
  </Datasource>
  <Layer name="lay">
    <Datasource base="db">
      <Parameter name="table">points</Parameter>
    </Datasource>
  </Layer>
</Map>

And the host parameter will be used in the layer.

3. The third adds the "base" parameter to the raster and shape input
plugins. All it does is specify a path to prefix to the filename prior
to using it. Together with the above feature it allows things like:
<Map>
  <Datasource name="shapes">
   <Paramaeter name="base">/home/foo/shapes</Parameter>
  </Datasource>
  <Layer name="lay">
    <Datasource base="shapes">
      <Parameter name="file">places</Parameter>
    </Datasource>
  </Layer>
</Map>

And it will use the shapefile /home/foo/shapes/places
2007-12-17 14:21:04 +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
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
8880e5ff5f Restored collecting attributes descriptors 2007-06-05 09:09:04 +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
6ed05bcf42 and another one :) 2007-03-08 18:19:42 +00:00
Artem Pavlenko
d10a7eeb24 reverting change #457 : we still must read four bytes ! 2007-03-08 17:35:01 +00:00
Jean-Francois Doyon
76a820beeb - Move a variable declaration used only for debugging, to avoid compiler warning. 2007-03-05 01:28:49 +00:00
Artem Pavlenko
73bd1ab83e fixed missing 'encoding' parameter:
>>> from mapnik import *
>>> ds = Shapefile(file='./demo/data/boundaries',encoding='latin1')
>>> pt = ds.envelope().center()
>>> print ds.describe()
>>> for f in ds.features_at_point(pt):
>>>     print f.properties['NOM_FR'].unicode()
>>>     print f.properties['NOM_FR'].__str__()
2007-02-14 21:55:04 +00:00
Artem Pavlenko
2d256166b4 Store text attributes as USC-2 encoded std::wstring 2007-02-14 19:54:39 +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
b3b6bbe221 don't calculate extent by default 2006-11-29 12:12:23 +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
c195e1d24d added yet to be implemented features_at_point 2006-10-16 21:30:58 +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
2f360a6549 1.removed map width/height from query interface
2.small cleanups
2006-09-12 14:29:22 +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
d35e9f047e small cleanup 2006-03-23 21:45:32 +00:00
Artem Pavlenko
ac2a286cde added __declspec(dllexport) + general cleanup 2006-03-22 15:55:58 +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
d8dc53bcf4 new build system 2006-01-31 23:09:52 +00:00
Renamed from datasources/shape/shape.cpp (Browse further)