User Tools

Site Tools


map_suite_desktop_for_winforms_features_bug_fixes_change_log

Map Suite Desktop For WinForms Features & Bug Fixes Change Log

Version 10.6.0

Release date: 11/28/2019

ThinkGeo.MapSuite.WinForms Namespace:

ThinkGeo.MapSuite Namespace:

  • Enhanced to support reprojection for Wmts.
  • Enhanced to support high resolution screen for ThinkGeoCloudRasterMapsLayer.
  • Enhanced to support high resolution screen for GoogleMapsLayer.
  • Fixed a bug that GoogleMapsLayer renders incorrect tiles when map extent is out of max extent of Google.
  • Fixed a bug that WmtsLayer can't serialize.
  • Fixed a bug that the projection don't works when FeatureSource is editing and IsTransactionLive of ShapeFileFeatureLayer is true.
  • Fixed a bug that Fdo doesn't work on the x64 target platform.
  • Fixed a bug that FikeGeoDatabase doesn't work on the x64 target platform.
  • Changed DrawingPointStyleEventArgs to DrawingDirectionPointEventArgs.
  • Added DirectionPointStyle property for LineStyline.
  • Enhanced to support ZoomLevel20 for ThinkGeoCloudMapsZoomLevelSet.
  • Improved render performance for OpenStreetMap.
  • Fixed a bug that the PDF and the Printer get different result with the Map if polygon contains inner rings.
  • Enhanced to support GeoLinearGradientBrush for Printer.
  • Enhanced to support GeoLinearGradientBrush in PDF.
  • Fixed a bug that the Direction convert to incorrect Angle in GeoLinearGradientBrush.
  • Fixed a bug. When parsing tile format tiff image, throws “Array index is out of range” exception.
  • Fixed a bug that cache expired don't works again because we need compare the UTC dateTime.
  • Enhanced to support rotation text for Cad.
  • Fixed a bug that raster layer is unmatched with vector layer when printing.
  • Fixed a bug that the projection '90091' srid can't be found from Esri projectin list.
  • Fixed a bug that GeoTiff will jump when reprojection.
  • Improved S57 index building performance.
  • Fixed a bug. When Setting the IsActive of specified zoomlevel to false, map still draw the shape follow the style of other zoomlevel.
  • Fixed a bug that QueryTool doesn't work.
  • Fixed a bug that the label is rendered at incorrect position under different DPI.
  • Improved render performance for NauticalChartsFeatureLayer.
  • Fixed a bug that RotationAngle of PointStyle doesn't work when printing map.
  • Fixed a bug resouce files of LegendAdornmentLayer can't be found.
  • Fixed a bug that zooming to deeper than level 20 OpenStreetMapsLayer throws a exception.

Version 10.5.0

Release date: 04/01/2019

ThinkGeo.MapSuite.WinForms Namespace:

  • Added support of new class ThinkGeoCloudVectorMapsOverlay to consume Vector Tiles from ThinkGeo Cloud
  • Enhanced to support sending web request event and sent web request event for ThinkGeoCloudMapsOverlay
  • Enhanced to rename ThinkGeoCloudMapsOverlay to ThinkGeoCloudRasterMapsOverlay and ThinkGeoCloudMapsMapType to ThinkGeoCloudRasterMapsMapType
  • Fixed a bug that default ThinkGeo Cloud Maps server URLs need get updated

ThinkGeo.MapSuite Namespace:

  • Added support of Skia as the drawing engine to improve the performance.
  • Added support of semantic cartography schema – StyleJSON to design the map.
  • Added support of vector tile based *.MbTiles format.
  • Added support of ThinkGeoCloudRasterMapsLayer
  • Added support of high resolution for PlatformGeoCanvas, it mainly works for iOS edition
  • Enhanced to support parse special node in capability XML contains two spaces for WMTSLayer, generally Oracle export this type XML
  • Enhanced to support “ScaleFactor” property, it shows the high resolution value, it mainly works for iOS edition
  • Enhanced to support drawing halo pen dasharray on SkiaGeoCanvas
  • Enhanced to support both meter and decimal degree for NauticalCharts
  • Enhanced to support use ThinkGeoCloudRasterMapsLayer in iOS and Android edition
  • Fixed a bug that print google map to pdf tile unmatch
  • Fixed a bug that BuildingAreaStyle don't works follow design
  • Fixed a bug that OSM Buildings Url need get updated
  • Fixed a bug that some geotiff files looks jump when pan on map after set projection
  • Fixed a bug that text style don't works for wrapping lines in certain scenario
  • Fixed a bug that wrong boundary limit for Proj4Projection in certain scenario
  • Fixed a bug that the width or height value maybe equal zero when calling ToScreenCoordinate for GeoTiff
  • Fixed a bug that projection cannot handle parameter correct in certain scenario
  • Fixed a bug that PlatformGeocanvas throw format exception in certain scenario
  • Fixed a bug that GetDrawingExtent function loss precision in certain scenario
  • Fixed a bug that MapType is invalid when initializing ThinkGeoCloudRasterMapsLayer
  • Fixed bugs that some geotiff files cannot load correct

Version 10.4.0

Release date: 12/10/2018

ThinkGeo.MapSuite.WinForms Namespace:

  • Added new class ThinkGeoCloudMapsOverlay to support new ThinkGeo Cloud Map
  • Enhanced to use more accurate exception information
  • Fixed a bug the ThinkGeoCloudMapsOverlay generate incorrect route in certain scenario

ThinkGeo.MapSuite Namespace:

  • Added new overloading method for DrawText in GeoCanvas class
  • Enhanced to get better performance for data drawing when shape file contains many inner rings in polygon
  • Enhanced to support Esri srid input for Proj4Projection
  • Enhanced to support Esri coordinate system when create table for FileGeoDatabase
  • Enhanced to use more accurate exception information and exception type
  • Fixed a bug map throw null reference exception in certain scenario
  • Fixed a bug the Sqlite R Tree calculate different result in Windows and Linux
  • Fixed a bug some special invalid saturation and luminance values for GeoColor can pass our validation
  • Fixed a bug vector data won't render all shapes if the width is too big
  • Fixed a bug XyzFileBitmapTileCache lose cache ID in certain scenario
  • Fixed a bug GettingTileCache event won't be fired in correct step
  • Fixed a bug the overlays don't match when print to PDF
  • Fixed a bug white line shows for WMTSlayer
  • Fixed a bug exception is thrown when met invalid tile in WMTSlayer
  • Fixed a bug failed to load dll in FileGeoDatabase for asp.net scenario
  • Fixed a bug ECW render distorted image in special zoomlevel
  • Fixed a bug GeoTiff image jump in certain scenario

Version 10.3.0

Release date: 7/26/2018

ThinkGeo.MapSuite.WinForms Namespace:

ThinkGeo.MapSuite Namespace:

  • Supported more types of “DrawingGraphicsUnit” follow GDI+ graphics unit
  • Supported TileCache expire depend on last write time
  • Supported special point types for file GeoDatabase
  • Supported “GetFirstFeaturesWellKnownType” function for QueryTool
  • Supported more projections for example 102003
  • Supported GRAY band and uint16 source data of JPEG2000
  • Fixed a bug that generic GDI+ throws exception when disposing image
  • Fixed a bug that WrapDateline of GraticuleFeatureLayer doesn't work
  • Fixed a bug that Bingmapslayer rotation get incorrect result
  • Fixed a bug that map can't read the projection text from GeoTiff file
  • Fixed a bug that some tiles aren't rendered when tile type is Multiple for GeoTiff
  • Fixed a bug that unmanaged wrapper doesn't work correctly for GeoTiff
  • Fixed a bug that LegendAdormentLayer doesn't work in certain scenario
  • Fixed a bug that offset of point style doesn't work in certain scenario
  • Fixed a bug that layer rotation offset is incorrect in certain scenario
  • Fixed a bug that cache doesn't work for WorldStreetsAndImageryRasterLayer in certain scenario
  • Fixed a bug that CAD file load failed in certain scenario
  • Fixed a bug that TiledWms doesn't work if the capabilities contains “Post” node
  • Fixed a bug that GridFeatureSource render incorrectly if grid size less than 1 pixel
  • Fixed a bug that ScaleBarPrinterLayer render stretch
  • Fixed a bug that TiledWmsOverlay doesn't work if the sending request is incorrect
  • Fixed a bug that Tiff gets incorrect boundingbox
  • Fixed a bug that memory leak for raster layer on linux
  • Fixed a bug that JPEG2000 crash issue in certain scenario on linux
  • Fixed a bug that raster layer throws out of memory exception
  • Fixed a bug that crash caused by out of memory exception for CadFeatureLayer
  • Fixed a bug that memory leak for Ecw and JPEG2000
  • Fixed a bug that draw pixelated image of JPEG2000
  • Fixed a bug that JPEG2000 image displays blur after the image had been reprojected baed on the image edge
  • Fixed a bug that cache doesn't work for WMTS layer
  • Fixed a bug that WMTS layer doesn't show tile in certain scenario
  • Fixed a bug that WMTS layer can't find correct RowColumn limitation value
  • Fixed a bug that “GetServerCapabilitiesXml” get incorrect result for Wms layer, TiledWms layer or WMTS layer
  • Fixed a bug that TiledWMS layer throws exception when passed parameters is correct
  • Fixed a bug that WMS Client cannot deal with exception when WMS Server unavailable
  • Fixed a bug that WmsRasterLayer throws exception when load data
  • Fixed a bug that GeoFdoRasterSource throws exception when load data
  • Fixed a bug that GeoFdoRasterSource can't display data correct in certain scenario
  • Fixed a bug that NoaaWeatherStationStyle throws exception when feature's column value “DisplayPriority” is null or empty
  • Fixed a bug that NoaaWeatherStationFeatureLayer doesn't work in certain scenario
  • Fixed a bug that SpatialIndexName can't contain char “-” for MsSqlFeatureSource
  • Fixed a bug that transaction doesn't work for InMemoryFeatureLayer
  • Fixed a bug that MapPrinterLayer can't get serialized or deserlized
  • Fixed a bug that GeoTiffRasterLayer returns wrong projection description
  • Fixed a bug that PostgreSqlFeatureSource throws “Invalid data type” exception if parameter is null or string.Empty
  • Fixed a bug that the boundingbox of feature don't get updated after SetWellKnownBinary operation
  • Fixed a bug that the width option of line save incorrect value when convert MapShapes to KML
  • Fixed a bug that KmlLayer throw exception when convert MapShapes to KML
  • Fixed a bug that reproject get incorrect result in certain scenario

