artemp
9e95d88acd
+ make typedefs public
2012-08-03 15:39:20 +01:00
artemp
5f26d82ca2
+ correct typedef logic (avoid redefining types)
2012-08-03 15:38:02 +01:00
artemp
8c98d8a199
+ pre-multiply rendering buffer after applying background color and/or pattern
2012-08-03 15:37:05 +01:00
artemp
5414912160
+ prevent division by zero in color-burn mode
...
(FIXME: re-implement using latest(corrected) math from
http://www.w3.org/TR/SVGCompositing/ )
+ re-implemented grain-extract mode
2012-08-03 15:34:21 +01:00
Dane Springmeyer
8ea21d866d
move more code to marker_helpers.hpp to set up for grid impl of new markers code - refs #1282
2012-08-02 22:52:21 -07:00
Dane Springmeyer
c1d124f6d9
Account for offset value to avoid severe clipping with large offsets - refs #1282
2012-08-02 21:00:52 -07:00
Dane Springmeyer
e62739d146
fix render_marker for grid renderer and other minor syncing - refs #1309
2012-08-02 13:10:05 -07:00
Dane Springmeyer
693cc88142
sync grid renderer with agg for point_symbolizer - refs #1309
2012-08-02 11:13:44 -07:00
Dane Springmeyer
c2c006f9c2
support setting opacity on bitmaps in render_marker - refs #1364
2012-08-02 10:52:09 -07:00
Dane Springmeyer
56e11423ef
inflate clipping extent for line patterns - refs #1282
2012-08-02 07:26:55 -07:00
Dane Springmeyer
a22b31b0cc
switch out new test image since there is no visual difference to the old one
2012-08-01 16:43:47 -07:00
Dane Springmeyer
7211436313
avoid clipping artifacts with line_symbolizer by using stroke sensitive clipping extent - refs #1282 , #1185 , #1215
2012-08-01 16:43:00 -07:00
Dane Springmeyer
092a1bf625
impl debug box drawing in geo extents
2012-08-01 16:40:48 -07:00
Dane Springmeyer
6f15731c37
use std::fixed when outputting bbox's to string
2012-08-01 16:40:06 -07:00
Dane Springmeyer
2351877cad
Merge branch 'master' of github.com:mapnik/mapnik
2012-08-01 11:08:04 -07:00
artemp
8ff71a24bd
+ fixed naming (as per SVG)
2012-08-01 17:29:22 +01:00
artemp
3db39f2b78
+ revert using clip_poly_line to avoid rendering artifacts
...
(TODO: consider modifying agg::conv_clip_polyline)
2012-08-01 17:06:35 +01:00
artemp
6c173cd9d4
+ cleanup
2012-08-01 16:30:11 +01:00
Dane Springmeyer
e90ccb7a3a
Merge branch 'master' of github.com:mapnik/mapnik
2012-08-01 08:00:55 -07:00
artemp
5541ea0271
+ layer : minimum-extent and buffer-size
...
+ agg::process_xxx : remove ad-hoc query_extent modifiers
+ ctrans : simplify vertex skipping
2012-08-01 15:44:36 +01:00
artemp
2dcf940853
Merge remote-tracking branch 'origin/master'
2012-08-01 14:00:36 +01:00
artemp
fc6a22c014
+ c++ style
2012-08-01 11:07:45 +01:00
Dane Springmeyer
295c661af2
start setting up to sync markers_symbolizer between agg and grid renderer
2012-07-31 19:19:45 -07:00
Dane Springmeyer
a9f99848c2
expose boost::optional<mapnik::stroke> for markers_symbolizer (which works as oopposed to boost::optional<double> and boost::optional<float> which are broken
2012-07-31 18:40:53 -07:00
Dane Springmeyer
f60f40c939
Merge pull request #1157 from mapnik/stroke-as-reference
...
make stroke property on line_symbolizer a reference when accessed from python (not a copy)
2012-07-31 18:20:55 -07:00
Dane Springmeyer
16084ff335
support both interior placement and point for markers - helps prepare for #952
2012-07-31 18:13:50 -07:00
Dane Springmeyer
3821afd74d
inherit default placement types from class instance
2012-07-31 18:06:52 -07:00
Dane Springmeyer
b7aafe51bc
update markers line placement tests
2012-07-31 17:53:20 -07:00
Hermann Kraus
cdbba2eb38
Remove unnecessary includes.
2012-08-01 02:50:53 +02:00
Dane Springmeyer
9d9c525de0
revert 1dfde78
and properly avoid clipping for point type geometries in markers_symbolizer while moving markers_placement to cpp file to avoid overhead of declaring all possible permutations of vertex convertors - closes #1341
2012-07-31 17:27:52 -07:00
Dane Springmeyer
64b990ef6c
viewer ignores
2012-07-31 17:00:24 -07:00
Dane Springmeyer
48c391da0d
reduce copying of svg attributes via @lightmare - refs #1360
2012-07-31 16:56:22 -07:00
Dane Springmeyer
cdb50f86c7
Merge pull request #1361 from mapnik/marker-ellipse-fix
...
Allow proper setting of ellipse dimensions using marker-width and marker-height - closes #1348
2012-07-31 16:49:00 -07:00
Dane Springmeyer
3867a75adf
comment crashing test
2012-07-31 16:42:07 -07:00
Dane Springmeyer
c3c2902b92
move ellipse contruction code to marker_helpers
2012-07-31 16:40:30 -07:00
Hermann Kraus
f3326115ac
Add debug symbolizer.
2012-08-01 01:16:48 +02:00
Dane Springmeyer
4d2eb73e3b
add tests for complex marker rendering functionality
2012-07-31 16:04:42 -07:00
Dane Springmeyer
6c984b4f13
add testcase for #1365
2012-07-31 16:03:51 -07:00
Dane Springmeyer
d5a6564fe2
Merge branch 'master' of github.com:mapnik/mapnik into marker-ellipse-fix
2012-07-31 13:46:35 -07:00
Dane Springmeyer
cb246a436f
update the grid rendering tests with new expected results (should now be passing)
2012-07-31 13:16:41 -07:00
Dane Springmeyer
967589442c
serialize transform for points and sheild
2012-07-31 11:23:53 -07:00
Dane Springmeyer
e95886f327
catch exceptions upon startup
2012-07-31 10:45:38 -07:00
Rich Wareham
f28df5d3af
python plugin: add author to AUTHORS.md file
2012-07-31 17:24:33 +01:00
Rich Wareham
16ffdf1fb5
python plugin: remove useless Makefile
2012-07-31 17:07:11 +01:00
Rich Wareham
156a7590f4
python: a new plugin to use arbitrary Python as a data source
...
This plugin allows you to write data sources in the Python programming language.
This is useful if you want to rapidly prototype a plugin, perform some custom
manipulation on data or if you want to bind mapnik to a datasource which is most
conveniently accessed through Python.
The plugin may be used from the existing mapnik Python bindings or it can embed
the Python interpreter directly allowing it to be used from C++, XML or even
JavaScript.
Mapnik already has excellent Python bindings but they only directly support
calling *into* mapnik *from* Python. This forces mapnik and its input plugins to
be the lowest layer of the stack. The role of this plugin is to allow mapnik to
call *into* Python itself. This allows mapnik to sit as rendering middleware
between a custom Python frontend and a custom Python datasource. This increases
the utility of mapnik as a component in a larger system.
There already exists MemoryDatasource which can be used to dynamically create
geometry in Python. It suffers from the problem that it does not allow
generating only the geometry which is seen by a particular query. Similarly the
entire geometry must exist in memory before rendering can progress. By using a
custom iterator object or by using generator expressions this plugin allows
geometry to be created on demand and to be destroyed after use. This can have a
great impact on memory efficiency. Since geometry is generated on-demand as
rendering progresses there can be arbitrarily complex 'cleverness' optimising
the geometry generated for a particular query. Obvious examples of this would
be generating only geometry within the query bounding box and generating
geometry with an appropriate level of detail for the output resolution.
2012-07-31 17:05:27 +01:00
artemp
d7d833dd13
+ cleanup/small fixes
2012-07-31 13:31:22 +01:00
artemp
c7af665cc7
+ process SEG_CLOSE
2012-07-31 10:59:09 +01:00
artemp
76569cccb8
+ select clipper based on geometry type
...
+ process SEG_CLOSE command
2012-07-31 10:57:42 +01:00
artemp
a3b7d07da0
+ select clipper based on geometry type
2012-07-31 10:56:13 +01:00
Dane Springmeyer
39a1477eb2
allow marker-width and marker-height to apply directly to ellipse rx/ry - maintaining ability to precisely control ellipse dimensions, combine with transforms, and avoid scaling line-widths - refs #1348 and #1347
2012-07-30 23:20:20 -07:00