Commit graph

323 commits

Author SHA1 Message Date
Artem Pavlenko
190f8e5cb9 + return boost::optional in find_style (c++)
+ return feature_type_style by value, raise KeyError otherwise (Python)
2008-11-18 21:15:46 +00:00
Artem Pavlenko
7e6e00f06a + return UTF-8 in to_string 2008-11-16 21:40:10 +00:00
Artem Pavlenko
b423b45b22 + to_utf8 function to convert from icu::UnicodeString to utf-8 std::string 2008-11-16 21:11:57 +00:00
Artem Pavlenko
2257d63a65 + minor formatting 2008-11-16 21:11:07 +00:00
Artem Pavlenko
dce49f4a75 + hebrew rtl patch from JonB 2008-10-09 07:23:36 +00:00
Artem Pavlenko
11100cf30e + apply has_dimensions for line_placement only 2008-09-21 10:42:51 +00:00
Artem Pavlenko
20f3a9460d + expose buffer_size parameter (default 0)
influences envelope used by placement detector 
  ( i.e. 'avoid_edges' parameter)
2008-09-21 10:14:38 +00:00
Artem Pavlenko
565da55742 + point symbolizer opacity patch from Brian (openstreetmap@brian.quinion.co.uk) 2008-09-19 08:27:32 +00:00
Artem Pavlenko
85e713f4c7 + make 'update_detectot' public 2008-09-15 08:46:47 +00:00
Andreas Volz
bd2b9e2ea0 - add new files
- optional check for gdal
2008-08-02 20:39:26 +00:00
Tom Hughes
7d173be190 Add support for font sets on shield sumbolizers. 2008-07-29 23:21:39 +00:00
Tom Hughes
271540f710 Don't return a null point when no glyph can be found in any font.
Patch from Jon Burgess <jburgess777@googlemail.com>.
2008-07-29 07:51:45 +00:00
Tom Hughes
779a0e67b2 Make the cairo renderer build again, with font fallback support now. 2008-07-25 23:26:02 +00:00
Tom Hughes
026e4e71e7 Refactor some of the font set stuff so that the cairo renderer can be
made to work again.
2008-07-25 00:23:33 +00:00
Tom Hughes
b958b0d9bc Add parentheses to avoid compiler warnings. 2008-07-25 00:04:07 +00:00
Artem Pavlenko
93ccef2564 added missing font_set.hpp 2008-07-07 16:00:25 +00:00
Artem Pavlenko
6046bf49f4 +fixed init order 2008-06-29 11:40:06 +00:00
Artem Pavlenko
376cdeb453 applied aspect ratio patch from Frederik Ramm 2008-06-29 10:59:28 +00:00
Artem Pavlenko
1b47afde07 applied font fallback patch from Beau Gunderson 2008-06-29 10:58:48 +00:00
Artem Pavlenko
3f9127b5d0 reverting back to 700 2008-06-29 10:58:29 +00:00
Artem Pavlenko
c7cbfa5c82 reverting back to 700 2008-06-29 10:56:29 +00:00
Artem Pavlenko
3275cf9ce6 applied font fallbacj patch from Beau Gunderson 2008-06-29 10:40:08 +00:00
Tom Hughes
bbbfd735c4 Include ltdl.h instead of trying to forward declare libtool
types in place. Closes #95.
2008-05-22 07:08:14 +00:00
Tom Hughes
4483d59797 Revert previous fix for #89 and add a new improved fix that enhances the
value class to have a proper null type and do comparisions SQL style so
that null is neither equal nor not equal to other things.
2008-04-12 15:22:27 +00:00
Tom Hughes
a27bde741e Don't try and render text if the attribute containing the text does
not exist for the feature. Closes #89.
2008-04-11 23:11:35 +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
Artem Pavlenko
ab29b03833 reverting r681 2008-04-06 09:23:17 +00:00
Dominic Hargreaves
8d223c57e0 re-enable regex support 2008-03-29 00:58:09 +00:00
Artem Pavlenko
7bcba5f1be applied http://snecker.fedorapeople.org/mapnik/devel/gcc43-warnings.patch from Christopher Brown 2008-03-26 09:56:17 +00:00
Dominic Hargreaves
c436461ee8 Fix build with GCC 4.3 (fixes #76) 2008-03-24 14:03:05 +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
Artem Pavlenko
e1ea0a72db use range based 'parse' method
transcode strings in filter expressions (default to utf8 input)
  -- we can use map definition *.xml to define encoding
  -- and in case of Python from
    # -*- coding: utf-8 -*-
  
utf8 encoded filters are working now.
2008-02-26 11:43:49 +00:00
Artem Pavlenko
cb905b533a restored templated version 2008-02-26 08:48:47 +00:00
Tom Hughes
02962156c5 Add support for rendering to a cairo surface. 2008-02-23 00:17:53 +00:00
Artem Pavlenko
308e315432 added Unicode support based on ICU 2008-02-18 21:40:34 +00:00
Artem Pavlenko
1ea7bffd4c pass parameter by reference
store reference to wstring in text_path
2008-02-12 20:05:04 +00:00
Andreas Volz
ba5c156c45 fixed autotools build 2008-02-08 19:41:57 +00:00
Artem Pavlenko
1b03c81e84 hide implementation details 2008-02-05 13:58:47 +00:00
Artem Pavlenko
658a2a4932 corrected init order 2008-02-05 13:57:40 +00:00
Artem Pavlenko
b44762e592 allow multi/single threaded variants 2008-02-04 16:12:13 +00:00
Artem Pavlenko
fa82f6fc50 corrected sorting criteria 2008-02-04 16:10:34 +00:00
Artem Pavlenko
f4949ffca5 patch from TomH adds a global mutex to protect all access to the
proj4 library and ensure that only one thread can be inside a call to
the library at a time.
2008-02-04 11:54:07 +00:00
Artem Pavlenko
cdfaf36ee9 call reduce on fully built tree 2008-01-30 11:11:20 +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
651cdbe968 added support for saving images into Python String object
(NOTE: some methods have different signitures now- API changed)
2008-01-25 14:40:48 +00:00
Dave
5bbe90b85f Remove find_placements, build_path_follow, build_path_horizontal.
Add new find_point_placements to cover the gap left.
Change shield symbolizer to use find_point_placements.
Results are the same as before, but with much less duplicate code.
2008-01-24 01:16:14 +00:00
Dave
1d556b54fd Make line placement retry if it places >= 50% of the characters upside down. 2008-01-23 21:38:48 +00:00
Artem Pavlenko
b04e6197aa some cleanups and fixes 2008-01-23 15:24:59 +00:00
Artem Pavlenko
f802250e0f refactored image i/o , see ticket #15 for more details. 2008-01-23 11:34:59 +00:00
Dave
918bd1ef6b Improved character placement code.
Slightly changes the result of max_char_angle_delta as now character angles aren't strict against the line angles.
Example screenshots on mailing list! :)
2008-01-23 04:18:17 +00:00
Artem Pavlenko
2b60d6d425 applied patch to build on OSX Leopard and Sun's C++ compiler on Solaris from Justin Bronn 2008-01-21 20:15:07 +00:00
Artem Pavlenko
418e3fc43a added missing extent() method 2008-01-21 20:07:32 +00:00
Artem Pavlenko
96daa6e996 applied patch from gravitystorm (see ticket:64) 2008-01-21 19:59:06 +00:00
Artem Pavlenko
a61553edb8 removed redundant bounding box from label_placement 2008-01-21 16:18:46 +00:00
Dave
d3ec70aff9 Return pre-r557 rendering of line aligned labels. (Not the code, the algorithm ideas)
Spacing and no spacing line rendering are done by the same function.
Code is cleaner, performance should be equal or improved.
Text displacement is "Different", better in some cases and worse in others, I can revert it if wanted.
Old non spacing code is not yet removed as it is used by ShieldSymbolizer which I haven't investigated yet.
Individual character placement still has issues, that is my next task to fix!
2008-01-21 03:08:18 +00:00
Dave
76e18f8a4a Remove functions that don't exist from placement headers. 2008-01-16 21:42:08 +00:00
Dave
017a966ea1 Fix blending onto transparent background. Detailed on mailing list. 2008-01-14 20:43:55 +00:00
David
0dbaeafbe9 - found and fixed another wild pointer 2008-01-07 07:32:55 +00:00
David
bec8f8951f fixed pointer to temporary bug 2008-01-03 15:48:10 +00:00
Artem Pavlenko
0390f129a1 refactored transcoder stuff 2008-01-03 11:41:00 +00:00
Artem Pavlenko
52bed0b89a applied patch from Jochen (throw an exception if unknown type) 2007-12-19 16:34:36 +00:00
Artem Pavlenko
2058f966b2 applied patch from Jochen :
1. The README talks about "scons.py", but it is just called "scons".

