Commit graph

3098 commits

Author SHA1 Message Date
artemp
bf9c99e3d3 initial image_data_any implentation (work-in-progress) 2014-11-26 12:22:36 +01:00
artemp
83bad7a816 feature_collection_grammar: fix a mistake - #2582 2014-11-24 12:42:24 +01:00
artemp
c5ab5f68d9 feature_collection_grammar: make argument order consistent across parsing rules - #2582 2014-11-24 12:37:37 +01:00
artemp
ee9481cb38 feature_collection_grammar : allow passing start_id at parse time - #2582 2014-11-24 12:26:11 +01:00
artemp
d1e0078abf use qi::locals<std::size_t> for per parse feature id generation and remove generate_id phoenix function
(NOTE: ids start from 1)
2014-11-24 11:18:45 +01:00
artemp
333965b588 update copyright year 2014-11-20 15:25:50 +01:00
artemp
6adf62ec5a image_data : remove unused owns_data_ field 2014-11-20 15:08:07 +01:00
artemp
f7649c27b0 image_data : re-factor (ref #2491)
* factor out raw image data alloc/dealloc into separate detail::buffer
* remove shallow ctor
* remove no-op dtor from image_data
2014-11-20 14:36:03 +01:00
artemp
4f3521ac24 image_data: use std::size_t + various cleanups 2014-11-20 12:46:16 +01:00
artemp
79bbe13c0d mapnik::raster : allow passing image_data into ctor 2014-11-20 10:31:56 +01:00
Jiri Drbalek
60ea198aa3 marker line placement rewrite 2014-11-13 12:51:36 +00:00
Jiri Drbalek
849a58cd80 make vertex_cache::current_segment_angle() public 2014-11-13 12:51:36 +00:00
Jiri Drbalek
000c2713ed make marker placement methods noncopyable, movable 2014-11-13 12:51:36 +00:00
Jiri Drbalek
69fc93d87a add move constructor to vertex_cache 2014-11-13 12:51:36 +00:00
Jiri Drbalek
3013197de7 move vertex_cache and tolerance_iterator from text directory 2014-11-13 12:51:36 +00:00
Dane Springmeyer
e397345bce map.register_fonts recurse should be optional like font_engine 2014-11-07 19:05:28 -05:00
Dane Springmeyer
bff4465976 fix msvs compiler error - closes #2560 2014-11-04 17:50:43 -05:00
Dane Springmeyer
22bd30230a remove unneeded option 2014-11-04 11:41:23 -05:00
Jiri Drbalek
7a89f1ab02 fix default value condition 2014-11-03 15:35:16 +00:00
Dane Springmeyer
aa85a4ff1e default to transparent not pink if color expression fails 2014-10-27 09:23:27 -07:00
artemp
71085323a7 Merge branch 'peucker' of git://github.com/MapQuest/mapnik into MapQuest-peucker 2014-10-24 15:20:05 +01:00
artemp
456ebe006b fix [-Wparentheses] warning 2014-10-23 09:51:45 +01:00
Dane Springmeyer
aae4a20ec9 fix various -Wunused-parameter warnings 2014-10-21 20:23:17 -07:00
Dane Springmeyer
d25f0c316a silence more warnings 2014-10-21 17:44:47 -07:00
Dane Springmeyer
83588937b9 silence boost warnings 2014-10-21 16:37:27 -07:00
artemp
295f15bd51 ImageData -> image_data (remove camel-case) 2014-10-21 16:06:27 +01:00
artemp
fdd646aa5b more c++ 2014-10-21 15:52:01 +01:00
artemp
30907b3dd1 use c++ std::fill/copy instead of c-style memset/memcpy 2014-10-21 14:57:34 +01:00
artemp
107bad002d c++11 - use c++ style casts + cleanups + use std::fill 2014-10-21 14:51:27 +01:00
Dane Springmeyer
18183aed2a fix a few -Wunused-parameter warnings 2014-10-20 22:28:40 -07:00
Dane Springmeyer
02b7537d6d remove unused/supported second arg to parse_expression 2014-10-20 22:20:04 -07:00
artemp
52d0e3e641 expression grammar - add boolean_constants and floating_point_constants symbols
```python
>>> import mapnik
>>> f=mapnik.Feature(mapnik.Context(),1)
>>> expr = mapnik.Expression("rad_to_deg * pi")
>>> expr.evaluate(f)
180.0
```
2014-10-20 17:57:08 +01:00
artemp
1ed3d24193 update variant.hpp (use std::forward<T> for perfect forwarding - via @DennisOSRM) 2014-10-20 15:48:47 +01:00
Jiri Drbalek
4549c0b63c ignore scale_factor for geometry-transform scale 2014-10-18 10:31:07 +00:00
artemp
2516d6dd43 default to GLOBAL alignment 2014-10-17 21:23:00 +01:00
artemp
ea9cc4c54b remove cast 2014-10-17 21:22:36 +01:00
artemp
6eb65434c5 upgrade to new get<value_type, keys::key> 2014-10-17 20:45:15 +01:00
artemp
35a044578b re-implement assign_value to use target property type 2014-10-17 18:45:08 +01:00
artemp
bbdc136b5b fix names + update property_meta_type tuple 2014-10-17 18:44:26 +01:00
artemp
b3e3a4f6bd update get<>() to use values from symbolizer_default_values.hpp 2014-10-17 10:39:40 +01:00
artemp
9d87f7715b symbolizer properties default values 2014-10-17 10:38:54 +01:00
Dane Springmeyer
b90763469a iwyu 2014-10-15 19:03:36 -07:00
Dane Springmeyer
9684880062 c file io wrapper: no need for explicit move + reset seek after checking size in ctor 2014-10-15 11:36:25 -07:00
Dane Springmeyer
e1c1371935 Merge pull request #2514 from mapycz/perf-tolerance-iterator
exponential tolerance_iterator
2014-10-14 20:49:19 -07:00
Dane Springmeyer
8b441cbd2d fix mapnik/node-mapnik#332 2014-10-14 20:30:55 -07:00
Dane Springmeyer
7a58a9413d remove uneeded include 2014-10-14 20:23:21 -07:00
Jiri Drbalek
f95f200ac1 make tolerance_iterator exponential 2014-10-14 10:47:45 +00:00
Dane Springmeyer
09f91a24a0 Merge pull request #2523 from mapycz/halign-adjust-immutable
halign adjust with immutability of style objects in mind
2014-10-13 18:47:37 -07:00
Dane Springmeyer
ad91c56718 Avoid BOOST_MPL_LIMIT_VECTOR_SIZE redefined warning 2014-10-13 18:06:53 -07:00
Dane Springmeyer
9a78c6dfe1 improve register_datasources + drop filesystem v2 support since v3 is default in boost >= 1.46 2014-10-13 17:43:14 -07:00
Dane Springmeyer
66ce021ad5 cairo_gradient: fallback to radial if the class is misused to prevent crash on uninitalized pattern 2014-10-13 17:26:32 -07:00
Dane Springmeyer
1f1c8a322b initialize all member variables 2014-10-13 17:23:45 -07:00
Dane Springmeyer
4b689ef05d fix casting to doubles 2014-10-13 17:23:30 -07:00
artemp
f8031dec96 no need to initialise `evaluated_xxx' structures as initialisation happens at evaluation step 2014-10-13 14:11:23 +01:00
artemp
7969a1c13a use more appropriate header 2014-10-13 13:23:14 +01:00
Jiri Drbalek
1252369292 add horizontal-alignment="adjust" with immutability of style objects in
mind
2014-10-13 12:16:48 +00:00
artemp
4fe0c249a6 make hb_feature_t EqualityComparable and fix font_feature_settings operator== 2014-10-13 11:22:28 +01:00
Dane Springmeyer
6b1c4d00e5 MAPNIK_DECL font_feature_settings 2014-10-12 22:00:25 -07:00
Dane Springmeyer
885a98f9c1 improve handling of format properties - refs #2516
- changes evaluated_format_properties_ptr to unique_ptr
 - refactors group symbolizer helper to keep scope by
   having each "thunk" own its helper
 - glyph_info can now be noncopyable
 - format node children now need an owner for their
   evaluated_format_ptr so the enclosing parent layout
   now allocates and holds pointers in a deque
 - plus other noncopyable/move constructor fixes
2014-10-12 21:41:59 -07:00
Dane Springmeyer
35b4518b13 iwyu 2014-10-12 16:35:35 -07:00
Dane Springmeyer
a9f58c70b4 shuffle complexity into layout constructor
- should reduce mistakes in refactoring
  - gives top level ownership of evaluated_format_properties_ptr to a layout node (#2516)
  - not sure ^^ if this actually keeps it in scope enough for rendering?
  - moves data transformation functions off of text_symbolizer_properties
2014-10-12 16:07:26 -07:00
Dane Springmeyer
cf2df4f0cc harfbuzz shaper: return early if itemizer returns empty list 2014-10-12 15:48:15 -07:00
Dane Springmeyer
f3eba54078 noncopyable glyph_info - refs #2516 2014-10-12 14:24:57 -07:00
Dane Springmeyer
2000c1713d in place construction of glyph_positions 2014-10-12 13:54:07 -07:00
Dane Springmeyer
4e7feaf747 move glyph_positions to new cpp 2014-10-12 13:46:35 -07:00
Dane Springmeyer
94aa67b0af vertex_cache: in place construction of segments 2014-10-12 13:30:24 -07:00
Dane Springmeyer
e4c895d4c1 zero copy usage of text_line 2014-10-12 13:23:03 -07:00
Dane Springmeyer
a648538bcd add more code comments to placement_finder to help explain layouts 2014-10-12 12:18:59 -07:00
Dane Springmeyer
f1c3d0c3ce iwyu in group_symbolizer_helper.hpp 2014-10-12 12:00:00 -07:00
Dane Springmeyer
a8c8ea9ac4 reserve space for glyph_pos in renderer prepare_glyphs 2014-10-11 22:59:56 -07:00
Dane Springmeyer
3d142c2712 move evaluate_text_properties to standalone function - refs #2516 2014-10-11 22:48:00 -07:00
Dane Springmeyer
e6a66aaaba finish work to pass font_feature_settings by value - refs #2516 2014-10-11 22:39:40 -07:00
Dane Springmeyer
a61364d263 revert halign support - refs #2426 2014-10-11 20:03:56 -07:00
Dane Springmeyer
f7849cea09 make evaluated_text_properties noncopyable 2014-10-11 19:28:04 -07:00
Dane Springmeyer
477d6cc7ee zero-copy text_item insertion 2014-10-11 19:12:15 -07:00
Dane Springmeyer
b455cc9098 give glyph_info better ctor 2014-10-11 17:52:54 -07:00
Dane Springmeyer
eabdf46118 drop unwise glyph_info caching - reverts 99a46f6910 - re-opens #2334 2014-10-11 17:32:41 -07:00
Dane Springmeyer
ba285aa9fa remove unused (after 8bc7a56cda) font_face::char_height_ 2014-10-11 15:55:15 -07:00
Dane Springmeyer
b275144004 make cairo_context.add_text more like agg::text_renderer 2014-10-11 13:08:28 -07:00
Dane Springmeyer
e1eb9fa5b1 reduce pointer usage in text renderer - refs #2516 2014-10-10 18:01:24 -07:00
Dane Springmeyer
8bc7a56cda use real max glyph height
- avoids breakage on fonts lacking an `X` glyph (#2506)
      - avoids needing to create and mutate a temporary glyph (#2516)
      - lots of minor visual changes - mostly improvements notably more correct collision boxes for lines with tall glyphs
2014-10-10 15:18:11 -07:00
artemp
74e872c48b avoid storing evaluated text properties in text_symbolizer_properties (all style related strucures must be read-only)
make process(..) method const
2014-10-10 12:38:06 +01:00
Dane Springmeyer
c6ed108a72 start marking as much of the text structures as const as possible - refs #2516 2014-10-09 23:00:39 -07:00
Dane Springmeyer
2d88f736fe remove uneeded access to format tree 2014-10-09 20:51:43 -07:00
Dane Springmeyer
c26c60e48e remove set_old_style_expression 2014-10-09 20:51:43 -07:00
Dane Springmeyer
344108c621 const not viable yet on itemizer 2014-10-09 20:00:35 -07:00
Dane Springmeyer
364af033a2 stash work on trying to convert font_feature_settings to be passed by value 2014-10-09 19:23:11 -07:00
Dane Springmeyer
2e4a9cfaf2 itemizer should be const in icu_shaper 2014-10-09 18:44:28 -07:00
Dane Springmeyer
536b23bfde fix uneeded pointer indirection with glyph_info/glyph_position 2014-10-09 18:38:29 -07:00
Dane Springmeyer
1fead3396b cleanup unused clipped_ member of base_symbolizer_helper after 9835057b0f 2014-10-09 11:40:30 -07:00
Dane Springmeyer
3479fcaec5 finish templating the json geometry generator on geometry container 2014-10-09 00:48:58 -07:00
Dane Springmeyer
7bc956e9e8 fix mis-spelling of fwd declare for text_placement_info_dummy 2014-10-08 16:51:33 -07:00
Dane Springmeyer
c4857c640b clean up string handling in font_set::add_face_name 2014-10-08 16:46:48 -07:00
Dane Springmeyer
1f29ce7d3d back to using shared_ptr for holding text_placement_info 2014-10-08 16:28:07 -07:00
Kevin Kreiser
2178f1602c note to self. read coding convention guidelines before actually writing code. 2014-10-08 15:05:38 -04:00
Kevin Kreiser
96bf063b1c standardize commenting convention. i prefer lower case no space (ie laziness) but that doesnt seem to be the norm. 2014-10-08 14:09:07 -04:00
Kevin Kreiser
a5bedfbae3 fix some whitespace issues. somehow tabs were getting in there 2014-10-08 14:05:25 -04:00
Kevin Kreiser
b7d3a798cd add ramer douglas peucker to the list of simplify converters. also add tests for the simplify converters but so far only testing peucker. also add a method to the wkt factor for converting geometry container to wkt 2014-10-08 13:47:36 -04:00
Dane Springmeyer
3a7c8ff3fb make scoped_state noncopyable 2014-10-08 08:00:59 -07:00
artemp
37f6aadcbb template json::(multi_)geometry_grammar on Geometry and GeometryContainer respectfully 2014-10-08 11:01:28 +01:00