Version 10.2.0

Release date: 10/27/2017

ThinkGeo.MapSuite.WinForms Namespace:

  • Fixed a bug where SetSelectedControlPoint API can't get the shared dragging vertex.

ThinkGeo.MapSuite Namespace:

  • Supported online OSM building data with the ability to cache locally
  • Supported 3D rendering for buildings
  • Supported USGS DEM data rendering with embedded styles
  • Supported more Interpolations (NearestNeighbor for example) for PlatformGeoCanvas
  • Supported KML projection from WGS84 to other projections
  • Supported different rendering orders (by Features or by ClassBreaks) for ClassBreakStyle
  • Supported different rendering orders (by Features or by ValueItems) for ValueStyle
  • Added “GetFeatureIds” API for all FeatureSources and FeatureLayers
  • Upgraded FdoRasterRasterLayer&FdoVectorFeatureLayer to use FDO 4.0
  • Fixed a bug where Proj4Projection.CanReproject returns incorrectly in some classes
  • Fixed a bug where “ArgumentNullException” exception is thrown when GeoHatchBrush’s constructor is called in some scenarios
  • Fixed a bug where FileGeoDatabaseFeatureLayer cannot read its last polyline data correctly
  • Fixed a bug where “System.Reflection.TargetInvocationException was unhandled” exception is thrown when creating table by FileGeoDatabaseFeatureLayer
  • Fixed a bug where WmtsLayer crashed when the WMS server returns 404 error
  • Fixed a bug where GoogleMapsLayer draws incorrectly when using single tile mode in certain scenarios
  • Fixed a bug where the “GeoImage cannot be serialized” exception is thrown in some scenarios
  • Fixed a bug where InMemoryFeatureSource cannot get correct bounding box when building index in certain scenarios
  • Fixed a bug where “Object reference not set to a instance of an object.” exception is thrown when Proj4Projection’s parameterless constructor is called
  • Fixed a bug where BingMapsLayer doesn't work on Android Edition in certain scenarios
  • Fixed a bug where TextStyle doesn't work in FileGeoDatabaseFeatureSource
  • Fixed a bug where GoogleMapsLayer draw an incorrect request image on Single Tile Mode
  • Fixed a bug where ClusterPointStyle throws “Object reference not set to an instance of an object” exception in certain scenarios
  • Fixed a bug where FileGdbApiWrapper returns features with incorrect column names
  • Fixed a bug where MapSuite Product Center can't popup in certain scenarios.

Version 10.1.0

Release date: 06/21/2017

ThinkGeo.MapSuite.WinForms Namespace:

ThinkGeo.MapSuite Namespace:

  • Added four color map support
  • Added GisServerRestLayer support
  • Added read GeometryCollection For OracleFeatureLayer support
  • Added API to allow user control the x/y axes for WmtsLayer
  • Enhanced JPEG2000 to support loading R-G-B-IR format JPEG file
  • Enhanced support different DPI for printer
  • Enhanced about GridFeatureLayer performance
  • Enhanced product center behavior when user got expired
  • Enhanced support cloudfile layer
  • Fixed bug the CanExecuteSqlQueries of InMemoryFeatureLayer return incorrect value
  • Fixed bug the center point of reprojected extent shift, which makes map tile mismatch it's correct location
  • Fixed bug the null exception caused by license validator
  • Fixed bug the application stops when render which caused by screen line too long
  • Fixed bug the “Column does not belong to table” error when use where clause on view for MsSqlFeatureLayer
  • Fixed bug Matrix.GetIntersectingCells throw exception
  • Fixed bug WMTS layer doesn't work well in some scenario
  • Fixed bug some shapefile loading error
  • Fixed bug bounding box calculatation error when out of range
  • Fixed bug GeoTiff Layer render incorrect in some scenarios
  • Fixed bug the temp property of environment is null
  • Fixed bug blurry text problem on map
  • Fixed bug GeoImage actual size equal zero issue
  • Fixed bug out of memory exception for projection
  • Fixed bug texture brush throws exception in some scenarios

Version 10.0.0

Release date: 02/16/2017

Map Suite 10.0 New Features:

  • Core functionality supports multi-platforms on Windows, Linux and macOS.
  • Core APIs are shared across all Map Suite product line.
  • Remove the merge module and move the required assemblies to specific package.
  • Create new product center that is available to run on multi-platforms including Windows, Linux and macOS.
  • Map Suite Products are hosted on NuGet server instead of Map Suite Installer.
  • Simplify Map Suite License Strategy.
  • Split MapSuiteCore 9.0 assembly by functionality. It allows to import necessary assemblies to such projects.
  • Support ECW files on Linux.
  • Support MrSid and JPEG2000 files on Linux.
  • BareBone NuGet Package for Map Suite products allows to create app with minimum size.
  • Standard NuGet Package for Map Suite products allows to transfer user's existing 9.0 projects to 10.0 easier.

ThinkGeo.MapSuite.WinForms Namespace:

  • Fixed a out of memory bug caused by the forc cast of bitmap when calling DrawOverlaysForSingelThread and DrawBackgroundBitmap.
  • Added SnapDown and SnapToClosest option to controll the zooming operaction.
  • Fixed a crash issue when the map.ZoomLevelSnapping value is set to None.
  • Fixed an OutOfMemory issue by caching the background brush.
  • Fixed a bug that map flicks when refreshing overlay in multi-thread mode.
  • Added Language property in GoogleMapsLayer and GoogleMapsOverlay.
  • Fixed a bug that the markers is unremovable during panning.
  • Added VerticesRemoving and VerticesRemoved events in EditInteractiveOverlay.
  • Fixed map pause in a flash issue when panning map with MultiTile InMemoryFeatureLayer.

