📄 history.txt
字号:
and when reading objects with no Pen, Brush, etc. set (used to just set everything to zero which was inconsistent with MI's behavior) New defaults are: PEN(1,2,0), BRUSH(2,16777215,16777215), FONT("Arial",0,0,0), SYMBOL(35,0,12)- Accept "TABLE TYPE LINKED" and handle them the same way as type NATIVE i.e. the link to the RDBMS is simply ignored.- Added support for Swiss Oblique Mercator/Cylindrical. (NFW)- Expand tabs (NFW)- Added projection bounds lookup tables, automatically called by TABFile::SetProjInfo() (and SetSpatialRef() by the same way). TABFile::IsBoundsSet() can be used after setting projection to establish if some default bounds were found or not for the projection.- Fixed IMapInfoFile::CreateFeature(), was leaking feature memory. (NFW)- Fixed small memory leak in OGRTABDataSource::CreateLayer() (NFW)- Support SpatialFilter inside IMapInfoFile::GetNextFeature(). TAB files should support spatial filter via their spatial index for optimal performance.- Avoid unnecessary cloning of features in IMapInfoFile::GetNextFeature() and IMapInfoFile::GetFeature().- Added TABText::Get/SetTextLineEndPoint() and properly read/write label line end point in TAB files.- Fixed writing MIF header: for decimal fields, an extra field of type logical with same name was always added because of a missing break; (Kieron)- Added support for reading seamless TAB files (TABSeamless class)- Fixed problem creating new files with mixed case extensions (e.g. ".Tab")Version 1.0.4 - (2000-11-14)----------------------------- Fixed a problem writing indexes - When a new entry was inserted at the beginning of an index node (changing this node's key) then the parent was not properly updated and some records were not queriable through that index.- Handle '\t' just like a space when parsing mif files.- Fixed MIFFile::GotoFeature() to avoid calling ResetReading() before moving forward.- Fixed writing of drawing tool blocks - when more than 512 bytes worth of drawing tool info had to be written, an error was produced instead of automatically allocating a new block, resulting in a truncated file.Version 1.0.3 - (2000-10-19)----------------------------- Fixed reading of MAPCoordBlocks to accept text strings that overlap on 2 data blocks.- Added graceful recovery from NULL OGRSpatialReference pointers in mitab_capi.cpp, and mitab_spatialref.cpp (NFW).- Added what I hope to be working support for NonEarth translation (into LOCAL_CS in WKT format) (NFW).- Initialize m_dWidth to 0 in TABText constructor. (NFW)- Made TABFile::GetBounds() return bounds corresponding to the +/- 1e9 integer coordinate limits instead of using min/max int. coord. from headerVersion 1.0.2 - (2000-10-03)----------------------------- Avoid warnings building with gcc -Wall -O2 (NFW).- Modified generation of .MAP spatial index to generate a balanced tree instead of the old 'chained list of nodes' that exceeded the 255 levels limit on the tree depth with files with > 100,000 objects. There would still be room for improvement by implementing splitting of object data blocks.- Handle m_nOriginQuadrant value of 0 the same way as quadrant 3- Added bDeletedFlag to TABFeature with get/set methods- Maintain and/or compute values of regions and polyline center/label point (Used to always use the center of the MBR and this was not correct)- Fixes for old Version 100 files: - Set valid Scale/displacement when reading V100 .map header. Use m_nCoordPrecision to define scale since scale in header is 0. - Accept "FORMAT: DBF" in .tab header file.- Made all open() methods completely case-insensitive on filenames on Unix (added TABAdjustCaseSensitiveFilename())- Added new MapInfo 6.0 datums in datum list.- Added OGR Feature Style String support when reading- Added support for writing arcs, ellipses and rectangles using the C API- Flushed tab2mif.cpp and mif2tab.cpp. There is now a single tab2tab.cpp conversion program that can generate both TAB or MIF output, depending on output filename extension- Added #define MITAB_VERSION for apps that want to report library version.Version 1.0.1 - (2000-04-21)----------------------------- Added C API documentation (mitab_capi.cpp) + functions to read vertices and field information and included C API in public release.- Modified fltering of new table field name to accept extended chars with accents. Version 1.0 - (2000-03-26)--------------------------- Changed to use same MIT/X-Consortium license as other CPL + OGR libs.- Fixed problem opening datasets with 0 features in them.- Added support for reading TAB datasets with "Table Type DBF"... only type "NATIVE" was supported until now.- Produce only a warning when unsupported feature types encountered in the .MAP file, and return a valid feature with a NONE geometry.- Done more tests (and required changes) to fix the way the quadrant setting affects the way to read arc angles... hopefully it's right this time!- TABText objects now return their text string with any "\n" escaped on 2 chars (i.e. "\"+"n"). TABText::SetText() also expects newlines to be escaped in the string it receives.- Fixed some projection problems, including possible crashes with some 9999 datums with big parameter values or with some unrecognized projections.- Outside/inside ring relationship from a TABRegion's OGRPolygon is now properly written to the .MAP file's coord block section header. Prior to MapInfo 5.0, this info was ignored, but now it has to be valid otherwise some parts of a region won't be displayed properly in MI5.0- Added support to write indexed fields and create joined tables (TABView).- Added validation on field names (no special chars) on write and produce a warning if name had to be fixed.- Added support for V450 object types with num_points > 32767 and for pen width in points. This also resulted in changes to the ITABFeaturePen methods, mainly the Get/SetPenStyle() method has been removed since this style value was actually a part of the point width value. Finally, the 'style' parameter was also removed in the mitab_c_set_pen() C API method.- Support for Version 450 objects forced creation of version 500 .MAP files with 1024 bytes header (.MAP version 400 were produced before).- MIF format now reads and writes bounds in coordsys (used to ignore them)Version 0.2 - (1999-12-20)-------------------------- - Added TABView class to support views on pairs of .TAB files (read-only) - Currently supports only 2 tables with a many-to-1 relation through an integer field. - Added GetFeatureCountByType() method. Current implementation does not work (returns all zeros) for MIF files - Added static ImapInfoFile::SmartOpen() to automatically detect file type, open a new file for read and return a new object of the appropriate type (TABFile/TABView/MIFFile) to handle it. - Changed TABFile::Open(), MIFFile::Open() to use a bTestOpenNoError flag - OGRMIDDataSource/OGRMIDDriver were removed. Now all file types handled by MITAB go through the OGRTABDataSource/OGRTABDriver interface - Fixed problem reading/writing dates (bytes were reversed) Also, Dates are now returned as "YYYYMMDD", and accepted as one of "YYYY/MM/DD", "DD/MM/YYYY", or "YYYYMMDD" - Fixed TABFile::GetBounds() that could sometimes return Min values > Max - Rounded rectangles with radius bigger than MBR: we used to return a corrected radius value, but it's now changed to return the real radius value (even if it's too big) since this is what MapInfo appears to do when exporting from TAB to MIF - Fixed some problems that had appeared following a change in OGR's addGeometry()... use the new addGeometryDirectly() + more error checking. - TABRegions geometry now returned as OGRMultiPolygon instead of OGRPolygon with multiple rings. This change had to be done because OGRPolygons MUST have only one outer ring with a set of inner rings, and this cannot be guaranteed to be the case with a MapInfo file. Also added TABRegion::GetNumRings() and TABRegion::GetRing() to make it simpler to manipulate the complex geometry as if it was a simple collection of rings which is actually what we have in the MapInfo model. - Fixed some problems with MIF generation of Float fields and PLINE MULTIPLE - Run a bunch of read/write tests for both .TAB and .MIF through Purify... fixed all memory leaks found.Version 0.1 - (1999-12-04)-------------------------- - First official pre-release version - Still lacks good API docs.------------$Id: HISTORY.TXT,v 1.94 2002/07/30 13:54:11 julien Exp $------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -