Geo-Shapelib-0.06
所属分类:图形图象
开发工具:Visual C++
文件大小:228KB
下载次数:85
上传日期:2004-09-16 11:23:45
上 传 者:
杨某
说明: 有关Shapefile的C语言函数库和源代码
(Shapefile the C language library and source code)
文件列表:
Geo-Shapelib-0.06 (0, 2003-12-06)
Geo-Shapelib-0.06\Changes (619, 2003-12-02)
Geo-Shapelib-0.06\Copying (18009, 2003-12-02)
Geo-Shapelib-0.06\example (0, 2003-12-06)
Geo-Shapelib-0.06\example\masspntz.dbf (7401, 2003-12-02)
Geo-Shapelib-0.06\example\masspntz.shp (29440, 2003-12-02)
Geo-Shapelib-0.06\example\masspntz.shx (6620, 2003-12-02)
Geo-Shapelib-0.06\Makefile.PL (796, 2003-12-02)
Geo-Shapelib-0.06\MANIFEST (1321, 2003-12-02)
Geo-Shapelib-0.06\shapelib (0, 2003-12-05)
Geo-Shapelib-0.06\Shapelib.pm (16299, 2003-12-02)
Geo-Shapelib-0.06\Shapelib.xs (11672, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib (0, 2003-12-05)
Geo-Shapelib-0.06\shapelib\contrib\dbfcat.c (4325, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\dbfinfo.c (2777, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\doc (0, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\doc\shpproj.txt (2388, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\Makefile (1571, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\makefile.vc (876, 2003-12-04)
Geo-Shapelib-0.06\shapelib\contrib\my_nan.h (1518, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\ShapeFileII.pas (11048, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpcat.c (3496, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpcentrd.c (4589, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpdata.c (4241, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpdxf.c (9419, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpfix.c (3624, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpgeo.c (50144, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpgeo.h (5277, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpinfo.c (3777, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpproj.c (7511, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\shpwkb.c (3997, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\tests (0, 2003-12-02)
Geo-Shapelib-0.06\shapelib\contrib\tests\shpproj.sh (754, 2003-12-02)
Geo-Shapelib-0.06\shapelib\dbfadd.c (4402, 2003-12-02)
Geo-Shapelib-0.06\shapelib\dbfcreate.c (4118, 2003-12-02)
Geo-Shapelib-0.06\shapelib\dbfdump.c (9787, 2003-12-02)
Geo-Shapelib-0.06\shapelib\dbfopen.c (52033, 2003-12-04)
Geo-Shapelib-0.06\shapelib\dbf_api.html (14941, 2003-12-02)
Geo-Shapelib-0.06\shapelib\libtool (115342, 2003-12-02)
... ...
Perl Module Geo::Shapelib - 0.06
Copyright (c) 2000- Ari Jolma. All rights reserved.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself. That is, using
either
a) the GNU General Public License as published by the Free
Software Foundation; or
b) the "Artistic License".
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See either
the GNU General Public License or the Artistic License for more details.
You should have received a copy of the Artistic License with this
Kit, in the file named "Artistic". If not, get it from
http://www.perl.com/language/misc/Artistic.html.
You should also have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
ACKNOWLEDGEMENTS
The example shapefile set is taken from
http://gdal.velocet.ca/projects/shapelib/eg_data/ the Shapelib
examples.
INSTALLATION
To install, unzip and untar the archive. In the directory created type
perl Makefile.pl
make
make test
make install
Geo::Shapelib.pm requires Frank Warmerdam's Shapefile C Library. It
(version 1.2.10) is included into this distribution and it is used by
default. Edit the Makefile.PL if you already have the library.
Shapelib is available from www.maptools.org.
Documentation is in the module file and will be added onto
perllocal.pod as usual.
DESCRIPTION
Geo::Shapelib.pm is a Perl extension for reading and writing
shapefiles as defined by ESRI(r) using Frank Warmerdam's Shapefile C
Library
Mails from Leif Pedersen:
Wed, 12 Feb 2003 16:05:38 -0600 (CST)
Hi. I work for Meridian Environmental Technology Inc. We have found your
Perl module for Shapelib very useful at our company, and recently we have
improved on it. I would like to offer our changes to be included in your
next release, if you are interested. I believe we have enough to justify
another release.
My primary objective was to addethe ability to read one shape at a time
out of the shape file. Many of our shape files are large enough to make
the machine swap. Some would require several GB of memory to load as a
single Perl structure. We also added a couple of options to make the
structures easier to deal with. The most useful is the XS wrapper will
optionally store the verticies as arrays in the appropriate parts. This
is much easier if the script needs to deal with parts separately.
While I was at it, I fixed a few bugs. Most of them are minor:
- There was a memory leak in Shape.xs. newRV_inc was used to create
references in the data structure that was returned. This left the
reference count off by one, preventing the memory from being freed. This
was fixed by substituting newRV_noinc.
- Some data returned by shapelib as doubles were being stored with
newSViv(), truncating them to ints. Vertices were done correctly, so this
was minor.
- svREFCNT_dec() should be used in place of free() for Perl structures.
This ensures both that data is not freed until its ref count is zero, and
it ensures that all data pointed to by these structures is freed. I've
not finished this fix, but it is minor since it only happens when memory
allocations fail, which Perl does not always handle gracefully anyway.
I'm not quite done, but I would be happy to send you what I have so far.
I think I've maintained back compatibility. I have not done any work on
creating a shape file one shape at a time.
8<---
Thu, 13 Feb 2003 12:56:16 -0600 (CST)
Cool. There's still a couple minor things left, marked with XXX. A user
who is upgrading "shouldn't" have anything break, but I've not thoroughly
checked that the output data structure in the default format is the same
as it was before. I've only changed Shape.pm and Shape.xs and I did not
touch changelog.
8<---
Thu, 13 Feb 2003 17:05:06 -0600 (CST)
I've fixed one of the XXXs.
近期下载者:
相关文件:
收藏者: