Commit graph

678 commits

Author SHA1 Message Date
Artem Pavlenko
d7fcefc848 1. applied text-wrap patch from Robert Coup. Thanks!
2. by default use tinyxml as a property_tree parser
3. modified load_map.cpp to allow to test new features
2006-10-27 17:29:39 +00:00
Artem Pavlenko
90a293e952 removed extra qualifier (GCC >= 4.1 reports as an error). 2006-10-21 12:17:41 +00:00
vspader
118e8f0d52 Added face_name parameter to text and shield symbolizers,
which specifies the font face to be used for rendering.
New constructor is: text_symbolizer(name, face_name, size, ...)
2006-10-19 17:11:45 +00:00
Artem Pavlenko
ac155e89ba call FT_Done_Glyph(image) in character_dimensions 2006-10-19 08:46:17 +00:00
Artem Pavlenko
ff52bdc244 ellipsoid 2006-10-18 23:02:57 +00:00
Artem Pavlenko
69bde0b206 added scale_denominator calc + great-circle distance
(needs checking with different projections)
2006-10-18 22:44:37 +00:00
Artem Pavlenko
1c8d7586b5 changed boost::progress_timer to output to std::clog (which defaults to std::cerr) 2006-10-18 11:42:56 +00:00
Artem Pavlenko
110016fe78 1. refactored proj stuff into separate files
2. added is_geographic property
3. added basic support for text_symbolizer in load_map
2006-10-17 17:26:35 +00:00
vspader
f76079f15b 1) Added line following labels. Use set_label_placement(POINT_PLACEMENT) or set_label_placement(LINE_PLACEMENT) on a text symbolizer.
2) Added placement_finder class so labels try to avoid each other.
3) Added Shield Symbolizer which is essentially a combined image/text symbolizer.
2006-10-17 14:12:53 +00:00
Artem Pavlenko
2e73fe0841 1.added features_at_point to datasource interface 2006-10-16 21:29:54 +00:00
Artem Pavlenko
2392565a4d removed commented out code 2006-10-16 16:04:57 +00:00
Artem Pavlenko
bb235fa316 1.added projection transformation support based on proj4 (new dependency!!!)
Map and Layer objects both have a new parameter 'srs', initialized to "+proj=latlong +datum=WGS84" by default. 
    
  Basic usage (Python):
    p = Projection("+proj=merc +datum=WGS84")
    point = p.forward(Coord(-2,51))
    ...        
2.reflected arithmetic operators for Envelope/Coord into Python
3.altered return policies for python objects
4.modified build system to require proj4 lib and headers
2006-10-16 13:44:52 +00:00
Artem Pavlenko
52033ad4e8 added operators +,-,*,/ 2006-10-16 13:32:45 +00:00
Artem Pavlenko
1988181bd7 added operators +,-,*,/ 2006-10-16 13:31:52 +00:00
Artem Pavlenko
d349c5f0c9 just help compiler a little bit 2006-10-09 20:48:42 +00:00
Artem Pavlenko
514f500bfb use boost::shared_ptr<datasource> 2006-10-09 10:28:48 +00:00
Artem Pavlenko
e2d645ad80 simplified coord transformation interface. 2006-10-09 09:52:15 +00:00
Artem Pavlenko
10cffb9174 added remove_all 2006-10-09 09:43:43 +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
8328424af5 1. datasource is now a property of Layer object.
2. modified python/c++ demos to reflect the above.
3. removed large 'blobby' mapnik.hpp (compilation times!!!)
2006-10-03 08:44:04 +00:00
Artem Pavlenko
88892c196b added save/load functionality based on boost::property_tree (aka ElementTree in c++) 2006-10-03 08:39:43 +00:00
Artem Pavlenko
c0fa1a6004 * create_filter moved to core lib
* modified demo/c++/rundemo.cpp to reflect the above
2006-09-17 19:45:01 +00:00
Artem Pavlenko
8a72060fad added alpha to to_string method.
rgb ( R, B, G, A)

TODO: modify CSS color parser to accept alpha channel e.g 
rgb (R,G,B,A)
#RRGGBBAA
#RGBA
2006-09-15 08:19:03 +00:00
Artem Pavlenko
2d04ce0360 This patch:
* Adds set_alpha()
* Reorders the get/set color functions to be red() green() blue() alpha() (code tidyness)
* Changes the internal color variable to be named abgr_ instead of rgba_ since that is the order the colors are stored in it.

Thanks to Dave Leaver.
2006-09-15 07:56:35 +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
93740b5dec refactored #includes to reduce compilation times
added mapnik_query skeleton
2006-09-11 09:48:27 +00:00
Artem Pavlenko
26a406706e wrap C headers with :
extern "C" 
{
 // 
}
2006-08-31 21:32:07 +00:00
Artem Pavlenko
00ef5d1c96 addded missing <string> 2006-08-21 21:25:25 +00:00
Artem Pavlenko
9ee055718c removed unused headers 2006-08-21 15:00:59 +00:00
Artem Pavlenko
72fae1daa1 1. removed dependency on boost_serialization ( we don't really need it) at this time.
2. coord and envelope operator<< to use 16 digit precision.
3. added 'inside polygon' method impl.
2006-08-20 18:49:22 +00:00
Artem Pavlenko
0bb121a747 formatting mostly 2006-07-24 20:08:32 +00:00
Artem Pavlenko
024f501903 1. exposed fill_opacity property in PolygonSymbolizer
2. added default ctors to {Point,Line,Polygon}Symbolizers
2006-05-31 21:25:21 +00:00
Artem Pavlenko
50416422e0 replaced tabs with spaces 2006-05-30 13:41:15 +00:00
Artem Pavlenko
ffe47e4816 1. return shared_ptr from point_symbolizer
2. small cleanup
2006-05-26 13:11:31 +00:00
Artem Pavlenko
53193826a8 added MAPNIK_DECL 2006-05-26 13:08:48 +00:00
Artem Pavlenko
aec33499b2 export symbols from wkb 2006-05-25 14:19:21 +00:00
Artem Pavlenko
ec92236c1f small cleanup 2006-05-24 15:17:16 +00:00
Artem Pavlenko
ba2514398a implemented to_hex_color() method that returns
#RRGGBB color representation.
2006-05-24 15:13:51 +00:00
Artem Pavlenko
b73ca350fb added const Style iterators to Map 2006-05-23 17:23:20 +00:00
Artem Pavlenko
d99f6b4455 replace tabs with spaces 2006-05-23 16:53:38 +00:00
Artem Pavlenko
d0ddc88253 1. move parameters to datasource
2. general cleanup
2006-05-23 16:52:10 +00:00
Jean-Francois Doyon
799d5d9691 - Fix a bug with missing version.
- Add support for layer title and asbtract to c++ and python
- Make WMS server use above changes, edit docs
2006-05-22 17:00:35 +00:00
Artem Pavlenko
ef5931d915 added default point_symbolizer 4x4px black square 2006-05-22 10:30:55 +00:00
Artem Pavlenko
0c745b9d3a corrected ctor 2006-05-21 19:17:15 +00:00
Artem Pavlenko
453b714580 1.added default ctor in polygon_symbolizer (grey fill - RGB (128,128,128)
2.replaced tabs
2006-05-19 16:11:59 +00:00
Artem Pavlenko
ed4195ad5a explicit black colour in default ctor 2006-05-19 16:08:42 +00:00
Artem Pavlenko
bf218a46b9 oops! added missing bits 2006-05-19 12:50:40 +00:00
Artem Pavlenko
1daa91e07f added set_name method 2006-05-19 08:59:50 +00:00
Artem Pavlenko
6c9fd45234 replaced tabs with spaces 2006-05-17 16:41:28 +00:00
Artem Pavlenko
2db18565b2 reorder #include 2006-05-05 14:29:01 +00:00
Artem Pavlenko
62019e0849 small cleanup 2006-04-22 19:37:59 +00:00
Artem Pavlenko
cdc48edfd6 1. validate image reader
2. open files in binary mode (win32)
2006-04-05 08:27:45 +00:00
Artem Pavlenko
61fd258fd1 changing licence from GPL to LGPL 2006-03-31 10:32:02 +00:00
Artem Pavlenko
bb606d04f5 added non-const getLayer 2006-03-28 15:39:38 +00:00
Artem Pavlenko
8986108775 added set_datasource method (TODO!!!)
fixed pointz in shapeindex
2006-03-28 08:29:36 +00:00
Artem Pavlenko
d35e9f047e small cleanup 2006-03-23 21:45:32 +00:00
Artem Pavlenko
fce4076ad5 refactored font engine to export symbols correctly on win32 2006-03-23 11:54:50 +00:00
Artem Pavlenko
98763057e6 added pragma to disable 4996 warning 2006-03-23 11:54:03 +00:00
Artem Pavlenko
6f1ed0029c code cleanup 2006-03-22 20:31:02 +00:00
Artem Pavlenko
9480cbade6 re-implemented value class to compile on win32 2006-03-22 19:57:48 +00:00
Artem Pavlenko
56a8187bcb added new line at the end of file 2006-03-22 15:59:15 +00:00
Artem Pavlenko
883e21fe0c added __declspec(dllexport) 2006-03-22 15:52:29 +00:00
Artem Pavlenko
33ec516bd4 added platform specific configuration file 2006-03-22 15:51:06 +00:00
Artem Pavlenko
f2ac0a97f6 removed unused files 2006-03-22 15:50:05 +00:00
Artem Pavlenko
3848515e6e removed unused files 2006-03-22 15:48:54 +00:00
Artem Pavlenko
e85db9ac69 removed unused files 2006-03-22 15:46:58 +00:00
Artem Pavlenko
2fa9d1967e added __decl(dllexport) to exported symbols\n removed unused files 2006-03-22 15:45:52 +00:00
Artem Pavlenko
e21c3b36f6 removed save and load to text archive functionality to keep x86_64 build happy 2006-03-19 21:59:16 +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
e8d68b615e removed unused text.{hpp,cpp} 2006-03-19 21:51:40 +00:00
Artem Pavlenko
89cad86d8e added anchor and displacement to text_symbolizer 2006-03-10 12:08:55 +00:00
Artem Pavlenko
ce93c69fa3 minor syntax corrections to comply with ansi c++ 2006-03-08 23:02:28 +00:00
Artem Pavlenko
0f3fcc7f34 updated text symboilizer
fixed memory leak in FT_Glyph
2006-03-01 15:16:45 +00:00
Artem Pavlenko
c3ff3084ca 1.added to_string method to Color
2.added factory methods to python Color

use factory methods
2006-02-27 21:57:08 +00:00
Artem Pavlenko
3818da6bc5 added quad_tree implementaion 2006-02-27 21:25:25 +00:00
Artem Pavlenko
9de253198b 1.python bindings updated to reflect symbolizers changes
2.added label collision detector ( TODO - proper impl!)
2006-02-25 11:03:30 +00:00
Artem Pavlenko
1728bdbc7e added:
1. start/end map/layer handlers 
2. some cleanups
2006-02-21 20:17:08 +00:00
Artem Pavlenko
bd173527a0 added font_engine impl - work in progress:) 2006-02-21 19:55:24 +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
034298f7dd make agg_renderer non-copyable 2006-02-08 10:44:46 +00:00
Artem Pavlenko
a181d78403 Of course,we can use one templated member functions
to handle all symbolizers.
2006-02-07 20:51:08 +00:00
Artem Pavlenko
6a4070a32a added raster_symbolizer 2006-02-07 16:16:54 +00:00
Artem Pavlenko
af2601eea0 1. new style/feature processor abstraction allowing plugable backends.
(to construct custom 'Output' derive from feature_style_processor (CRTP) e.g
	class MyOutput : public feature_style_processor<MyOutput>
     and implement:
	 process(***_symbolizer const&, Feature const&)
     methods
   At the moment only AGG renderer is implemented
2006-02-07 14:41:41 +00:00
Artem Pavlenko
2d4ea20560 added set_capacity method to geometry classes.
(now we can use std::vector<boost::tuple<value_type,value_type,char> > 
as an alternative vertex storage).
2006-02-05 12:31:24 +00:00
Artem Pavlenko
2a858bcd19 1.removed named_style_cache
2.styles moved to Map object
2006-02-05 09:45:51 +00:00
Artem Pavlenko
6b7d874ff3 1.corrected set_rectangle and set_rectangle_alpha to use envelope intersection for proper clipping
2. clean up render.cpp
2006-01-28 16:05:51 +00:00
Artem Pavlenko
27a880fe99 midpoint calc for line strings 2006-01-26 23:52:22 +00:00
Artem Pavlenko
b89195f9e6 added label_position method for geometry objects (todo line_string) 2006-01-26 16:43:10 +00:00
Artem Pavlenko
4ed7158908 better interface for clip_line 2006-01-26 16:41:15 +00:00
Artem Pavlenko
a6f96ea5c1 changed symbolizer interface to accept 'feature' and CoordTransform, instead of
geometry (feature centric OGC model:).
2006-01-23 22:33:37 +00:00
Artem Pavlenko
245be985e2 1.symbolizers refactored - split into hpp/cpp
(all AGG is private to libmapnik and not exposed to client code) 
2.removed unused files (more todo)
3.added line pattern symbolizer to python bindings
2006-01-23 13:24:41 +00:00
Artem Pavlenko
390b9c4655 1.added line pattern symbolizer
2.added layer envelope check in main rendering loop
2006-01-23 10:33:32 +00:00
Artem Pavlenko
a7c154f223 fixed to_string() method for filter expressions 2006-01-23 10:31:10 +00:00
Artem Pavlenko
150f9dc99a fixed to_string() method for filter expressions 2006-01-23 10:29:28 +00:00
Artem Pavlenko
0ea95e8b11 fixed pattern fill symbolizer 2006-01-23 10:26:43 +00:00
Artem Pavlenko
55ae073ba2 added alternative vertex storage impl 2006-01-23 10:25:38 +00:00
Artem Pavlenko
6a0cc48b0a added missing header for boost_1_32_0 serialization lib 2006-01-19 16:40:24 +00:00
Artem Pavlenko
119c352fe7 added alpha blending for image copying 2006-01-01 17:41:55 +00:00
Artem Pavlenko
b3330fc49b corrected return value 2006-01-01 17:40:26 +00:00
Artem Pavlenko
fa2045d998 revert back to scale calc 2005-12-23 12:45:25 +00:00
Artem Pavlenko
36e5e7238e 1. removed #include <iostream> 2005-12-23 12:34:09 +00:00
Artem Pavlenko
955ff4c4f5 1. fixed shape datasource bug - attributes were ignored for point/pointz/pointm types
2. use boost::thread for mutex/lock 
3  use boost::noncopyable
4  build agg as a shared lib for now
5. corrected panning code in map.cpp
6. improved coord_transform
2005-12-23 12:31:54 +00:00
Artem Pavlenko
81ace03173 1. use boost::noncopyable
2. use boost:🧵:mutex
2005-12-23 12:24:24 +00:00
Artem Pavlenko
5e2aa3fc60 use boost::noncopyable 2005-12-23 12:23:15 +00:00
Artem Pavlenko
30c713d639 moved vertex_vector to classes that needed it 2005-12-23 12:22:09 +00:00
Artem Pavlenko
ec9b301364 removed unused headers 2005-12-16 16:08:41 +00:00
Artem Pavlenko
6f9528c2e3 1.added serialization support
2.some class names changes
2005-12-14 17:01:09 +00:00
Artem Pavlenko
a6191fade0 1. corrected LIBS in SConsctipt files
2. use boost::shared_ptr instead of ref_ptr
2005-12-12 13:15:33 +00:00
Artem Pavlenko
2d08614042 return object in envelope() 2005-12-01 10:06:40 +00:00
Artem Pavlenko
7f4df91371 check for valid datasource in the main loop 2005-11-30 00:21:07 +00:00
Artem Pavlenko
64427961d7 added qualifier 2005-11-30 00:19:33 +00:00
Artem Pavlenko
01f9df9b43 added feature factory 2005-11-24 15:51:29 +00:00
Artem Pavlenko
d9973561ad use delete instead of destroy_ds for now 2005-10-17 19:39:41 +00:00
Artem Pavlenko
007398725f fixed rounding error 2005-09-19 22:15:43 +00:00
Artem Pavlenko
17c368af52 removed to_string() 2005-09-19 22:14:32 +00:00
Artem Pavlenko
f5dda2f207 1. more pythonic feel:)
2. added CSS color string  parser and  color factory
3. added docs dir
2005-09-08 13:20:37 +00:00
Artem Pavlenko
820b6bb23a return ref_ptr<Feature> from datasource next() method
should play better with python
2005-09-08 13:09:04 +00:00
Artem Pavlenko
e01a831850 1.removed debug printing from filter_parser
2.to_string method in Envelope
3.filter_factory - static method
4.mapnik_envelope.cpp - more bindings
TODO - fix __str__ , .def(str(self)) - doesn't compile at the moment
2005-08-31 19:43:37 +00:00
Artem Pavlenko
eb7890cfe8 added alpha() method 2005-08-31 19:36:08 +00:00
Artem Pavlenko
04f86c3dc7 unused class clean-up 2005-08-31 19:34:51 +00:00
Artem Pavlenko
48775a5cd9 1.renamed null_filter -> all_filter
2.added none_filter
3.fixed some warnings in shapeindex util
2005-07-06 20:52:06 +00:00
Artem Pavlenko
c7f9d1e568 1.polygon_symbolizer + using agg rasterrizer
2.render.cpp - exit rules loop (mastermap styles-?? not sure)
3.pre-allocate space for attributes
2005-06-24 08:39:47 +00:00
Artem Pavlenko
32c76d5a5f 1.added copyright notice to SConstruct/SConscript files
2.fixed include/libs in datasources
3.revived shapeindex utility (+ boost::program_options)
2005-06-17 12:40:51 +00:00
Artem Pavlenko
84bd684f87 revived shape support + removed unsed header from postgis.cpp 2005-06-16 20:56:31 +00:00
Artem Pavlenko
41d8341547 some useful macros 2005-06-15 22:17:12 +00:00
Artem Pavlenko
ae86b29d7f 1. added installation instructions
2. support for more types in postgis datasource
2005-06-15 20:50:02 +00:00
Artem Pavlenko
cb9059326e removed : Jamfiles,config.hpp 2005-06-14 18:43:31 +00:00
Artem Pavlenko
a8ec856a15 initial import 2005-06-14 15:06:59 +00:00