Commit graph

2997 commits

Author SHA1 Message Date
Dane Springmeyer
24a9816913 test tiff photometric setting 2014-12-08 17:16:56 -05:00
Dane Springmeyer
f121d805a9 no need for TIFFRGBAImageOK 2014-12-08 17:12:44 -05:00
Dane Springmeyer
6ca1cd6c74 avoid crashing on images with alpha 2014-12-08 16:43:32 -05:00
Dane Springmeyer
cb3771fbe5 fix reading of tiled tiff tile dimensions for gray32f 2014-12-08 15:23:06 -05:00
Dane Springmeyer
bc3f59af12 new c++ tiff tests - refs #2491 2014-12-08 14:52:52 -05:00
artemp
7fcc4a0846 use TIFFReadTile (or TIFFReadEncodedTile) instead of TIFFReadRGBATile to have consistent orientation
(FIXME: python tests failures)
2014-12-08 18:55:40 +01:00
artemp
912771b8fd generic read_tiled<ImageData> initial implementation + read PHOTOMETRIC_RGB using high-level RGBA expanding interface 2014-12-08 15:51:00 +01:00
Dane Springmeyer
96baff431f use c++ style casts im tiff_reader 2014-12-05 13:59:20 -05:00
artemp
ce605e3982 use RAII for resource management 2014-12-05 18:01:45 +01:00
artemp
902858e55f tiff_reader: initial support for reading gray8/gray16/gray32f/rgba8/rgba16/rgba32f data
Note: current code only works with image data organized in strips. Tile-orientated reading needs implementing
2014-12-05 17:35:26 +01:00
Dane Springmeyer
d6e9126132 fix linking of scale_image_agg - refs #2587 2014-12-05 09:43:57 -05:00
Blake Thompson
bf5c532269 Series of changes for the tiff encoder:
* Added configuration options for the TIFF encoder. The options are:
   - compression: adobe_deflate(default), deflate, lzw, none
   - zlevel: 0-9
   - scanline: 1,0 (Forces scanline encoding)
 * Fixed bug in encoder with scanline where memory was being modified
 * by TIFFWriteScanline. A buffer is now created for each row to prevent
 * modification of the underlying image_data.
2014-12-04 17:11:33 -05:00
artemp
38da080f82 make concrete image_data type names more expressive and explicit about color channels/depth:
image_data_32 -> image_data_rgba8
image_data_8  -> image_data_gray8
image_data_16 -> image_data_gray16
image_data_float32  -> image_data_gray32f

NOTE: currently image_data_gray16::pixel_type = std::int16_t (signed 16 bit int) to match GDAL
should we support unsigned types?
2014-12-04 11:02:42 +01:00
artemp
3b3e255f5e add comment 2014-12-04 10:31:56 +01:00
Dane Springmeyer
f82d57f497 work in progress: start enhancing tiff reader to handle bits per sample 2014-12-03 18:37:27 -05:00
Dane Springmeyer
954d0db46c Merge branch 'master' of github.com:mapnik/mapnik into image_data_any 2014-12-03 13:53:14 -05:00
artemp
de7a268333 read single band as int16 then agg_scale and colorize in gray16 color space, output rgb8 (aka image_data_32)
NOTE: proof-of-concept needed re-factoring/duplicate code removal
2014-12-03 18:19:44 +01:00
artemp
802428712e initial image_data_any read(...) implementation - always read into image_data_32 2014-12-03 10:56:19 +01:00
artemp
1df9d89a70 add to image_reader and implement empty (placeholder)
```image_data_any read(unsigned x, unsigned y, unsigned width, unsigned height) final```
in png/jpeg/webp/tiff readers
2014-12-03 10:44:56 +01:00
Dane Springmeyer
1ff4125e92 fix visibility of mapnik::composite function to python bindings - refs #2587 2014-12-03 00:43:04 -05:00
Dane Springmeyer
4d39d2aac1 iwyu 2014-12-02 14:40:03 -05:00
Dane Springmeyer
946434002f handle/throw on invalid encoding for ucnv_open 2014-12-02 14:21:36 -05:00
artemp
19e3ce9035 gdal : experimenting with fetching gray scale single band as image_data_float32 2014-12-02 15:56:40 +01:00
artemp
6fec43bf9e gdal - read single band as image_data_float32
(scaling/compositing FIXME)
2014-11-28 12:51:23 +01:00
artemp
bf9c99e3d3 initial image_data_any implentation (work-in-progress) 2014-11-26 12:22:36 +01:00
artemp
333965b588 update copyright year 2014-11-20 15:25:50 +01:00
artemp
5e2a53bac9 c++ mapnik style 2014-11-20 14:35:50 +01:00
artemp
4f3521ac24 image_data: use std::size_t + various cleanups 2014-11-20 12:46:16 +01:00
Jiri Drbalek
cb46131bc5 move text-specific inverted y axis logic from vertex_cache to placement_finder 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
437d486bbd fix building with PLUGIN_LINKING=static 2014-11-11 14:42:53 -08:00
Dane Springmeyer
3cbde2dc54 map.remove_all should clear other containers 2014-11-07 19:50:18 -05:00
Dane Springmeyer
183f182ef7 remove duplicate check for .woff font type 2014-11-07 19:04:50 -05:00
Dane Springmeyer
22bd30230a remove unneeded option 2014-11-04 11:41:23 -05:00
Dane Springmeyer
d6b74443a7 use non static ref to global memory font cache 2014-11-04 11:41:23 -05:00
Dane Springmeyer
808e820164 smarter type handling for Map parameters 2014-10-27 09:24:33 -07:00
Jordan Hollinger
d524738ad9 Remove point symbolizer support from group symbolizer. 2014-10-27 09:43:42 -04:00
Jordan Hollinger
ee692eea73 Merge branch 'master' of github.com:mapnik/mapnik into group-markers
Conflicts:
	include/mapnik/grid/grid_marker_helpers.hpp
	include/mapnik/marker_helpers.hpp
	include/mapnik/renderer_common/process_group_symbolizer.hpp
	src/cairo/process_markers_symbolizer.cpp
	src/renderer_common/process_group_symbolizer.cpp
	tests/visual_tests/images/group-symbolizer-1-512-512-1.0-agg-reference.png
	tests/visual_tests/images/group-symbolizer-1-512-512-1.0-cairo-reference.png
	tests/visual_tests/images/group-symbolizer-1-512-512-2.0-agg-reference.png
	tests/visual_tests/images/group-symbolizer-1-512-512-2.0-cairo-reference.png