ThinkGeo.MapSuite Namespace:

  • Added WkbFileFeatureLayer/WkbFeatureSource to support WKB file format.
  • Added opacity support to GeoImage.
  • Fixed a SQL statement case sensitive bug in MsSql2008FeatureSource.
  • Fixed a PrimaryOutline color bug in LineStyle.
  • Added WrapDateLine support for RasterLayer.
  • Fixed a serialization issue in MsSql2008FeatureSource.
  • Fixed a bug when creating mirror dbf file failed.
  • Fixed a customized projection bug for GoogleMapsOverlay.
  • Added a method GetFeaturesInsideBoundingBox to query features inside of bounding box with filters parameter.
  • Add mask support for PointStyles.
  • Added MaskMargin and MaskType support for PointStyle.
  • Added style sheets support.
  • Fixed a hardcode MapUnit issue for MapShapeLayer.
  • Added inner layers features support for CadFeatureLayer.
  • Fixed a bug when getting all features with external columns.
  • Added RotationAngle support for TextStyle.
  • Fixed a bug that CAD file renders failed.
  • Fixed an exception when getting bounding box in WmsRasterLayer.
  • Added CRS support to WMSRasterLayer.
  • Fixed a bug that the TextStyle is unavailable during drawing.
  • Fixed a memory leak bug in OracleFeatureSource caused by event binding.
  • Improved the preview map quality.
  • Fixed a bug that the GetFeaturesOutSideBoundingBox returns less results than expect.
  • Fixed an out of memory issue caused by WrapDateLine in RasterLayer.
  • Added MultiGeometry Columns support for OracleFeatureSource.
  • Upgraded the LibTiff.NET to 2.4.528 version.
  • Added GeometryCollectionShape support for TabFeatureLayer.
  • Added GetProjectionText support for GeoTiffRasterLayer on unmanaged library.
  • Added Pyramid tiled support for Tiff format.
  • Added embed WorldFile support for managed tiff raster source.
  • Added Geographic coordinates system support for Unmanaged GeoTiff.
  • Fixed the NullReferenceException bug when calling StreamLoading in KmlFeatureSource.
  • Fixed a bug when reading KmlFeatureLayer from local directory.
  • Optimized the union performance.
  • Fixed the black background and OutOfRangeException when opening a GeoTiff file.
  • Added WMSTileType to make the WMSLayer support Single Tile, in which it simply send one request to the server.
  • Fixed an exception caused by adding empty feature to InMemoryFeatureSource.
  • Fixed a bug that the OpenStreetMapLayer gets an unmatched level tiles.
  • Improved the drawing performance for GdiPlusGeoCanvas.
  • Improved the draw performance for ShapeFileFeatureLayer.
  • Added alpha channel support for projection wrapper.
  • Fixed a bug that GoogleMapsLayer can’t loading tiles from TileCache.
  • Fixed Projection OutOfMemoryException when the bounding box is too small.
  • Enhanced tab font drawing effect.
  • Enhanced ClusterPointStyle performance.
  • Fixed the incorrect color for TabFileFeatureLayer.
  • Fixed the symbol size issue for the TABFeatureClass.TABFCFontPoint.
  • Fixed scale bar ticks display incorrect with 3857 projection.
  • Fixed the “value was either too large or too small for character” exception.
  • Fixed the transparent pixel issue.
  • Added Add/Delete/Modify columns in InMemoryFeatureSource.
  • Added Language property into GoogleMapsLayer and GoogleMapsOverlay.
  • Fixed a bug that Simplify line shapes of GeometryCollectionShape class don't work.
  • Added ArcGIS ServerRestLayer support.
  • Added ManagedGeoTiff support.
  • Added ColorMappings to the layer.
  • Fixed a bug that WorldMapKitLayer exports pdf incorrectly with TileCache.
  • Added null handling to GetInvalidReason().
  • Added IsGeometryValid property on BaseShape that returns the IsValid Property of the NTS Geometry.
  • Added GeoTiff palette tile mode image support.
  • Added Layer.Transparent, Layer.IsScale and Other properties supports for ColorMappings.
  • Added ScaleFactor support for RasterLayer.
  • Fixed URL parameters bug for ArcGISServerRestLayer.
  • Added different DPI support for MapPrinterLayer.
  • Fixed a bug that app crashes when the capability contains invalid bounding box.
  • Fixed a bug that tiles unmatch with other raster layers when using projection.
  • Added getting feature ids inside bounding box support for SqliteFeatureSource.
  • Enhancement shapefile performance to retain accuracy when creating very large shapefiles.
  • Fixed a bug that BingMapsLayer is unmatched with OpenLayers.
  • Fixed edge not match for multi raster layer if DPI not 96 for PDF and Printer.
  • Enhancement Graticule label, render Minutes when zoom in suitable level.
  • Added edit feature support for Grid source.
  • Fixed a style sheet classes bug for GeoCanvas.
  • Added image whoes RowNumberPerStrip equals to 0 support.
  • Fixed a request url issue for WmsRasterSource.
  • Fixed a culture issue for WmtsTiledOverlay.


The following was created before Map Suite 10. Map Suite 10 organized many classes into new namespaces and assemblies as well as had a few minor breaks in compatibility. The majority of previously built code should work without modification assuming the new namespaces are added. For guidance on upgrading your existing code check out this wiki article. http://wiki.thinkgeo.com/wiki/map_suite_10_upgrade_guide

Version 9.0.0.0

Release date: 06/24/2015

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Added request drawing support on Overlay.
  • Fixed a bug where EditInteractiveOverlay runs into exception when dragging the first vertex of a polygon if VertexDraggingMode is Shared.
  • Added enhancements to OpenStreetMapLayer and OpenStreetMapOverlay to make sure the exception can be thrown out.
  • Fixed a bug where there is a delay of panning the map when working with MultiThread.
  • Cancel adding vertex not works by handling AddingVertex event of TrackInteractiveOverlay.
  • Fixed TrackEnding event don't works follow design.
  • Fixed StartingVertex of TrackStarting function for TrackInteractiveOverlay don't works.
  • Fix the logic for EditInteractiveOverlay, remove additional control point.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed a bug where there are something wrong with parsing the namespace of WMS capabilities file.
  • Fixed a bug where the EcwRasterLayer runs into memory leak exception.
  • Fixed a bug where the GetBoundingBoxCore method of MsSqlFeatureSource runs into exception.
  • Updated the unmanaged Proj4 dependency to the latest version 4.8.
  • Fixed a bug where ECW file path name is case-sensitive.
  • Added a new class of ScaleLinePrinterLayer to print scale lines.
  • Added new class of ScaleTextAdornmentLayer to Map Suite Core.
  • Added a new class of ScaleTextPrinterLayer to print scale text.
  • Fixed a bug where there are something wrong with initializing the omerc projection.
  • Fixed a bug where the Dispose method of UnmanagedProj4Projection runs into exception.
  • Fixed a bug where selecting LabelPrinterLayer runs into exception.
  • Fixed a bug where MrsidRasterLayer runs into memory leak problem.
  • Fixed a bug where the Jpeg2000RasterSource runs into memory leak issue.
  • Fixed a bug where it runs into exception when building the index of KmlLayer.
  • Fixed a bug that the deployed version of WebEddition, MvcEdition, SilverlightEdition and WmsEdition runs into “Unlicensed for runtime” .
  • Added new API for changing the color of Grid lines in ScaleBarAdormentLayer.
  • Fixed a bug where the WmtsLayer runs into exception, as the code of clearing the tile matrix is incorrect.
  • Added support of requesting tiles using UrlTemplate of resource URL in WmtsLayer.
  • Fixed a bug where reading Shapefile runs into exception if the decimal length of DBFColumn is bigger than 15.
  • Fixed a bug where the IsolineLayer runs into exception sometimes when IsolineType is ClosedAsPolygon.
  • Fixed a bug where the scales of tile matrix in WmtsLayer on server side are different from the ones on client side.
  • Fixed a bug where KmlLayer runs into exception when loading KML file with the encrypted dlls.
  • Enhancement OracleFeatureSource, only create one assembly instance.
  • Fixed a bug where the MagneticNorthLineStyle cannot be serialized.
  • Fixed a bug where the drawn tile images are mismatch each other when applying FileBitmapTileCache.
  • Added more projection support to WMTS besides the support of EPSG:3857 and EPSG:4326.
  • Fixed a bug where it returns incorrect class breaks if there is only one ClassBreak item in ClassBreakStyle.
  • Fixed a bug where the GridFeatureSource generates Gridfile with CurrentCulture but Read GridFile with InviriantCulture.
  • Fixed a bug where the scales of cached tiles are incorrect if OpenStreetMapLayer works with MultiThread mode.
  • Fixed a bug where it runs into exception when initializing the TileCache of OpenStreetMapLayer as null.
  • Fixed a bug where it runs into exception if the readed KML file includes the bool values.
  • Fixed a bug where the height of LegendAdormentLayer/LegendPrinterAdormentLayer is incorrect when the ResizeMode is Fixed.
  • Fixed a bug where there are something wrong with CodeGenerator.
  • Improved performance of drawing GraticuleAdornmentLayer.
  • Changed the default value of LegendContentResizeMode to Fixed.
  • Fixed bug that WMS don't parse response XML which describe error information.
  • Fixed bug GetWellKnownText for lineshape haven't been convert to Invariant Culture.
  • Remove toUpper for whereClause of MsSql2008FeatureLayer.
  • Fixed a bug where the ClientId and PrivateKey of GoogleMapsLayer doesn't work with SingleTile.
  • Improved the GeoCoderGenerator.
  • Added support of support custom spatial index name in mssqlfeaturelayer.
  • Fixed a bug where the request tile size is not equal to the size of map with SingleTile.
  • Fixed a bug where the method GetAllMapShape of KmlFeatureLayer runs into exception.
  • Improved the IsoLine result generated by removing the holes at the center of IsonLine.
  • Added the embedded TAB style support.
  • Fixed a bug where ProjectionFromSphericalMercator property doesn't work.
  • Added Attribution to all layers and Overlays.
  • Fxied a bug where the MagneticDeclinationAdornmentLayer runs into memory issue.
  • Added the new API SetWellKnownBinary(byte[] wkb) to Feature class to allow changing the WKB of the feature.
  • Improved the performance of method byte[] ShapeFile.ReadPolygon(byte[] dataBytes, int startIndex).
  • Removed the using JTS in Feature to Shape conversion(BaseShape.FromWellKnownBinary, BaseShape.CreateShapeFromWellKnownData).
  • Added enhancements to OpenStreetMapLayer and OpenStreetMapOverlay to make sure the exception can be thrown out.
  • Added Leader Lines.
  • Enhanced the Best Placement algorithm.
  • Added an Abbreviation Dictionary. For example, add “University” with “Univ” to the Abbreviation Dictionary and “University” will be abbreviated when displayed.
  • Added Max Nudging parameter to specify how far a label can be moved.
  • The unit for Drawing Margin is now pixels instead of percentage.
  • Geohashing APIs - Allows sorting of GeoFeatures for performance gains. Shapefiles of features that are in proximity are stored on the same section of the disk.
  • Standard color access for Geocolors, brushes, and pins has been streamlined.
  • New Projection API to find local UTM Zone for any feature. No longer need to look up UTM Zone manually.
  • Added ability to save and import style files from GIS Editor to Map Suite.
  • One-way road line style now available.
  • More filter conditions added for RegEx. It is now simpler to use.
  • Added R-Tree Indexing for KML feature layers.
  • Gave ability to modify well-known binary on a feature. Now possible to directly access and modify WKB.
  • Can now add column value data without defining it up front to Map Shapes and Edit Shapes.
  • Added Boundary Solution Parcel feature layer.
  • Created new APIs for accurate measurements regardless of projection.
  • Enhanced Tile Cache - new APIs allow expiration by size, date, etc.
  • Created Well Known Binary feature layer type for better performance, especially on Android and iOS.
  • New Printing APIs allow switching between page and world coordinates.
  • ScaleBar and ScaleLine - can set a text style to control the font and look.

