artemp
62af2e6765
+ replace <boost/shared_ptr.hpp> with <memory>
2013-09-20 14:13:23 +01:00
artemp
b315eb2167
+ use std::shared_ptr and std::make_shared
2013-09-20 14:01:27 +01:00
artemp
4f4e2b001e
Merge branch 'master' into c++11
...
Conflicts:
SConstruct
benchmark/run.cpp
bindings/python/mapnik_datasource.cpp
bindings/python/mapnik_feature.cpp
bindings/python/python_optional.hpp
include/mapnik/css_color_grammar.hpp
include/mapnik/expression_grammar.hpp
include/mapnik/feature.hpp
include/mapnik/feature_style_processor_impl.hpp
include/mapnik/image_filter_types.hpp
include/mapnik/image_util.hpp
include/mapnik/json/geometry_generator_grammar.hpp
include/mapnik/json/geometry_grammar.hpp
include/mapnik/processed_text.hpp
include/mapnik/tiff_io.hpp
include/mapnik/util/geometry_svg_generator.hpp
include/mapnik/util/geometry_wkt_generator.hpp
include/mapnik/utils.hpp
include/mapnik/webp_io.hpp
include/mapnik/wkt/wkt_grammar.hpp
plugins/input/shape/shape_datasource.cpp
plugins/input/shape/shapefile.hpp
src/expression_grammar.cpp
src/expression_string.cpp
src/image_util.cpp
src/json/feature_collection_parser.cpp
src/json/feature_parser.cpp
src/miniz.c
src/symbolizer_helpers.cpp
src/tiff_reader.cpp
src/webp_reader.cpp
tests/cpp_tests/geometry_converters_test.cpp
tests/cpp_tests/image_io_test.cpp
tests/cpp_tests/map_request_test.cpp
tests/python_tests/image_test.py
tests/visual_tests/test.py
2013-08-30 09:46:09 +01:00
Dane Springmeyer
18ab68f03f
iwyu
2013-06-21 12:00:48 -07:00
Dane Springmeyer
0365d3e081
start centralizing filesystem operations in mapnik::util::fs - refs #1177
2013-06-02 19:28:24 -07:00
Dane Springmeyer
9f4bde3078
fix unsigned/signed comparision warning
2013-05-22 13:16:12 -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
artemp
c73e48fa58
+ use std::unique_ptr instead of std::auto_ptr (deprecated!)
2013-04-19 09:50:50 +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
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
e16567fecb
fixup std:: prefixing of cmath functions - closes #1694
2013-01-17 13:53:48 -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
66a5c26fdc
leverage mapnik::value_integer for feature.id() and grid rendering buffer - refs #1662
2012-12-19 19:24:52 -08:00
Dane Springmeyer
7b39333234
remove as much mutable as possible
2012-12-17 12:59:15 -08:00
Dane Springmeyer
c5410fac7e
remove bind option for datasources - refs #962
2012-12-17 10:03:07 -08: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
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
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
a12b8f1d2f
c++ style
2012-09-03 10:27:48 -07:00
Dane Springmeyer
ac418a7d4e
remote the last references
2012-08-27 16:43:40 -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
669c4906d4
avoid c-linkage warning with datasources - closes #1323
2012-07-20 18:34:41 -07:00
Dane Springmeyer
39bae3825e
remove plugin usage of lexical cast - refs #1055
2012-06-22 16:49:53 -04:00
kunitoki
74342e3083
- no need to #ifdef all the time: the compiler should optimize out the log calls when no MAPNIK_LOG is defined
...
- initially got rid of those ifdefs in plugins only
2012-04-09 12:05:49 +02:00
kunitoki
8c58a9aa73
- improved again the logging facilities
...
- aligned the plugins to using the new methods with severity
- implemented per object severity, with fallback to global (with global functions to set them programmatically)
- initial check in of logger python bindings (todo)
2012-04-09 03:00:51 +02:00
kunitoki
1f351e0e09
implement new debug system
2012-04-08 02:20:56 +02:00
kunitoki
7dbe1279bf
- reorder constructor initialization list to avoid warnings in raster datasource
2012-03-28 22:01:45 +02:00
Dane Springmeyer
9556584b0c
create context in init list
2012-03-16 13:43:48 -07:00
Dane Springmeyer
77c58e487d
whitespace fixes
2012-02-01 17:37:35 -08:00
Artem Pavlenko
7601095e24
move context's typedef inside to avoid poluting global namespace
2012-01-19 17:36:27 -05:00
Dane Springmeyer
820b9a2b25
merge master with feature_impl
2012-01-17 17:47:27 -05:00
Dane Springmeyer
b0d0d06564
finish refactor, moving to separate method off datasources to get_geometry_type and using enums all around
2012-01-17 01:09:46 -05:00
Artem Pavlenko
d207580feb
don't forget to init context_ptr
2012-01-16 13:18:00 -05:00
Artem Pavlenko
87e4f22966
+ update raster plugin to work with new feature_factory
2012-01-16 09:51:31 -05:00
Artem Pavlenko
b689670ffd
switch back from mapnik2 to mapnik
...
add mapnik2 module which redirects to mapnik and issues DeprecationWarning
2011-11-23 11:33:58 +00:00
Dane Springmeyer
ce9e44b5f2
plugin code formatting based on emacs format in utils/format_source_files
2011-11-13 19:37:50 -08:00
Dane Springmeyer
c8b2ddfaba
reduce the size of plugin libraries by hiding unneeded symbols
2011-11-11 15:37:10 -08:00
Dane Springmeyer
69806f2728
format error messages
2011-10-31 13:43:56 -04:00
kunitoki
76cadccd6b
- modified coding style in raster plugin
2011-10-23 16:31:25 +02:00
Matt Amos
517fc59f77
Added Python test for multi-tile raster policy.
2011-10-18 14:34:58 +01:00
Matt Amos
d29f609052
Added a 'multi' tiled raster plugin reader for virtual images
...
already present as tiles on disk.
2011-10-12 01:08:03 +01:00
Dane Springmeyer
22c39d91ba
scons: rename all SConscript files to more friendly name of 'build' with a python extension for quick syntax detection in editors
2011-08-30 05:32:01 +00:00
Dane Springmeyer
3e67c1d694
scons: centralize install path info
2011-08-12 21:31:28 +00:00
Dane Springmeyer
82ac99611e
add LINKING option to control whether libmapnik is build static or shared and RUNTIME_LINK options to trigger dependency flags to compile against static libs
2011-08-11 19:14:00 +00:00
Dane Springmeyer
e84119aed9
directly link libmapnik in plugins (not just darwin) - patch from Stella L. - closes #790
2011-07-05 23:41:17 +00:00
Dane Springmeyer
49fd1f93d1
use boost::make_shared across plugins to avoid explicit new and ensure fast and exception safe allocation
2011-05-16 23:41:34 +00:00
Dane Springmeyer
c6980f2fd8
make sure datasource feature ids start at 1, like shapefile and sqlite plugins
2011-04-29 20:00:45 +00:00
Dane Springmeyer
8fa2c6b4da
raster.input: touchup error output
2011-04-13 17:50:40 +00:00
Artem Pavlenko
7191d56a16
+ throw image_reader_exception if we can't read tiff file
...
+ catch image_reader_exceptions in raster.input
+ re-throw in bind()
2011-04-11 21:17:10 +00:00
Dane Springmeyer
5a1842aad1
remove tabs
2011-04-02 03:45:50 +00:00
Dane Springmeyer
c5833a6db8
remove unmaintained autotools scripts
2011-02-04 22:22:16 +00:00
Dane Springmeyer
f671ef20da
scons: ensure libmapnik is built before any plugins that link to it on osx, needed for builds with -jN
2010-12-21 20:46:44 +00:00
Lucio Asnaghi
406b3b92fa
+ raster plugin logging cosmetics
2010-11-18 23:15:59 +00:00
Dane Springmeyer
6cda2b7d96
avoid compiler error
2010-11-15 03:17:38 +00:00
Lucio Asnaghi
f24d329cac
- cosmetics
2010-11-14 14:41:49 +00:00
Robert Coup
1dce437120
#622 add optional late-binding of datasources
2010-10-24 06:34:18 +00:00
Dane Springmeyer
523b09701e
Add the ability to pass custom CXXFLAGS and LDFLAGS that will be prioritized above other compiler and linker flags
2010-09-18 18:02:15 +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
2a9d2e8192
place built plugin targets in input/ directory to make local registration easier
2010-07-13 23:26:05 +00:00
Artem Pavlenko
e7bfba10fe
+ enanble installation of mapnik2 side by side with mapnik
2010-03-17 21:03:02 +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
c11e35fbc0
+ reduce threshold for 'tiled' policy to 512*512 pixels
...
+ reduce tile size to 256 px
+ TODO: expose the above as datasource parameters
2010-02-03 12:20:06 +00:00
Artem Pavlenko
22d8fbe7f0
+ consistent raster bbox calc :
...
x0 = int(minx+0.5)
y0 = int(miny+0.5)
x1 = int(maxx+0.5)
y1 = int(maxy+0.5)
width = x1 - x0
height = y1 - y0
2010-02-03 12:19:57 +00:00
Artem Pavlenko
47dc1e197b
+ merge mapnik2 to trunk
2009-12-16 20:02:06 +00:00
Dane Springmeyer
3d3997f1b2
add proper namespacing - patch from River Tarnell
2009-12-03 17:20:02 +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
56f0c33465
format raster plugin to only print output in debug mode
2009-10-12 03:58:11 +00:00
Artem Pavlenko
47c3bc515d
+ add 'tiled' policy to avoid loading very large rasters into memory
...
if (width*height > 1024*1024) : load raster in 1024x1024 chunks
else : use single_file_policy
TODO: Expose chunk size as raster_datasource parameter
2009-04-10 12:05:31 +00:00
Dane Springmeyer
544cbb249a
Apply patch from Marcin to handle smooth transitions between raster layers for both gdal and raster plugin - closed #295
2009-04-07 23:06:51 +00:00
Andreas Volz
42d659a19f
compile utils with autotools
2009-04-04 16:33:25 +00:00
Dane Springmeyer
8f610a71d9
add boost filesystem checks (for filename existance) to gdal and raster plugins
2009-03-30 21:56:03 +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
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
Artem Pavlenko
308e315432
added Unicode support based on ICU
2008-02-18 21:40:34 +00:00
Artem Pavlenko
4529e83562
fixed parameters order in image reader
2008-01-07 10:20:05 +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
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
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
46902bf488
increment feature id
2007-04-30 20:08:49 +00:00
Artem Pavlenko
5b91f9a9c5
small correction
2007-04-25 11:26:48 +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
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
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
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
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