2. In demo/c++ there is a Makefile, but the readme.txt gives a command
   line to compile. Both don't work for me. One error can at least be
   fixed by adding -I../../agg/include to the command line.

3. When compiling Mapnik an error is thrown because of a redefined type.
   This was on an Intel 64Bit machine. Fixed by "typedef char byte" to
   "typedef uint8_t byte" in include/mapnik/global.hpp. I am not sure
   whether thats the right fix, though, I just guessed. :-)

4. include/mapnik/image_data.hpp needs
   #include <mapnik/octree.hpp>
   to compile
2007-12-16 12:33:28 +00:00
Artem Pavlenko
58f4431df1 support for palette based PNGs, user 'png256' as a format parameter (see updated rundemo.py) 2007-12-10 19:59:17 +00:00
Artem Pavlenko
4586586448 added convinence overloads for 'save_to_file' and 'render_to_file'
Example:
	>>> from mapnik import *
	>>> im = Image(200,200)
	>> save_to_file('test.png',im) # Guess image type from file extension
	>> save_to_file('test.png,'jpeg',im) # Explicitly save as JPEG
2007-12-06 12:14:29 +00:00
Artem Pavlenko
d515b51973 added ImageData<uint8_t> typedef 2007-12-06 10:58:15 +00:00
Artem Pavlenko
171675dfcf 1. added external "C" around <iconv.h>
2. direct conversion from client_encoding to UCS-4{LE,BE}
2007-11-16 13:19:09 +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
Artem Pavlenko
4018c728de corrected int2net macro to use int16_t , thanks to John Leslie. 2007-10-21 09:49:45 +00:00
David
2cf8278f1d Generic python binding for mapnik::enumeration 2007-10-19 22:17:16 +00:00
David
1c5bbea587 workaround for enumeration python binding issue::
allow implicit conversion from long
2007-10-14 13:39:11 +00:00
Artem Pavlenko
f736196cb4 1. image_data.hpp - fixed mismatched new/new[] in ctor in ImageData
2. image_data.hpp - initialize image data (ImageData) 
3. unicode.hpp - added missing <iostream> when in debug -DMAPNIK_DEBUG
2007-10-11 21:18:04 +00:00
David
44a83c0eac - use AGG row_ptr_cache the portable way 2007-10-08 20:07:53 +00:00
David
515ab55a53 - fixed agg-2.5 build 2007-10-08 19:37:05 +00:00
David
3c97052c5e - more include order reversion 2007-10-08 18:10:31 +00:00
David
bc54b150ea - reversed header include order 2007-10-08 17:42:41 +00:00
Artem Pavlenko
d1a345a3d2 1.don't share FT_Library object between threads (TODO : implement freetype_engine pool)
2. merged changes with latest load_map
2007-10-05 11:27:00 +00:00
Andreas Volz
9507f1bbf2 build libxml2 loader 2007-10-03 10:41:08 +00:00
Andreas Volz
f0cca52c3b optional build with libxml2 2007-10-02 21:43:13 +00:00
David
bc11d0a5e5 - added some tests
- added missing disclaimers
2007-09-25 21:06:52 +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
13d741f400 added size method : returns (unused,used) size pair
useful for debugging
2007-09-18 13:58:01 +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
b835bac9ba user for loops instead of while, some cleanups 2007-09-11 11:26:10 +00:00
Artem Pavlenko
9b2b2a5691 clip query bbox to layer's extent 2007-09-11 11:06:20 +00:00
svn
63ca9a0b41 use non const char* on Linux 2007-09-01 09:48:01 +00:00
Artem Pavlenko
edb4150b33 restored iconv support 2007-08-29 15:21:32 +00:00
Artem Pavlenko
388eb1761f we don't need those 2007-08-29 15:19:33 +00:00
Artem Pavlenko
4e427f978c fixed bug introduced in r495 2007-08-29 14:06:35 +00:00
Andreas Volz
8b3f5ef483 only minor docs 2007-08-15 20:46:12 +00:00
Artem Pavlenko
0f07bbd945 corrected docs 2007-08-13 09:59:52 +00:00
Artem Pavlenko
e05f730122 applied changes overwritten betweed r504-505 2007-08-13 09:15:41 +00:00
Andreas Volz
59977745a0 - doxygen documentation files
- added first docs to map.hpp
2007-08-12 21:05:45 +00:00
Artem Pavlenko
b47bfa185a couple optimizations 2007-08-09 14:13:41 +00:00
Artem Pavlenko
19daab2461 provide both const/non-const iterators 2007-08-09 08:06:47 +00:00
Artem Pavlenko
80566ea1ba added accesor to styles 2007-08-07 12:02:24 +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
vspader
9fe4a94c98 Added minimum_distance property to text symbolizers. This prevents the same label from appearing within N pixels (across features).
Shield symbolizer is now a subclass of text symbolizer.
Some small improvements to text rendering.
Fixed up placement finder for horizontal placement.
Cleaned up placement finder.
2007-07-02 13:39:08 +00:00
Artem Pavlenko
f3ae318ca3 1. added 'allow_overlap' in load_map from xml
2. added overlap_ field to TextSymbolizer (ignored by renderer at the moment)
2007-06-20 21:08:23 +00:00