Version 8.0.0.160

Release date: 11/17/2014

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Fixed a bug where EditInteractiveOverlay runs into exception when dragging the first vertex of a polygon if VertexDraggingMode is Shared.
  • Fixed a bug where there is a delay of tiles when dragging the map very fast under MultiThread.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed a bug where the Dispose method of UnmanagedProj4Projection runs into exception.
  • Fixed a bug where the MrsidRasterLayer runs into Memory leak problem.
  • Fixed a bug where the MagneticDeclinationAdornmentLayer runs into exception.
  • Fixed a bug where the requested tile size is not correct under single-thread mode.
  • Fixed a bug where selecting LabelPrinterLayer runs into exception.
  • Resolve issue that MagneticNorthLineStyle cannot be serialized.
  • Fixed a bug where it runs into exception when calling GetAllMapShapes of KmlFeatureLayer
  • Fixed a bug where the drawn tile image is dismatch each other with FileBitmapTileCache.
  • Fixed a bug where it returns incorrect class breaks if there is only one ClassBreak item in ClassBreakStyle.
  • Fixed a bug where the Jpeg2000RasterLayer runs into memory leak exception.
  • Fixed a bug where the scale of the cached tiles is incorrect if the OpenStreetMapLayer is used with MultiThread mode.
  • Fixed a bug where make the tile matrix of WMTSlayer matchs between client and server scales.
  • Added support of parsing the WMS services whose compabilties file following the namespaces with “SM” prefix.
  • Fixed a bug where WMTSLayer runs into exception, because of clearing the tile matrix at wrong place.
  • Added the support of getting tiles from UrlTemplate of Resource url in WMTSlayer.
  • Fixed a bug where the EcwRasterLayer runs into memory leak exception.
  • Fixed a bug where the EcwRasterLayer is case sensitive to the file path name.
  • Added attribution “© ThinkGeo © OpenStreetMap contributors” to WorldMapKit overlay/layer.
  • Fixed a bug where there is a delay of tiles when dragging the map very fast under MultiThread.
  • Fix a bug where KmlLayer runs into exception when loading KML file with the encrypted dlls.
  • Fixed a bug where the height of LegendAdormentLayer/LegendPrinterAdormentLayer is incorrect when the ResizeMode is Fixed.
  • Made the default value of LegendContentResizeMode to Fixed.
  • Improved performance of drawing GraticuleAdornmentLayer.
  • Fixed a bug where it's unable to use ClientId and PrivateKey when using SingleTile with GoogleMapsLayer.
  • Improved the GeoCodeGenerator.
  • Fixed a bug where it runs into exception if the readed KML file includes the bool values.

Version 8.0.0.0

Release date: 06/06/2014

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Fixed a bug where it runs into exception sometimes when remoing vertex from MultiPolygonShape.
  • Fixed a bug where something wrong with filtering other items, which is not tables, using method “GetTableName” in FileGeoDatabaseFeatureLayer.
  • Fixed a bug where something wrong with StreamLoading event of GdiPlusRasterLayer if the loaded image is in tiff format.
  • Fixed a bug where there are some incorrect format parameters in the request URI in TiledWmsRasterSource.
  • Fixed a bug in ManagedProj4Projection which happened after upgrade to 7.0.
  • Fixed a bug where the addedFeature is unable to get the tag of resshapeControlPoint.
  • Fixed a bug that will cause one shapefile could not be shared by two shapefilelayer.
  • Added support of patially refresh an area in LayerOverlay or map.
  • Improved the performance of EditInteractiveOverlay when working with large data, such as Taxes roads.
  • Added a new class MagneticDeclinationPrinterLayer to support print magnetic declination.
  • Fixed a bug where the featureDragged event is triggered during the mouse moving.
  • Added several Geoprocessing related functionalities to GeometryCollectionShape.
  • Fixed a bug where Feature Tag is missed after calling CalculateVertexControlPoints method.
  • Fixed a bug where srid is empty in oracle table after importing the features.
  • Fixed a bug where the Feature's tag is missed in some events.
  • Fixed a bug that the GraticuleAdornmentLayer numbers always has a white edge.
  • Fixed a bug where it runs into exception when reading a csv file.
  • Fixed a bug where it runs error when using MapThreadingMode.Multithreaded with TileCache.
  • Added the support of moving multiple vertexes when they are in the same place.
  • Added the support of MagneticDeclinationAdornmentLayer.
  • Fixed a bug where the application crashes if there are not enough vertexes in a line or polygon after delete.
  • Fixed the bug where the Feature's tag is missed after calling Addvertex.
  • Replaced the ECW referenced DLLs from debug version to the release one.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed a bug that will through exception when the table in filegdb has no geometry column.
  • Fixed A Bug that will make features inserted into oracle table not able to be read.
  • Improved memory management when getting geotif world extent.
  • Fixed the bug where the KeyColors property doesn't take effect.
  • Fixed a bug where the OracleFeatureLayer shows incorrect result if the data contains 3D geometries.
  • Fixed a bug where using feature id as the ID column value when inserting a new feature into Oracle table.
  • Did the enhancements to GraticuleAdormentLayer.
  • Fixed a bug where something wrong with the font size after printing to PDF.
  • Added support of new Dbf format(30H), a kind of Foxpro Dbf format.
  • Fixed a bug where the installer's repair option doesn't work correctly.
  • Fixed a bug where the TranslateByDegree method returns incorrect result.
  • Added the support of Date column type in FileGdbTable.
  • Fixed a bug where there are some memory leak in reading ECW File.
  • Fixed a bug where the GoogleMapsLayer works incorrectly with single-tile mode.
  • Fixed a bug where it runs into exception when the customized layers are working with multi-thread mode.
  • Improved the memory usage in FileGeoDatabase if it contains Blob column types.
  • Fixed a bug where it's unable to get the correct boundingBox from the server's reply by calling GetCapability in WmsRasterSource.
  • Fixed a bug where the “GetAllFeatures” method in FileGeoDatabaseFeatureLayer ignores some invalid features.
  • Fixed a bug where the GoogleMapsLayer dismatches with overlapped shapfilelayer when the compurter's dpi is changed.
  • Fixed a bug where reading the GeoTif WorldFile.
  • Added an exception when adding a column type which is not supported by FileGDB.
  • Fixed a bug where the line shape always covers the point shape in maprinterlayer.
  • Improved the method “GetTableNames” in “FileGeoDatabaseFeatureLayer” to get the tables in FeatureDatasets.
  • Fixed a bug where the oracle connection in OracleFeatureSource keeps going up following the time.
  • Fixed a bug where there are some confilicts between System.Data.OracleClient.OracleType And Oracle.DataAccess.Client.OracleDbType.
  • Fixed a bug where the GetTableNames method in “FileGeoDatabaseFeatureLayer” returns incorrect type.
  • Removed the API key from Google layer.
  • Fixed a bug that Unmanaged Dependencies installers does not include all the necessary dlls for the FileGeodatabase class.
  • Fixed an issue that OnGeoserializing method was called but OnGeoserialized method wan't because it's a duplicate object.
  • Fixed A Bug in Pointshape.TranslateByOffset().
  • Fixed A Bug that will make the wmtslayer not correctly displayed after upgrading to 7.0.
  • Fixed bug ArgumentException thrown in InMemoryBitmapTileCache.
  • Fixed A Bug for EcwRasterLayer that is caused by cultureinfo.
  • Fixed A Bug that will creat wrong Graticule Line for the map.
  • Added support to projection “Rijksdriehoekstelsel_New”.
  • Fixed a bug where the rtree removed an unexpected record.
  • Added functionality to refresh a set of regions on Overlay and Map.
  • Fixed an bug where something wrong with loading CadFeatureLayer.
  • Add the support that NTS doesn't support the union function.
  • Added GetFeaturesByIds support in TinyGeoFeatureSource.
  • Added ContentResizeMode property to LegendAdormentLayerto support the size of legenditem can be changed based on the AdormentCanvas size.
  • Added Blob type support in FileGeodatabase.
  • Upgraded the PostgreSqlFeatureLayer to the latest version to support new version of Npgsql Driver.
  • Fixed a bug where it runs into exception when re-open an not-existed file in ShapeFileFeatureLayer.
  • Fixed a bug of ConvertToInternalProjectionCore method in Proj4Projection.
  • Added an ExecuteSqlQuery and CanExecuteSqlQuery methods to QueryTools and to FeatureSource.
  • Did some enhancements to overrided method in sub-classes of FeatureSource.
  • Did some enhancements to the GetBoundingBoxCore() of OLEDBFeatureSource.
  • Supported adding more than 10 longer column to .dbf file.
  • Fixed a bug where TabFeatureSource.GetFeaturesByColumnValue() doesn't work correctly sometimes.
  • Added fixed size mode support of the legend item in printerlayer when dragging the legend.
  • Added support to allow customer to set the roatition center for rotation projection.
  • Added the Native Support of S-57 Maritime Charts.
  • Added the Native Support of GPX (GPS EXchange Format).
  • Fixed a bug where GetFeaturesInsideBoundingBox in InMemoryFeaureSource runs into exception after calling InternalFeatures.Add.
  • Fixed a bug where there is a conflict between System.Data.OracleClient.OracleType And Oracle.DataAccess.Client.OracleDbType.
  • Fixed a bug where there are some memory leak in GeoTiffRasterSource.
  • Fixed a bug where OpenStreetMapLayer runs into “index out of bounds” exception.
  • Added the native support of TobinBas file format.
  • Improved the memory usage in EcwRasterLayer to make sure it doesn't grow up quickly.
  • Fixed a bug where the Pointshape in GeometryCollectionShape could not be drawn by pointstyle.
  • Added native support of KML file format.
  • Fixed a bug where the numeric format don't work with point style.
  • Added support of Visual FoxPro format DbaseFile.
  • Fixed a bug where GetIsoFeatures method of IsoLineLayer returns an unexpected rectangle.
  • Added support of ROD unit in Jeffersonian.
  • Fixed a bug where it runs into exception when the latitude is larger than 180 under wrapdataline mode.
  • Improved the performance of WmsRasterLayer.
  • Added support of latin letters in Geoserializer.
  • Added the Native Support for .dwg and .dxf (CAD support).
  • Added support of WellPointStyle.
  • Fixed a bug where that something wrong with reading the WorldFile of some raster images because of culstureinfo.
  • Fixed a bug where there is a lacune in raster tiles.
  • Fixed a bug where creating wrong request URI with privatekey and client id for googlelayer.
  • Added support of GPX format.
  • Added projection support for CadFeatureSource.
  • Fixed the bug where GoogleMap reports 403 error if using the default constructor.
  • Added support of custom static map service based on Openstreetmap.
  • Fixed a bug that accessing BoundingboxUnit of wmtsTileMatrix will run into infinity loop.
  • Fixed a bug where there is a white line if WmtsLayer works with projection in meter.
  • Fixed a bug where it runs into error when labeling if ShapeFileFeatureSource is in the status of TransactionBuffer.EditBuffer.
  • Added support of Collate Sensitive in SqlServer2008FeatureSource.
  • Improved the performance of TiledWmsRasterSource by decreasing the count of request tiles.
  • Fixed a bug where the geoserializer doesn't support latin letters.
  • Fixed a bug where it runs into “projection is not opened” exceptions in some cases.
  • Fixed a bug where NTS doesn't support the union function if it's GeometryCollectionShape.
  • Fixed a bug where the FileGeodatabase can not get the “feature class”.
  • Fixed a bug where the GetClosestPointTo method of LineShape returns incorrect result sometimes.
  • Fixed a bug where it runs into exception if Microsoft.SqlServer.Types.dll is not found.
  • Fixed a bug where the added columns are unable to be ordered.
  • Add support of Visual FoxPro format DbaseFile.
  • Added LayerCloneCount on LayerOverlay to limit the count of copied layers.
  • Fixed a bug where creating the incorrect ISO lines.
  • Improved the precision of the result returned from GetFeaturesWithinDistanceOf.
  • Fixed an issue where it runs into exception if the FileBitmapTileCache is in DecimalDegree while the map unit is meter.
  • Added CanGetQuickCount/GetQuickCount APIs to FeatureSource.
  • Added more utility APIs to GeometryCollectionShape.
  • Added support of the TobinBas file format.
  • Fixed a bug where GeoDbf collects Null data type.
  • Fixed a bug where there will be a white line after the raster image is projected.
  • Added ThreadSafetyLevel property to WorldMapKitLayer.
  • Fixed a bug where some of Feature's properties are missed after MakeValid.
  • Fixed a bug where a null instance added into Dictionary during deserialize.
  • Supported the ShapeFile and its related instances ReadWrite shareable.
  • Added CSScriptLibrary as MapSuiteCore dependencies to support the dynamic linq.
  • Fixed a bug where the raster projection returns an unmatched image.
  • Added LinkColumnValues property to Feature class.
  • Added the support of basic Cogo functionalities.
  • Added functionality to Layer level to request a delay drawing.
  • Added APIs on Layer to support auto request drawing.
  • Fixed a bug where the Prj4Projection doesn't change if we only set the Internal/ExternalProjectionParametersString property.
  • Added support of National Weather Service by adding corresponding layers.
  • Added CloudFileFeatureLayer and its related FeatureSource.
  • Added LoadLayer method on Layer to allow to load the layer from a tglyr file or stream.
  • Added Projection Support to OpenStreetMapLayer, GoogleMapsLayer and BingMapsLayer.
  • Added CompositeStyle to composite multiple styles in one style.
  • Added LinkSource that uses Linq to Link external data sources for higher performance.

Version 7.0.0.0

Release date: 06/03/2013

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Added the feature that can generate the polygon result from Isoline
  • Fixed a bug that Map.CurrentScale is not correct after Track Zoom In
  • Fixed a bug that the column value is not correct when using ShapeFileFeatureLayer.SaveToProjection
  • Fixed a bug that it's unable to resize LegendPrinterLayer
  • Fixed a bug that the icon would get trucked when using Markers
  • Fixed a bug that two InMemoryMarkerOverlays couldn't display at the same time
  • Fixed a bug that Bing maps disappears when zoom out to zoomlevel01
  • Fixed a bug that the ShapeFileFeatureLayer.StreamLoading would not be raised when file format is incorrect
  • Fixed a bug that when resizing the ImagePrinterLayer and LegendPrinterLayer the image would disappear
  • Fixed a bug that MapPrinterLayer always rendered as a bitmap
  • Fixed a bug that NullReference Exception would occur when calling TabFeatureSource.CreateTabFile with MultiPolygon
  • Fixed a bug that features draw outside MapPrinterLayer's boundary
  • Fixed a bug that the CustomZoomLevels are cleared when MapUnit is changed
  • Fixed a bug that GetAllFeatures would return incorrect features when using projection
  • Fixed a bug that the label would disappear at a slight change of extent
  • Fixed a bug that MapPrinterLayer not printing to scale
  • Fixed a bug in MarkerOverlay that the markers doesn't refresh when the Overlay.IsVisible was set to false
  • Fixed Layer.IsNegative method to apply proper color to Layer instead of Black
  • Fixed red 'x' issue for OpenStreetMapLayer and Overlay when zooming to very low scales
  • Improved standardize the Caching system across all the products
  • Modified InMemoryMarkerOverlay Features API to make API more uniform across products