2014-10-27 09:29:45 -04:00
Jordan Hollinger
16b1b5a77c Support markers in group symbolizer. 2014-10-27 07:46:44 -04:00
Jordan Hollinger
1b15e53b63 Refactor markers dispatchers to use a common base class to share code. 2014-10-27 07:46:43 -04:00
Dane Springmeyer
ecb529cba2 handle boost::spirit::qi::expectation_failure 2014-10-24 21:36:19 -07:00
Dane Springmeyer
a1314935af fix initialization order in proj_transform 2014-10-22 15:34:17 -07:00
Dane Springmeyer
ca3078938c simplify and install mapnik wkt and json libs 2014-10-22 00:09:22 -07:00
Dane Springmeyer
46a41f3ae1 initialize proj_transform::is_source_equal_dest_ 2014-10-22 00:08:48 -07: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
7acaa3068a silence warning in font_engine_freetype 2014-10-21 16:54:46 -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
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
6eb65434c5 upgrade to new get<value_type, keys::key> 2014-10-17 20:45:15 +01:00
artemp
bbdc136b5b fix names + update property_meta_type tuple 2014-10-17 18:44:26 +01:00
Dane Springmeyer
dac7170616 break out topojson parsing grammar 2014-10-15 18:59:39 -07:00
artemp
0aac586f7c use enclosing namespaces in core lib 2014-10-15 15:14:21 +01:00
Dane Springmeyer
52e9531179 always return a value from evaluate_displacement 2014-10-14 21:35:20 -07: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
9a78c6dfe1 improve register_datasources + drop filesystem v2 support since v3 is default in boost >= 1.46 2014-10-13 17:43:14 -07:00
artemp
1e3b82a245 add new line 2014-10-13 14:23:06 +01:00
Jiri Drbalek
1252369292 add horizontal-alignment="adjust" with immutability of style objects in
mind
2014-10-13 12:16:48 +00:00
Dane Springmeyer
9dae68ebbf add builds scripts for json/wkt grammars 2014-10-13 01:07:11 -07:00
Dane Springmeyer
44bc5b59d6 break out wkt/json grammars into separate libraries 2014-10-13 01:06:36 -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
38b944aef7 break apart expression+transform grammars - refs #2526 2014-10-12 16:36:33 -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
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
39ff0945ef in place construction of pixel_positions 2014-10-12 13:38:18 -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
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
477d6cc7ee zero-copy text_item insertion 2014-10-11 19:12:15 -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
d4f0d51a91 cairo text rendering: avoid double call of set_character_sizes for text and halo 2014-10-11 16:59:22 -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
51620e2b4d cairo: avoid creating evaluated_format_properties_ptr on stack 2014-10-11 11:37:16 -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
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
536b23bfde fix uneeded pointer indirection with glyph_info/glyph_position 2014-10-09 18:38:29 -07:00
Dane Springmeyer
aed5243302 avoid creating evaluated_format_properties on the stack 2014-10-09 18:24:39 -07:00
Dane Springmeyer
38567d8213 font_set: explicitly initialize face_names_ member 2014-10-09 17:36:51 -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
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
Dane Springmeyer
a24b29624a remove unused include 2014-10-08 16:27:38 -07:00
Dane Springmeyer
65438f17aa further tests of path expressions for shields 2014-10-08 08:00:59 -07:00
Dane Springmeyer
41009bfeb3 fix font caching logic 2014-10-07 00:21:52 -07:00
Dane Springmeyer
c2fe4a14be drop useless template usage for has_key 2014-10-06 23:21:13 -07:00
Dane Springmeyer
934f0dec1d warn if duplicate attribute - closes #2508 2014-10-06 23:20:43 -07:00