history.txt

来自「支持各种栅格图像和矢量图像读取的库」· 文本 代码 · 共 738 行 · 第 1/2 页

TXT
738
字号
MITAB Library - Revision History================================This is a human-readable revision history which will attempt to documentrequired changes for users to migrate from one version of MITAB to thenext.  Developers are strongly encouraged to document their changes andtheir impacts on the users here.  (Please add the most recent changes to the top of the list.)For a complete change history, please see the CVS log comments.CHANGES - Current Version:--------------------------Version 1.5.1 (2006-07-25)--------------------------- Fixed initialization of MBR of TABCollection members (bug 1520)- Added mapping for datum name "North_American_Datum_1927". - Fixed problem with uninitialized affine parameters written to .MAP header,   resulting in files not readable in MapInfo, introduced by bug 1155 in   MITAB 1.5.0 (bug 1254, 1319)- Fixed problem writing PLINE MULTIPLE to TAB format introduced in  MITAB 1.5.0 (bug 1466).- tab2tab: Set dataset bounds only after setting spatialref to prevent  default coordsys bounds from taking precedence when bounds are   available in source dataset (bug 1511)- Coordsys false easting and northing are in the units of the coordsys, not  necessarily meters.  Adjusted mitab_coordsys.cpp to reflect this.   http://bugzilla.remotesensing.org/show_bug.cgi?id=1113- Similar problem in mitab_spatialref.cpp for TAB files also fixed.   http://bugzilla.remotesensing.org/show_bug.cgi?id=1113Version 1.5.0 (2006-02-16)--------------------------- Updated contrib/mitab_dyn.pas with new C API functions. Note that other  definition files for VB and .NET have *not* been updated for this release.- Fixed crash when attempting to write TABPolyline object with an invalid  geometry (GDAL bug 1059)- cast strstr() results as per email from Charles Savage for VC8.- Fixed build problem (link with -ldl not available) on MacOSX (bug 1167)- Fixed problem with white space parsing in mitab_miffile.cpp (bug GDAL:954)- layers with just regions can't be set as type wkbPolygon because they may  have multipolygons (bug GDAL:958)    http://bugzilla.remotesensing.org/show_bug.cgi?id=958- Fixed support for multi character delimiters in .mid file (bug 1266)- Fixed reading Mills.mif (TABPoint::ReadGeometryFromMIFFFile()), the check  for SYMBOL didn't check if pszLine was non-NULL.- Fixed memory leak of m_pszDelimiter in mitab_middatafile.cpp.- Fixed OGR problems with setting bounds on MIF files, and wrong bounds  on tab files (bug 1198)Version 1.5.0-beta1 (2005-10-07)--------------------------------- Added read/write support for MapInfo Collections in MIF and TAB (bug 1126)  (Thanks to funding from Comcast (Andy Canfield) and an initial patch and   analysis of collections by Jim Hope of Innogistic Software)- New C API methods to access collection members (bug 1126):     - mitab_c_get_collection_region_ref()     - mitab_c_get_collection_polyline_ref()     - mitab_c_get_collection_multipoint_ref()     - mitab_c_set_collection_region()     - mitab_c_set_collection_polyline()     - mitab_c_set_collection_multipoint()- Support for writing affine projection params in .MAP header (AJD, bug 1155)- New C API methods to get/set various projection parameters (AJD, bug 1155):     - mitab_c_get_projection_info()     - mitab_c_set_projection_info()     - mitab_c_get_datum_info()     - mitab_c_set_datum_info()     - mitab_c_get_affine_params()     - mitab_c_set_affine_params()- All datum definitions in mitab_spatialref.cpp now have the correct   names (Anthony D, bug 1155)- Added bounds entries for Finnish KKJ and Swedish projections (AJD, bug 1155)- mitab_ogr_datasource.cpp: avoid leak of CPLReadDirectory() result.- gcc4 related warnings in mitab_coordsys.cpp and mitab_utils.cpp avoided.- Change the way \n and \ are handled internally. Now they are stored   unescaped in memory and escaped only when writing MIF files. (bug 1107)- Improved handling of Danish modified TM proj#21-24 (HSS, bugs 976,1010)- Upgraded CPL and OGR source from latest GDAL CVS (as of 2005-05-12)- Produce a fatal error if creating an index of a size that exceeds the  .IND file format limitation (tree depth > 255) (OGR Bug 839)- Added mitab_c_set_symbol_angle() and mitab_c_get_symbol_angle() for  point symbols of type TABFC_FontPoint (bug 1002)- Added rule in cpl/GNUmakefile to copy cpl_config.h from cpl_config.h.in. (FW)- Changed to use OGRLayers spatial filtering support.  (FW)- A few fixes to support for modified TM projections #21-24 (AJD, bug 1155)- Fixed missing initialization of default .MID file delimiter ("\t")   (Anthony D - bugs 1155 and 37)Version 1.4.0 (2005-04-01)-------------------------- - Added bounds entry to match datum 1011 based on MapInfo's "Svenska    rikssystemet, 2,5 gon väst (RT 90 7 parametrar)" (bug 997) - Added initial version of .NET bindings, contributed by Graham Sims in   mitab/contrib/dotnet directory (bug 992) - Added support for Datum Id field in .MAP header, this is new in MapInfo   7.8+ and solves problem with multiple datums with same params (bug 910)  - Fixed internal integer coordinates rounding error (bug 894) - Fixed potential memory leaks in error conditions in mitab_feature.cpp   and mitab_rawbinblock.cpp (bug 881) - Support pen width bigger than 7. Note that any pen bigger than 10 are    considered as point, not pixel. (bug 683) - Updated list of datum parameters from data made available by Bill Wemple   from MapInfo on directionsmag.com: 7 new datum defns and 1 fixed.   List of ellipsoids also updated (Bug 608, patch by Uffe K.) - Do not output a BG color in style string for transparent brushes (bug 693) - mitab_tabfile.cpp: Several fixes for TABFile::Open() when loading the   tabfile fails. (provided by Stephen Cheesman).  - mitab_mapfile.cpp: Fixed error return value in LoadNextMatchingObjectBlock()   per http://bugzilla.remotesensing.org/show_bug.cgi?id=615. NFW - mitab_ogr_datasource.cpp: Modified CreateLayer() to use    -1000,-1000,1000,1000 bounds for GEOGCS much like in mitab_bounds.cpp.    This ensures that geographic files in the range 0-360 works as well as   -180 to 180.Version 1.3.0 (2004-07-07)-------------------------- - Use tab as default delimiter (if none is explicitly specified) when    reading .MIF/.MID files (Anthony D, bug 37)  We still generate new files    using comma as delimiter. - C API: Added mitab_c_get_feature_count() and mitab_c_get_field_as_double(),   added ability to create a feature of type TABFC_NoGeom (Anthony D) - Added support for reading affine coordsys parameters in extended    .map header block of v500+  (Anthony D, bug 41) - Added mitab_c_getlibversion() to C API. (Uffe K. - bug 21) - Write 3D geometries to MIF/tab as if they were 2D. NFW - Flush out .mif header on Close() if no features written. NFW - Fixed previous flushing logic to only do so for writable files. NFW - Removed obsolete mif2mif.cpp mif2tab.cpp mif2tabbatch.cpp.  They are   all replaced by the more up to date tab2tab.cpp - Modified the OGR creation logic to properly support creating single   files sets rather than directories full of files.  NFW - Fixed memory leaks with seamless tab files (bug 283) - Call CPLReadLine(NULL) in MIDDATAFile::Close() to cleanup working buffer. - Removed special bailout for m_poMAPFile == NULL in TABFile::Close().   It is important to cleanup other used memory. - mitab_coordsys.cpp: fixed small memory leak for non-earth coordinate   systems.  (bug supplied by Stephen Cheeseman, Geosoft).  - Added mitab_c_load_coordsys_table() to C API (bug 469) - mitab_ogr_datasource.cpp: Don't report single layer that hasn't been   "created" yet via GetLayerCount().  Fixes up single file generation issues.Version 1.2.4 (2003-07-23)-------------------------- - Added 'indexed' and 'unique' parameters to mitab_c_add_field().   Applications written for older versions of the C API will have to    be updated to pass these two new parameters. - Ensure that a blank line in a mid file is treated as one field containing   an empty string instead of being zero fields.  NFW - Fixes to support mif/mid files produced by Geomedia V5 (bug 1631):    - Do not produce an error if .mid data records end with a stray ','    - Treat tabs (\t) as a blank space delimiter when reading coordinate       values in .mif file - Fixed sign of rotation parameters in TOWGS84 parameters in WKT.  MapInfo   uses EPSG 9607's 7 parameter datum shift method, but TOWGS84 is defined   to hold EPSG 9606 style parameters.  Only the rotational signs differ. NFW - Fixed spelling of Provisional_South_American_Datum_1956 in datum list. NFW - Fixed bug parsing ellipsoid out of CoordSys strings for coordinate   systems with datum 999 or 9999. NFW - Fixed leak of TABMAPObjHdr when writing NONE geometries in SetFeature(). - Increased MIF reader line buffer size to 10000 chars - Added support for writing TABFC_NoGeom (NONE) geometries via the C API. - Fixed crash when reading .mif file that doesn't contain a DATA line   (Thanks to Riccardo Cohen for the fix). - Implement DeleteDataSource() method on the driver object. NFW - mitab_spatialref.cpp, mitab_coodsys.cpp: Fixed up regional mercator logic.   It was screwing up transverse mercator with non-zero latitude when writing   to tab, and wasn't being written properly to .mif. NFW - mitab_feature.cpp: fixed C++ style true/false where TRUE/FALSE required.   As per GDAL bugzilla 311.  NFW - Fixed problem scanning node in TABINDNode::FindNext() - bug 2176, FWVersion 1.2.3 - (2002-10-15)----------------------------- Support auto-addition of a dummy "FID" column if TAB files are created  with no fields, instead of producing an error.  A corresponding change  has not yet been applied to the MIF driver. NFW- Fixed lots of places that check for errors by examining CPLGetLastErrorNo().  A warning will trigger all these places as an error.  Changed to check that  the last error type was CE_Failure and add a CPLErrorReset() at the   beginning of many affected sections.  NFW- Modified TABGetBasename() (in mitab_utils.cpp) to stop at the first  forward or backslash otherwise "C:/warmerda/mi\can_caps.tab" will result  in a basename of "mi\can_caps.tab".   NFW- Modified datum list in mitab_spatialref.cpp with a bunch of new EPSG/OGC  datum names provided by Siro Martello from Cadcorp. NFW- Fix memory leak of m_pszIndex in mitab_miffile.cpp, the poSpatialRef  in TABFile::SetMIFCoordSys(), and a leak in MITABExtractCoordSysBounds(). NFW- Added untested support in mitab_spatialref.cpp, and mitab_coordsys.cpp for   projections Regional Mercator (26), Polyconic (27), Azimuthal Equidistant -   All origin latitudes (28), and Lambert Azimuthal Equal Area - any aspect   (29). NFWVersion 1.2.2 - (2002-07-06)----------------------------- Added a validation in TABMAPFile::GetFeatureId(). When there's no .map file   or no spatial indexes or no geometry, the function return -1 like an Eof.  This prevent the reading of a file set to NULL. (bug 169 (MapServer))- Treat Region as MultiPolygon in mitab_c_set_point() to support Regions  with multiple islands and holes. Passing a part number <= 0 (second   parameter in mitab_c_set_point()) will result in adding a new island   (i.e. polygon).  By default, parts > 1 are treated as holes in the  last island (polygon) that was created.- Added IsInteriorRing() function in the TABRegion class to validate if a ring   in a polygon is an external or an internal ring. The function returns   true if the specified ring is an interior ring. The function   mitab_c_is_interior_ring() in mitab_capi.c has been created too to call   IsInteriorRing() if the feature is a region.- In mitab_mapheaderblock.cpp, the Coordsys2Int() function used integer values   to check for overflow. However, in some case, integer was to small and caused  problems with applications that called SetSpatialFilter() with a filter   much larger than the file's bounds.  So, this function now uses doubles   internally for comparison, but still returns and receives integers.- Add SetSpatialFilter function in the TABSeamless class, to use seamless   layer in the right way. Now, the filter is applied on each data file and  on the index file. (Bug 164 (MapServer))Version 1.2.1 - (2002-05-08)----------------------------- Implement SetMIFCoordSys in the MIFFile class. The coordsys was not   written when calling mitab_c_create for MIF files because   MIFFile::SetMIFCoordSys always returned -1 (Bug 984).- Added support for TABFC_FontPoint and TABFC_CustomPoint in  mitab_c_create_feature(), mitab_c_set_points(), mitab_c_set_font() and   mitab_c_get_font().- mitab_capi.h: Use stdcall by default for all public mitab.dll functions  instead of cdecl.  Should still work fine for C/C++ users, and will  allow VB/Delphi users to use the same DLL with Bo T.'s interface files.Version 1.2.0 - (2002-05-03)----------------------------- Made changes in TABRelation to avoid an infinite loop. The m_poCurFeature  object have been deleted and the function GetFeatureRef() have been replace  by GetFeature(). This new function return a TABFeature object that must be   control by the calling method. (bug 706)- Made important changes in order to support writing objects in 16 bits   coordinate format. New TABMAPObjHdr-derived classes are used to hold   object info in memory until block is full.   This was required in order to fix a problem when very small regions   were written in 32 bits coordinates when 16 bits should have been used  because MBR < 65536.  In this case MapInfo would attempt to rewrite the  modified object info in 16 bits format while the coordinates blocks are  still in 32 bits format... resulting in a corrupted the file.  Note that at this point only feature types that use separate coordinate  blocks can be saved in 16 bits format (PLINE, MULTIPLINE and REGION).- Prevent writing of coordinates outside of the +/-1e9 integer bounds.  If coordinates outside of that range are written then the values are  written as +/-1e9 instead and a warning (ERROR 503) is produced when   the file is closed.  Coordinates outside of the +/-1e9 bounds limits  seemed to confuse MapInfo.- Disabled the warning (ERROR 503) when coordinates outside of the +/-1e9  integer bounds in SetCoordFilter().- Modified the conversion of double to integer coordinates to fix an old  problem where coordinates written by MITAB would be a little bit off   sometimes compared with the same values written by MapInfo.- Modified mitab_capi.cpp to correctly produce "point" style arcs from  mitab_c_set_arc().  It now sets a point geometry ensuring that the  TABArc::ValidateMapInfoType() method will succeed.  As per DMSG Bug 644. NFW- Fixed some TABView issues (bug 703):   - Support "select * ..." syntax  - Accept source table names with or without the .tab extension

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?