ThinkGeo.MapSuite.Core Namespace:

  • Added a ClearCache method to MapPrinterLayer to delete the cache image
  • Added a spatial index status cache for MsSql2008FeatureSource
  • Added LinearGradient brush to MapPrinterLayer
  • Added support the FileGeoDatabase
  • Added support write white paper on Printing
  • Added support the GRD/GRI grid format
  • Added the FittingPolygonInScreen property to “PositionStyle to fit the labels as best as it can on part of a polygon
  • Added to create an overload for GeoImage constructor to accept a Bitmap
  • Added to support the static maps API for GoogleMapsLayer
  • Fixed accuracy issues when converting UTC to WGS84 coordinates zone 30
  • Fixed a bug when using the “GetClosestPointToCore” of GeometryCollectionShape runs into endless loop
  • Fixed a bug that it would throw an exception when using a proj4 parameter with ManagedProj4Projection
  • Fixed a bug in OracleFeatureLayer that it would throw exception when the column is not surround with ‘ ” ’
  • Fixed a bug in PrinterLayer that it would make the polygon’s edge follow by the ClippingArea
  • Fixed a bug in GDIPlusGeoCanvas that the star symbol’s offset is incorrect
  • Fixed a bug in ClassBreakStyle that it would cause an IndexOutOfRange exception
  • Fixed a bug in AreaBaseShape.GetIntersection that it would throw exception when the result is not AreaBaseShape
  • Fixed a bug in openStreetMapLayer that it would get an invalid image
  • Fixed a bug in PdfGeoCanvas that the label’s offset is incorrect
  • Fixed a bug that the Feature.GeometryLibrary is not synchronized with the BaseShape. GeometryLibrary
  • Fixed a bug in IconStyle that if the image is null, it would throw an exception
  • Fixed a bug in LineShape.GetLineOnALine when the distance is very small
  • Fixed a bug in BingmapsLayer that it would display no image when the zoomlevel is larger than 20
  • Fixed a bug in LineShape.GetPointOnALine that it would return a wrong point
  • Fixed a bug in GeoSerializer that it couldn’t serialize the KeyedColletion type
  • Fixed a bug in GDIPlusGeoCanvas and PrinterGeoCanvas when outlinepen.Width = 0, it will still draw the edge
  • Fixed a bug that the GetPointOnALine doesn't return the correct point if the y coordinates of the vertex are the same
  • Fixed a bug that it's unable to install MapSuite products on Windows 8
  • Fixed a bug that CLR types doesn't work on the clean machine
  • Fixed a bug that the BaseShape.Buffer runs into exception when the specified distance is too small
  • Fixed a bug in GeoSerializer that it may get an exception when serialize and deserialize a multi-dimension array type
  • Fixed a bug that it loses accuracy when converting between epsg:27700 and epsg:900013
  • Fixed a bug that something is wrong with the clipping of MapPrinterLayer
  • Fixed a bug that some style will throw exception incorrectly
  • Fixed a bug that the scale line would throw exception when the extent out of range
  • Fixed a bug that EditTools.UpdateFeature is not working in MsSql2008FeatureLayer
  • Fixed a bug that 2163 projection will not be converted correctly with UnmanagedProjection
  • Fixed a bug that it would throw “Cannot insert items into an STR packed R-tree after it has been built” exception when using edit tools with multithread
  • Fixed a bug that the GetIntersection for RectangleShape returns incorrect result
  • Fixed a bug that TextSytle of LegendAdormentLayer doesn't take effect
  • Fixed a bug that LegendItems is not respecting TextStyle's GeoFont definitions
  • Fixed a bug that MsSql2008FeatureLayer.CreateTable would throw an exception
  • Fixed a bug that the features are not displaying by the edge of the full extent if the featureSource is applying a projection
  • Fixed a bug that open an SDF files with zooming in or zooming out will throw out of array index range issue
  • Fixed a bug that the GetDistance would throw exception
  • Fixed a bug that the Label should not be so sparse
  • Fixed Proj4 issue with EPSG 27700
  • Improved IsoLine that solve some of the input points have no values issue
  • Improved Map Suite geometric functions to increase processing speed, accuracy and reliability
  • Improved some incorrect comments of the public APIs
  • Improved SQL query under x64 mode in ShapeFileFeatureLayer
  • Improved support the NauticalMile's transformation
  • Improved the performance of SpatialQuery method for Ms2008SqlServerFeatureSource
  • Improved the result and performance of IsoLine by applying Kringing Grid and tracking algorithm
  • Improved the way of loading the unmanaged assemblies
  • Improved the “ScaleBarAdornmentLayer” to support setting threshold value for switching scale bar unit
  • Improved the LegendPrinterLayer that there is a big blank paging at the top and bottom
  • Improved the Memory and CPU usage when using OracleFeatureSoruce
  • Improved to look for the assemblies in the same folder first and then check the system32 folder
  • Improved upgrade the FDOExtension to 3.7 and GDAL to 1.9
  • Modified FileBitmapTileCache to use GUID for initial CacheID
  • Modified the logic of GetZoomLevelForDrawing by considering the IsActive
  • Removed the hard coded spatial index in MSSql2008FeatureSource
  • Removed some exception handling with ToScreenCoordinate, ToWorldCoordinate and GetWorldDistanceBetweenTwoScreenPoints

Version 6.0.0.0

Release date: 05/14/2012

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Fixed an issue where GetLineOnLine returns the wrong result.
  • Fixed an issue where the tooltips of marker are duplicated.
  • Fixed an issue where ScaleBar and ScaleLine don't match in PrinterLayer.
  • Added the method ZoomToNextExtent().
  • Fixed an issue where features cannot be selected after editing if the layer is reprojected.
  • Fixed an issue where the application crashes under visual studio 11.
  • Improved serialization of InMemoryFeatureLayer by using the class GeoSerializer.
  • Fixed an issue where System.ArgumentException is thrown when resizing LabelPrinterLayer.
  • Fixed an issue where map is not correctly printer to PDF.
  • Fixed an issue where IconImageScale in IconStyle is not printed correctly.
  • Fixed an issue where “memory access violation” exception is thrown when drawing the overlay after deserializing.
  • Fixed an issue where Manged4Projection cannot be correctly serialized.
  • Fixed an issue where projection won't be opened in GraticuleAdornmentLayer unless it is passed in through constructor.
  • Fixed an issue where Graticule Grid gets smaller when panning out of map boundary if the internal/external projection are both set to 4326.
  • Improved LegendPrinterLayer by rendering Legend using Vector Graphics.
  • Added the support for ThinkGeo's TinyGeo (.tgeo) File Format.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed an issue where certain styles don't call the GetRequiredColumnNames for child styles.
  • Fixed an issue where GeoTiffRasterLayer’s HasBoundingBox always returns true.
  • Implemented GeometryCollection.GetDitanceTo() method.
  • Fixed an spelling issue, rename “Dragable” to “Draggable”
  • Added the ability to use custom servers in OpenStreetMaps.
  • Added the support of Nautical Miles to ScaleBarAdornmentLayer.
  • Fixed an issue where the first feature is always removed when deleting multiple features in MsSql2008FeatureLayer.
  • Fixed an issue where an exception is thrown in PrinterGeoCanvas.DrawTextCache method when RotationAngle is not 0.
  • Improved the Exception Description in FeatureSource.GetAllFeatures method
  • Added the implementation of PostgreSqlFeatureSource GetFeaturesByColumnValueCore.
  • Fixed an serialization issue where the keys to a GeoCollection were not being added back correctly when de-serializing.
  • Fixed an spelling issue, rename GoogleMapZoomLevelSet to GoogleMapsZoomLevelSet.
  • Fixed an issue where shapefile's bounding box is not updated after removing a feature.
  • Fixed an issue where multi features cannot be correct deleted at the same time.
  • Fixed an issue where ShapeFileFeatureSource.GetBoundingBoxById() doesn't call GetFeaturesByIdsCore() internally.
  • Improved the creating shape performance by moving some logic from BaseShape constructor to property.
  • Removed the TabFeatureLayer from FdoExtension as we've added it in MapSuiteCore.
  • Fixed an issue where WorldMapKitLayer couldn't export to Pdf by using PdfExtension.
  • Fixed an issue where an exception is thrown in BingMapsLayer when zooming to an area where no imagery is available.
  • Added Clear() method into InMemoryFeatureLayer and InMemoryFeatureSource.
  • Improved the performance of MsSql2008FeatureSource GetBoundingBox
  • Fixed an issue where files with big case ”.SHP“ extension are not accepted.
  • Added the support of WMS 1.3.0.
  • Fixed an issue where PagePrinterLayer automatically changes the orientation..
  • Added StreamLoading event to GridIsoLineLayer
  • Upgraded all the 3rd part DLLs referenced to the latest version
  • Fixed the issue where the features returned by GetFeaturesInsideBoundingBox shouldn’t contain the ones removed.
  • Improved the map object XML Serialization.
  • Improved Speed Improvements by introducing MapSuite WicBitmap extension.
  • Added the support of Layer Transparency.
  • Improved the Memory Usage for ShapeFileFeatureSource.
  • Upgraded MrSid & Ecw to the latest version.
  • Improved drawing performance.
  • Added the support of Code Generator.
  • Fixed the issue where the “out of memory” exception is thrown when loading a large .tiff image.
  • Improved the drawing quality of TiffRasterLayer by optimizing the reading logic
  • Improved Label Formatting by adding Formatting and Formatted events to TextStyle.

Version 5.5.0.49

Release date: 12/31/2011

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Fixed an issue where markers shift when panning the map.
  • Fixed an issue where the layers are opened/closed multi times in LayerOverlay.Draw() method.
  • Fixed an issue where ArgumentOutOfRangeException is thrown when calling GetFeaturesWithinDistanceOf method on a projected Layer.
  • Fixed an issue where the map flashes while panning under multithreading mode with tile cache enabled.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed an issue where the PrinterDocument is disposed after raising the PrintPage event.
  • Fixed an issue where an exception is thrown when the tiff image is zoomed out to one pixel.
  • Fixed an issue where the rtreeIndex cannot be correctly used in ShapeFileMultiFeatureSource.
  • Fixed an issue where an SQL exception is thrown when executing a SQL statement with “where” clause within it in MsSql2008FeatureLayer.
  • Fixed an issue where the bounding box is incorrect after removing a feature from a shapefile.
  • Fixed an issue where Bing Maps Layer shifts after zooming in.
  • Fixed an issue where LineShape.GetLineOnALine doesn't work properly.
  • Fixed an issue where the MapPrinterLayer constructor doesn't hold the passed parameters.
  • Fixed an issue where GeoCanvas.DrawCircle method is using the wrong coordinate unit for width and height.
  • Fixed an issue where OpenStreetMapLayer doesn't display properly on the border.
  • Fixed an issue where ArgumentOutOfRangeException is thrown when calling SpatialQuery method on a projected Layer.
  • Fixed an issue where the first features is always deleted when deleting features..
  • Fixed an issue where GetLineOnALine sometimes returns null.
  • Fixed an issue where GetFeaturesInsideBoundingBox doesn't work properly for point based shape file.

Version 5.5.0.0

