Commit graph

216 commits

Author SHA1 Message Date
Dane Springmeyer
0e701dd899 initialize context in init list 2012-02-02 08:58:20 -08:00
Dane Springmeyer
77c58e487d whitespace fixes 2012-02-01 17:37:35 -08:00
Artem Pavlenko
7601095e24 move context's typedef inside to avoid poluting global namespace 2012-01-19 17:36:27 -05:00
Artem Pavlenko
a88186fef8 no need for boost::noncopyable in derived classes 2012-01-18 09:13:29 -05:00
Dane Springmeyer
820b9a2b25 merge master with feature_impl 2012-01-17 17:47:27 -05:00
Dane Springmeyer
e1ba3f723d add issue # to code comments 2012-01-17 13:33:35 -05:00
Dane Springmeyer
6a2a847c3b remove unused shx code 2012-01-17 10:06:59 -05:00
Dane Springmeyer
b0d0d06564 finish refactor, moving to separate method off datasources to get_geometry_type and using enums all around 2012-01-17 01:09:46 -05:00
Artem Pavlenko
86ea7f2951 remove unused data members 2012-01-12 12:28:53 +00:00
Artem Pavlenko
159a69a0bb add shape_utils 2012-01-12 12:20:39 +00:00
Artem Pavlenko
0bb8adbbdc factor out common code to reduce duplication (shape_utils) 2012-01-12 12:18:50 +00:00
Artem Pavlenko
c6338f82af use boost::noncopyable 2012-01-12 10:11:01 +00:00
Artem Pavlenko
3bd41e45a4 upgrade shape.input to new feature impl 2012-01-12 10:04:08 +00:00
Dane Springmeyer
7be62e594a ensure all plugins report best guess at top level geometry_type using new descriptor attribute 2012-01-11 20:03:23 -08:00
Artem Pavlenko
faaa4f6e3f shape: check if multiple parts are interior rings or separate
polygons. Currently only test if first coordinate inside exterior
ring and assume first ring is exterior.

If this approach is not robust enough we can calculate ring orientations
instead. Shape file convention is: CW - exterior, CCW - interior.

very simple
2012-01-05 16:24:38 +00:00
Artem Pavlenko
02dce6a756 make shape_io work with geometry_container concept 2011-12-09 12:25:13 +00:00
Artem Pavlenko
b689670ffd switch back from mapnik2 to mapnik
add mapnik2 module which redirects to mapnik and issues DeprecationWarning
2011-11-23 11:33:58 +00:00
Dane Springmeyer
ce9e44b5f2 plugin code formatting based on emacs format in utils/format_source_files 2011-11-13 19:37:50 -08:00
Dane Springmeyer
c8b2ddfaba reduce the size of plugin libraries by hiding unneeded symbols 2011-11-11 15:37:10 -08:00
kunitoki
2cf56bf767 - copyright fixes in shape plugin 2011-10-23 21:09:59 +02:00
kunitoki
a7b67566b2 - modified coding style in shape plugin 2011-10-22 15:27:28 +02:00
Dane Springmeyer
22c39d91ba scons: rename all SConscript files to more friendly name of 'build' with a python extension for quick syntax detection in editors 2011-08-30 05:32:01 +00:00
Dane Springmeyer
7121f6269a add row_limit option to shapefile driver to allow limiting the number of features rendered - closes #741 2011-08-26 07:02:36 +00:00
Dane Springmeyer
3e67c1d694 scons: centralize install path info 2011-08-12 21:31:28 +00:00
Artem Pavlenko
4b09f3d750 + skip null shapes 2011-08-12 16:43:28 +00:00
Artem Pavlenko
7a00511a56 + cleanup 2011-08-12 16:43:21 +00:00
Dane Springmeyer
82ac99611e add LINKING option to control whether libmapnik is build static or shared and RUNTIME_LINK options to trigger dependency flags to compile against static libs 2011-08-11 19:14:00 +00:00
Artem Pavlenko
9a49b81318 + check if pos is valid while iterating through
shapes (don't use eof()!)
+ handle null_shapes better (TODO:testing)
2011-08-11 11:04:19 +00:00
Artem Pavlenko
5ddd7052e4 + apply try/catch around the attribute loop
+ code formatting
2011-08-11 11:04:04 +00:00
Dane Springmeyer
17854e6c4f shape: improve the error message when an invalid attribute is requested 2011-08-05 21:20:21 +00:00
Dane Springmeyer
ccfbf175a0 handle timestamps and floats in shapefile dbf reader 2011-07-12 00:59:43 +00:00
Dane Springmeyer
e84119aed9 directly link libmapnik in plugins (not just darwin) - patch from Stella L. - closes #790 2011-07-05 23:41:17 +00:00
Dane Springmeyer
e4329847d2 shape.input: re-assign feature id's once we know their correct value after reading geometry up to the dbf link - TODO - we should be able to look ahead to avoid this re-assign 2011-05-20 01:41:28 +00:00
Dane Springmeyer
978dc29568 detect top level shape geometry type and throw if multipatch since we don't support it 2011-05-19 21:48:45 +00:00
Dane Springmeyer
136a6de680 disable unused 'support' for shape type and shx 2011-05-19 21:31:25 +00:00
Dane Springmeyer
e901058eba skip null geometries for indexed shapefiles (already skip for non-indexed) to avoid invalid reads - TODO - consider not adding to index to avoid need to skip 2011-05-19 21:24:08 +00:00
Dane Springmeyer
e588b2e135 cache iterator in shape_index_featureset 2011-05-18 01:56:06 +00:00
Dane Springmeyer
49fd1f93d1 use boost::make_shared across plugins to avoid explicit new and ensure fast and exception safe allocation 2011-05-16 23:41:34 +00:00
Dane Springmeyer
c19ede5070 remove last references to boost_iostreams dependency 2011-05-10 15:57:45 +00:00
Artem Pavlenko
f811d096b5 + consistent file naming, cleaups 2011-05-10 15:03:09 +00:00
Artem Pavlenko
878bc6b6da + remove boost::iostreams includes 2011-04-07 15:15:46 +00:00
Artem Pavlenko
7c3896f3a3 + cleanups 2011-04-07 15:09:20 +00:00
Artem Pavlenko
3d0697f343 + update SConscript to reflect previous change 2011-04-07 13:45:05 +00:00
Artem Pavlenko
02fffbd89f + better naming: dbffile -> dbfile 2011-04-07 13:44:57 +00:00
Artem Pavlenko
e81761d270 + remove boost::iostreams dependency 2011-04-07 13:35:21 +00:00
Artem Pavlenko
0e0b7a578c + implement memory mapping using boost::interprocess
+ cache mapped memory regions for re-use
2011-04-06 13:02:31 +00:00
Dane Springmeyer
5a1842aad1 remove tabs 2011-04-02 03:45:50 +00:00
Dane Springmeyer
3df75cc422 shape.input: check if .dbf exists and throw up front if not rather than letting shape_io fail 2011-02-28 17:44:56 +00:00
Dane Springmeyer
616aa2ed05 avoid keeping open shape_io shared_ptr when the shapefile does not have an index 2011-02-09 23:41:41 +00:00
Dane Springmeyer
c5833a6db8 remove unmaintained autotools scripts 2011-02-04 22:22:16 +00:00
Dane Springmeyer
4b076272fe only warn about missing index file in debug mode 2011-01-31 23:43:50 +00:00
Dane Springmeyer
65e96cf2b7 more cleanup after removal of unneeded cpp file 'shapefile.cpp' 2011-01-05 02:07:12 +00:00
Dane Springmeyer
6f0de6d76d scons: remove reference to deleted cpp file 2011-01-05 01:25:31 +00:00
Dane Springmeyer
d257b4701c remove uneeded cpp file 2011-01-04 22:35:06 +00:00
Dane Springmeyer
f671ef20da scons: ensure libmapnik is built before any plugins that link to it on osx, needed for builds with -jN 2010-12-21 20:46:44 +00:00
Dane Springmeyer
a3be4f54ab avoid trying to open index for non-indexed shapefile reads for every feature query - good speedup 2010-12-10 01:25:43 +00:00
Lucio Asnaghi
9b3ef53338 - improved error reporting in shape plugin 2010-11-29 09:15:43 +00:00
Lucio Asnaghi
a5f582f77e + shape plugin logging cosmetics 2010-11-18 23:46:01 +00:00
Dane Springmeyer
826282a47f check for the existance of a shape index before trying to open it 2010-11-15 03:16:23 +00:00
Lucio Asnaghi
dfdfe15853 + avoid usage of static string where it's not needed 2010-11-14 14:49:42 +00:00
Dane Springmeyer
69ade9ab35 fix compile error when building without memory mapped shapefiles - problem since r2194 2010-11-08 20:38:17 +00:00
Artem Pavlenko
ab101401cd + simplify geometry implementation
+ removed multiple geometry typedefs
+ use geometry_type
+ revert to storing vertices in vector_vertex
  (previous implementation using std::vector was
   fragmenting heap causing performance issues with large geometries)
+ FIXME: hit_test is broken!
2010-11-03 13:19:15 +00:00
Robert Coup
1dce437120 #622 add optional late-binding of datasources 2010-10-24 06:34:18 +00:00
Dane Springmeyer
4286e9f08b shape: switch back to previous end of file method - closes #647 2010-10-14 19:47:54 +00:00
Dane Springmeyer
f7346b0e72 make sure to seek to the beginning of shapefile when querying points and using indexes - thanks tmcw for uncovering - closes #643 2010-10-06 16:16:58 +00:00
Dane Springmeyer
523b09701e Add the ability to pass custom CXXFLAGS and LDFLAGS that will be prioritized above other compiler and linker flags 2010-09-18 18:02:15 +00:00
Dane Springmeyer
1aa05e052d shape: throw an error if an attribute name is requested that does not exist and report out which attribute names are available - closes #604 2010-09-14 17:59:50 +00:00
Dane Springmeyer
73fe7fda4a use boost::iostreams::stream_offset for dbf offset and record_length_ to work around >2 GB issue with filtering features - closes #595 (TODO - look into offset issues in shape indexes - #603) 2010-09-14 16:21:25 +00:00
Dane Springmeyer
d84ac3ad5b better error message if shapefile index cannot be read 2010-09-14 15:43:38 +00:00
Dane Springmeyer
4c07bc8447 avoid compiler warning in indexed shape reader 2010-09-14 15:43:02 +00:00
Artem Pavlenko
ad03de5895 + better .index handling (TODO!) 2010-09-06 19:20:59 +00:00
Dane Springmeyer
89acd2e6e0 pass iterators as const to qi::phrase_parse allowing compile on linux g++ (rhel) 2010-09-06 18:37:02 +00:00
Artem Pavlenko
23ea9e0004 add coomment 2010-09-02 20:21:00 +00:00
Artem Pavlenko
65eba5f894 use boost::spirit to parse int and double from dbf 2010-09-02 20:20:51 +00:00
Artem Pavlenko
7776b8f4ae + make shape_io object a shape datasource member and re-use memmapped files
(todo : only implemented for indexed shape files atm)
2010-09-02 20:20:42 +00:00
Dane Springmeyer
930b2cc7b6 better handling and error reporting around ogr layer names and indexes, renamed ogr plugins index file to 'ogrindex' to avoid collision with shape plugins index (when using common shapefile between each as the indexes appear incompatible) 2010-08-20 21:20:55 +00:00
Dane Springmeyer
50147ab509 warn if no index is found for shapefiles - TODO - add an env setting to turn off warnings 2010-08-18 21:02:54 +00:00
Artem Pavlenko
d6acd74ec3 + don't create stack variable for reclen 2010-07-25 20:12:43 +00:00
Artem Pavlenko
7bef66b448 + correct null shapes processing
(no bounding box, no geometric data)
+ untabify and re-format
2010-07-25 19:55:47 +00:00
Artem Pavlenko
5fd6db7b0f + formatting .. 2010-07-25 19:55:40 +00:00
Artem Pavlenko
964f17bc31 + don't read bounding box for null shapes 2010-07-25 19:55:32 +00:00
Dane Springmeyer
267b48de49 add ability to uninstall all tracked scons targets using an 'uninstall' argument like 'scons uninstall' - closes #311 2010-07-18 20:39:05 +00:00
Dane Springmeyer
75060190c0 scons: only apply SHAPE_MEMORY_MAPPED_FILE to shapefile driver code 2010-07-14 22:40:10 +00:00
Dane Springmeyer
2a9d2e8192 place built plugin targets in input/ directory to make local registration easier 2010-07-13 23:26:05 +00:00
Artem Pavlenko
e7bfba10fe + enanble installation of mapnik2 side by side with mapnik 2010-03-17 21:03:02 +00:00
Dane Springmeyer
6e9fa579fb fix unused variable warning 2010-01-29 23:56:25 +00:00
Dane Springmeyer
8ac189ccf2 fix broken support for pointz as code assumed pointzm - closes #504 2010-01-29 01:59:50 +00:00
Dane Springmeyer
5f8d1713a8 formatting 2010-01-29 01:54:15 +00:00
Dane Springmeyer
ba187a4949 shape plugin: be more explicit about the shapefile name if the file is not found 2010-01-26 22:57:34 +00:00
Artem Pavlenko
f855ba7246 remove debug printing in shapefile driver 2010-01-20 15:26:22 +00:00
Artem Pavlenko
af2440b4e7 + fixed 'optional' measure in multipointz 2010-01-20 15:26:14 +00:00
Artem Pavlenko
bff83c6ac0 + read z and m bounds from the header 2010-01-20 15:26:06 +00:00
Artem Pavlenko
239c4045d2 + implement missing support for :
multipoint
  multipointm
  multipointz
2010-01-20 15:25:58 +00:00
Artem Pavlenko
4732ace54b + ident fix 2010-01-20 15:25:50 +00:00
Artem Pavlenko
47dc1e197b + merge mapnik2 to trunk 2009-12-16 20:02:06 +00:00
Dane Springmeyer
b104253d9c Add ability to link to custom icu lib name, and remove the unneeded linking to icudata on osx, while offering compiler flags required for compiling against libicucore provided by Apple 2009-11-24 20:32:41 +00:00
Dane Springmeyer
df7bad25f9 append the SHAPE_MEMORY_MAPPED_FILE compiler flag to CXXFLAGS rather than overwriting existing flags (which happens when using the keyword arg, ugh), closes #435 and #436 and fixes up original commit added in r1217 2009-10-14 23:31:18 +00:00
Dane Springmeyer
46dc2d1f99 formatting 2009-10-14 23:01:48 +00:00
Dane Springmeyer
770d5a727d shape plugin: only trim the '.shp' extension (restores behavior added in r1046 and later changed in r1170) - closes #413 2009-08-27 05:41:02 +00:00
Artem Pavlenko
867799a88c + don't pass std::ios::modes to memory_mapped_file 2009-07-08 23:54:45 +00:00