Release date: 11/14/2011

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Fixed an issue where TrackEnded event doesn't work properly in some cases.
  • Fixed an issue where exceptions from BingMapsLayer cannot be caught.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed an issue where PointType.Cross in PointStyle doesn't work properly.
  • Enhanced the documentation for OSM layer and overlay.
  • Fixed an issue where ScaleBar.AreaStyle doesn't draw properly.
  • Fixed an issue where an exception is thrown when Multipolygon.Contains method is called.
  • Enhanced the exception description where a single Tab file is loaded without other related files.
  • Fixed an issue where GettingZoomlevelsForDrawing doesn't work well when custom levels are overlapped.
  • Changed the “URI” to “WebRequest” property in SendingRequestUriTileEventArgs Class for all the products.
  • Fixed an issue where ShapeFileFeatureSource.CloneDeepCore() didn't work well with dBaseEngine.
  • Added MaxRecordsToDraw property to FeatureSource and FeatureLayer.
  • Fixed an issue where GraticuleAdornmentLayer doesn't work properly.
  • Fixed an issue where IndexPathFileName is not updated when ShapePathFileName property is changed.
  • Added the IsoLine Support.
  • Created a Print layout system.
  • Fixed an issue where the polygon shapes are not loaded correctly if the first ringShape in a polygon feature in shape file is not the outer ring.
  • Fixed an issue where GetFeatureNestestTo returns wrong result.
  • Fixed an issue where EditTools.ScaleUp and ScaleDown doesn't work for line shapes.
  • Fixed an issue where TabFeatureLayer doesn't display properly with Projections settings.
  • Fixed the issue where an exception is thrown when calling GetLineOnALine with the same start and end points.

Version 5.0.0.55

Release date: 7/7/2011

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Enhanced ZoomLevel Setting
  • Fixed a bug where the layer had to be reopen after drawn in version 5.0
  • Fixed a bug where points disappeared while panning
  • Fixed a bug where the marker click event didn't work properly in some cases
  • Fixed a bug where RestrictedExtent didn't work as expected
  • Fixed a bug where WinformsMap.RestrictedExtent didn't work as expected
  • Fixed a bug where an exception was thrown while resizing within the restricted extent

ThinkGeo.MapSuite.Core Namespace:

  • Enhanced method GetPointOnALine in LineShape
  • Fixed a bug where the first point of DotDensityStyle wasn't random when using multiple DotDensityStyles
  • Enhanced MsSql2008FeatureSource to support Open/Close connection only once
  • Fixed a bug where Legend LineItem images and text didn't aligned on some systems
  • Fixed a bug where TabFeatureLayer Spatial query returned wrong featureID
  • Enhanced the logic for method GetLineOnALine in LineShape
  • Fixed a bug where an exception was thrown while loading tab file based with index.
  • Fixed a bug where MultipleShapeFileFeatureLayer constructor parameteres are useless
  • Fixed a bug where BuildIndexMode had no effect while building index file of Tab file with DoNotRebuild mode
  • Enhanced the load performance for tab file when using index file
  • Enhanced the logic in GetLineOnALine
  • Fixed a bug where CloneDeep method in TabFileFeatureLayer class didn't work as expected
  • Fixed a bug where the ValueStyle didn't work as expected on TabFileFeatureLayer
  • Fixed a bug where invalid validation of wms crs existed while checking WmsRasterLayer.
  • Fixed a bug where an exception was thrown while serializing MsSql2008FeatureLayer.
  • Enhanced the drawing order for features in layer
  • Fixed a bug which is related to location calculate problem in GdiPlusGeoCanvas
  • Fixed a bug where method GetBoundingBox thrown exception on MsSql2008FeatureLayer if some of the features are null

Version 5.0.0.0

Release date: 5/16/2011

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Fixed a bug where the DrawingTime of Overlays was reported incorrectly.
  • Fixed a bug where an exception was thrown when initializing the area units in multithreaded scenarios..
  • Fixed a bug in TrackInteractiveOverlay where the start point was offset when tracking a shape.
  • Fixed a bug where the Current Extent gets pretty big when passing in a very small extent.
  • Fixed a bug where the trackzoomin rectangle was still be displayed while holding the shift key even the track zoom key is set to another key.
  • Fixed a bug that threw an exception after calling Refresh when CanReshape was set to false.
  • Added BingMapsOverlay with the new way of authentication.
  • Added method GetBitmap(Single width, Single height) in wpfMap.
  • Added the property TrackZoomInLayer in the ExtentInteractiveOverlay.
  • Added a way to restrict the users extent using the Map.RestrictedExtent property.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed an issue where an exception was thrown when adding two styles with the same column name except the case was different.
  • Fixed a bug where the result was not complete in the MultipleShapefileFeatureSource.GetFeaturesNearestTo() method.
  • Fixed a bug where the TileCache result was not always correct when using a projection.
  • Fixed a bug where the GetInternalGeographyUnit always return Unknown when using FeatureSource.GetFeaturesWithinDistance with the RotationProjection.
  • Fixed a bug where the UserID doesn't be set in the constructor of OracleFeatureSource/OracleFeatureLayer.
  • Fixed a bug where the DrawingLevel could not be set for an IconStyle.
  • Fixed a bug that the GetLineOnLine method doesn't work correctly for some cases.
  • Fixed a bug where the map was not displayed correctly when using GdiPlusRasterLayer.
  • Fixed a bug where Feature.Equals method didn't always work correctly.
  • Fixed the issue where the GraticuleAdornmentLayer blocks when its projection's internal and external parameters are the same.
  • Fixed the issue where an exception was thrown when calling GetBoundingBox in MsSqlFeatureSource which only had one feature.
  • Fixed the issue where the map was not displayed properly when using GoogleLayer as background with different DPIs.
  • Fixed a bug in MultipleFeatureLayer where GetFeatureById returned a wrong feature.
  • Fixed a bug where an exception was thrown when zooming out too far for geotiff raster layers.
  • Fixed the issue where the ClientId and PrivateKey properties wouldn't work in the Google Maps Layer.
  • Fixed a bug where the Column.MaxLength is not correct when opening a database view with MsSQL2008FeatureLayer.
  • Fixed the bug that the result if not correct for GetBoundingBox method in WmsRasterLayer.
  • Fix a bug where the image had a one pixel offset while using WMSRasterLayer.
  • Fixed the issue where the GetDistanceTo method returns the same result no matter what the DistanceUnit was.
  • Fixed a bug where the GeometryCollectionShape could only be displayed when three default styles where set.
  • Fixed a bug where “null object reference” exception was thrown when using AllowLineCarriage=true.
  • Fixed a bug where the GeoTiffRasterLayer threw an exception when passing in a rectangle shape instead of a world file.
  • Fixed the issue where the GoogleLayer would not overlap with a given shape file in some zoomlevels.
  • Fixed the issue that FDOExtensionX64 didn't work in .net 4.0 framework.
  • Fixed a bug in the InMemoryFeatureLayer.Update which caused it to fail in some cases.
  • Fixed the issue where a wrong Geography Unit was used within GetFeaturesWithinDistanceOf when the projection was set.
  • Fixed a bug where the AreaStyle didn't work properly in the CustomStyles collection when the feature count was less than ten.
  • Fixed a bug where the value of the Tag property is lost when assigning a BaseShape to a Feature.
  • Fixed a bug that the result of GetLineOnALine is not correct for some cases.
  • Fixed the issue where some features had fewer points than they should using the DotDensityStyle.
  • Fixed the issue where the GeoLinearGradientBrush might draw incorrectly.
  • Fixed a bug where DrawWorldImageWithoutScaling didn't work correctly when passing in a rotation angle.
  • Fixed a bug where the TabFeatureLayer in the previous FdoExtension could not be serialized.
  • Fixed the bug in GetLineOnALine where the first and last vertex has the same coordinates.
  • Added the static method GenerateGrid() in the GridFeatureLayer to create grid files.
  • Modified the validator to allow the user to use unstandard crs.
  • Improved the exception descriptions for Oracle, Sql2008 and Postgre layer.
  • Added an constructor which accepts an image in LogoAdornmentLayer class.
  • Set an alias when a dbf has duplicate column names.
  • Added support for more types of GeoTiff files.
  • Added properties in FdoFeatureLayer to make them consistent with the constructor parameters..
  • Added validators to ZoomLevel.Draw method to check if input features are empty.
  • Added Methods GetWGS84ParametersString, GetDecimalDegreesParametersString and GetLatLongParametersString to ManagedProj4Projection, UnmanagedProj4Projection and Proj4Projection.
  • Added ShapeFileReadWriteMode property to the ShapeFileFeatureLayer.
  • Enhanced TiledWmsLayer to support more than one server url as input.
  • Fixed a bug where the ScaleLine didn't refresh properly during panning.
  • Fixed a bug that memory usage would increase when using Projection.
  • Added a way to build nice looking legends using the LegendAdornmentLayer.
  • Supported projection for GeometryCollectionShape.
  • Updated EPSG list from the Proj4 website.
  • Added a validator to handle the exception when passing in an empty collection of features to the ZoomLevel.Draw.
  • Enhanced exception description for the RtreeSpatialIndex.
  • Fixed the issue where the GeoPen.Brush only worked for the GeoSolidBrush.
  • Enhanced the way of using StreamLoading event in GdiPlusRasterSource.
  • Supported conversion of .PRJ files to and from PROJ4 strings.
  • Fixed a problem where the polygon GetCenterPoint returns NaN for some case.
  • Added an event in GoogleMapsLayer which passes out the request url.
  • Updated the GetGeographyUnit methods and remove unused GetXXXParameters methods.
  • Added a GeographyUnit property to the RotationProjection.
  • Added a way to get the bounding box from the world file class.
  • Added support for the 64 bit version of FDO.
  • Marked ManagedGeoTiffRasterSource Serializable.
  • Added a new API to create a simple MsSqlServer table.
  • Fixed a bug where the GetLongitudeDifferenceFromDistance didn't work correctly when very small values were used as inputs.
  • Added BingMapsLayer and BingMapsZoomLevelSet.
  • Added new overload constructor Feature(wellKnownText, id, columnValues) to Feature.
  • Added GraticuleAdornmentLayer class.
  • Added Height, Width and BackgroundMask properties to AdornmentLayer.
  • Added AlternateBarBrush property to ScaleBarAdornmentLayer.
  • Added DrawingQuality enum to GeoTiffRasterLayer.
  • Marked [Serializable] for GeoTiffRasterLayer, HeatLayer, GraticuleAdornmentLayer and HeatStyle.
  • Added overloads for GetFeaturesNearestTo at QueryTools to be the same as the FeatureSource.
  • Exposed InterpolationMode for GdiPlusGeoCanvas and GdiPlusRasterLayer.
  • Added a StreamLoading event to the GdiPlusRasterLayer and ShapeFileFeatureLayer to make it easier for the users to find.
  • Added OpenStreetMapsZoomLevelSet class.
  • Added WrappingMode property to support map wrapping past the dateline.
  • Added LabelAllLineParts property in TextStyle to label all parts of a MultiplelineShape.
  • Added the enum PolygonLabelingLocationMode to improve the algorithm for labeling polygon.
  • Added new class “SerializationHelper” for help to deserialize objects accross different versions of Map Suite.
  • Obsoleted some methods in ManagedProj4Projection according to Proj4Projection class.
  • Fixed a bug where the IconStyle didn't display any labels when user didn't set icon images.
  • Removed the Obsolete APIs.

Version 4.5.0.0

Release date: 11/01/2010

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Added MarkerOverlay which support SimpleMarkerOverlay, InmemoryMakerOverlay and FeatureSourceMakerOverlay.
  • Added OpenStreetMapOverlay to support Open Street Map.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed the problem not encrypted for some private functions
  • Optimized the retrieving twice for MSSqlFeatureSource geometry column.
  • Provided support for VS2010 and samples.
  • Fixed a rounding bug in GetPointOnALine API of LineShape.
  • Fixed an issue when using a Chinese font
  • Functions of MSSqlServer2008FeatureSource or Layer run to error in some specified culture.
  • Bad performance with SQLServer2008 when using Geography type and large data size.
  • Fixed an issue when using the UpdateColumnName API in dbf module.
  • Fixed an issue throwing exception when calling BuildIndex in Turkey enviroment.
  • Point Placement Affected by Label Length
  • WmsRasterLayer cannot work when deserialized
  • Support .NET 3.5 Client Profiler
  • Implemented INotifyCollectionChanged, INotifyPropertyChanged interface in GeoCollection
  • Replaced the Proj4Projection into ManagedProj4Projection used internally
  • Fixed the issue the RasterLayer is not drawn in the PrinterGeoCanvas.
  • Added OpenStreetMapLayer to support OpenStreetMap
  • Added Managed GeoTiffRasterSource
  • Added GetFeatureInfo functions for WmsRasterLayer
  • Enhanced performance for GdiPlusRasterLayer
  • Added ClusterPointStyle
  • Added DrawingProgressChanged event

Version 4.0.40.0

Release date: 6/15/2010

  • Updated assembly version to 4.0.0.0; included strong-named and weak-named assemblies. Please see the latest post in the Developer Blog for full details.

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Updated assembly version to 4.0.0.0; included strong-named and weak-named assemblies. Please see the latest post in the Developer Blog for full details.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed issue with the ScaleTo API in BaseShape when called by a Rectangle Shape.
  • Fixed issue where an exception would be thrown when calling BuildIndex in a Turkish enviroment.
  • Fixed issue when using the UpdateColumnName API in DBF module.
  • Fixed issue involving use of Chinese fonts
  • Fixed a rounding bug in the GetPointOnALine API of LineShape.
  • Some minor API changes. See the API change log for complete details.

Version 4.0.0

Release date: 5/1/2010

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Many core enhancements and additions as itemized here.
  • Added support and sample applications for Visual Studio 2010.
  • Increased panning performance both for WinformsMap and WpfMaps.
  • Improved WPF performance issues related to screen resolution.
  • Enhanced Overlay.Draw to display the full stack trace if an exception is thrown.
  • Fixed issue for SpatialQuery result without USA.
  • Fixed environment-related issue when using ClassBreakStyle.
  • Fixed issue where WorldMapKitWMsRasterSource would throw a thread exception.
  • Fixed issue where the Scale of InteractionArguments is always 0.
  • Fixed issue where there is no effect when the user sets a different DrawingQuilty for a layer from winforms.DrawingQuity.
  • Fixed issue where an exception is thrown when using multithreading.
  • Fixed issue where a NullReferenceException will be thrown after a CloneDeep operation because the Encoding is null.
  • Fixed issue where a WPF map cannot be zoomed in after hiding the AvalonDock.
  • Fixed issue with inheriting from TrackInterativeOverlay to remove a vertex.
  • Fixed issue where the map will not display when TileWidth is not 256.
  • Fixed issue with exceptions while drawing.
  • Fixed issue where mouseDownCount needed to be set to for TrackOverlay.
  • Fixed issue where an IOException will be thrown when using MultiThreadMode with TileCache.
  • Fixed issue where the worker thread will continue running after you call Dispose in multithreaded mode.
  • Changed the MapUnit property's default value from DecimalDegree to Unknown.
  • Changed the default DrawingExceptionMode to DrawException for WorldMapKitWmsDesktopOverlay.
  • Overall performance improvements.
  • Several API additions. See the API change log for complete details.
  • Updated the API documentation.

ThinkGeo.MapSuite.Core Namespace:

  • Added additional helper methods to the GeoCollection class.
  • Added better support for labeling with Asian characters.
  • Added support for Google Static Maps API v2.
  • Added simple support for Yahoo Maps.
  • Added support for heat map layers.
  • Added support for 100% managed proj Projection Library.
  • Added direct support for Map Shapes.
  • Added API to modify the column name in ShapeFileFeatureSource and ShapeFileFeatureLayer.
  • Added new API BuildIndex for MultipleShapeFileFeatureLayer
  • Included GraticuleLineLayer support and a sample application for it.
  • Enhanced the MultiShapeFileFeaturesLayer class to allow you to use files in multiple folders.
  • Enhanced the distance measuring method to use the Haversine formula.
  • Improved GeoCache performance.
  • Updated the PostgreSQL Assembly versions.
  • Exposed the DBaseFile class library.
  • Exposed the disk-based RTree Spatial Index.
  • Split up the Map Suite MergeModule into smaller and more manageable pieces.
  • Fixed issue where GetCenterPoint using NTS would return an invalid value when the polygon's width and height is 0.
  • Fixed issue regarding GetBoundingBox of GroupLayer.
  • Fixed issue where GetAllColumns also returns the Geometries column.
  • Many API additions. See the API change log for complete details.
  • Updated the API documentation.

Version 3.1.299

Release date: 11/16/2009

ThinkGeo.MapSuite.DesktopEdition Namespace:

  • Concluded public beta and moved to final release.
  • Fixed issue where a null pointer exception is thrown when the network is not available.
  • Fixed issue where the GradientStyle does not work properly.
  • Fixed issue where snapping does not occur in Google & Virtual Earth layers.
  • Fixed issue where the TileCache is not properly cleared when the environment is set to French.
  • Fixed issue where the preview cache folder could not be created when the environment is set to French.
  • Fixed issue where an overlay does not redraw when using lock object in multi-threaded mode.
  • Fixed issue where layers would disappear when the map is set to a certain extent.
  • Several API changes. See the API change log for complete details.

ThinkGeo.MapSuite.Core Namespace:

  • Fixed issue with the ScaleTo API in BaseShape when called by a Rectangle Shape.
  • Fixed issue where SaveToProjection is incorrect for some data.
  • Fixed issue with the DecimalDegreesHelper API GetDecimalDegreeFromDegreesMinutesSeconds.
  • Fixed caculation issue in DecimalDegreeHelper.GetDistanceFromDecimalDegrees when passing particular data.
  • Fixed issue where an exception is thrown for TAB files when the column name starts with an underscore(_).
  • Some minor API changes. See the API change log for complete details.
map_suite_desktop_for_winforms_features_bug_fixes_change_log.txt · Last modified: 2019/12/06 01:45 by tgwikiupdate