User Tools

Site Tools


thinkgeo_12_upgrade_guide

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
thinkgeo_12_upgrade_guide [2019/09/26 05:38]
tgwikiupdate [How to use the WorldMapKit?]
thinkgeo_12_upgrade_guide [2020/05/19 20:15]
benbai [Where is GdiPlusXXX?]
Line 1: Line 1:
-====== ​Map Suite 12 Upgrade Guide ======+====== ​ThinkGeo ​12 Upgrade Guide ======
 \\ \\
-===== Map Suite 10.0 vs 12.0 =====+===== Map Suite 10.0 vs ThinkGeo ​12.0 =====
 \\ \\
-The update to MapSuite ​12.0 introduces a lot of exciting changes we have made to MapSuite. This guide will walk you through all of the changes and how to upgrade from 10.0 to 12.0 for your existing project. You can see an overview of these changes in the table below. ​  +The update to ThinkGeo ​12.0 introduces a lot of exciting changes we have made to MapSuite. This guide will walk you through all of the changes and how to upgrade from 10.0 to 12.0 for your existing project. You can see an overview of these changes in the table below. ​  
 \\ \\
 \\ \\
  
-^      ^   ​MapSuite9.0 ​      ​^ ​  ​MapSuite 10.0       ​^ ​  MapSuite ​12.0          ^   ​Benefits ​      ^+^      ^   ​MapSuite9.0 ​      ​^ ​  ​MapSuite 10.0       ​^ ​  ThinkGeo ​12.0          ^   ​Benefits ​      ^
 | Core Functionality Assembly ​   |  MapSuiteCore.dll ​  ​| ​  Split into many assemblies ​       |  Merge many assemblies into ThinkGeo.Core.dll |  Get the features you need  | | Core Functionality Assembly ​   |  MapSuiteCore.dll ​  ​| ​  Split into many assemblies ​       |  Merge many assemblies into ThinkGeo.Core.dll |  Get the features you need  |
 | Core Functionality API    |   The MapSuiteCore'​s API is different from the API in iOS/​Android ​  ​| ​  Same across all the products ​  ​| ​ Same across all the products| ​ No need for multiple changes like before ​ | | Core Functionality API    |   The MapSuiteCore'​s API is different from the API in iOS/​Android ​  ​| ​  Same across all the products ​  ​| ​ Same across all the products| ​ No need for multiple changes like before ​ |
Line 19: Line 19:
 \\ \\
  
-===== Upgrade To Map Suite 12=====+===== Upgrade To ThinkGeo ​12=====
 \\ \\
 ==== Assembly Changes ==== ==== Assembly Changes ====
Line 27: Line 27:
 |MapSuiteCore.dll | ThinkGeo.MapSuite.Layers.ShapeFile.dll \\ ThinkGeo.MapSuite.Layers.GoogleMaps.dll \\ ThinkGeo.MapSuite.Styles.ClassBreak.dll \\ ThinkGeo.MapSuite.Shapes.UnmanagedProj4Projection.dll \\ ThinkGeo.MapSuite.Drawing.PdfGeoCanvas.dll\\ ....... ​   |ThinkGeo.Core.dll ​   | |MapSuiteCore.dll | ThinkGeo.MapSuite.Layers.ShapeFile.dll \\ ThinkGeo.MapSuite.Layers.GoogleMaps.dll \\ ThinkGeo.MapSuite.Styles.ClassBreak.dll \\ ThinkGeo.MapSuite.Shapes.UnmanagedProj4Projection.dll \\ ThinkGeo.MapSuite.Drawing.PdfGeoCanvas.dll\\ ....... ​   |ThinkGeo.Core.dll ​   |
 |WpfDesktopEdition.dll| ThinkGeo.MapSuite.Wpf.dll ​ \\  | ThinkGeo.UI.Wpf.dll ​       \\                | |WpfDesktopEdition.dll| ThinkGeo.MapSuite.Wpf.dll ​ \\  | ThinkGeo.UI.Wpf.dll ​       \\                |
 +|WebApiEdition.dll| ThinkGeo.MapSuite.WebApi.dll ​ \\  | ThinkGeo.UI.WebApi.dll ​       \\                |
 \\ \\
  
Line 36: Line 37:
 | ThinkGeo.MapSuite.Core |ThinkGeo.MapSuite contains common and basic classes for building Map Suite applications like GeographyUnit,​ GeoCollection,​ etc. \\ ThinkGeo.MapSuite.Drawing contains drawing-related classes likes GeoImage, GeoSolidBrush,​ etc \\ ThinkGeo.MapSuite.Layers contains some base classes like Layer, FeatureLayer,​ etc. \\ ThinkGeo.MapSuite.Shapes contains geometry-related classes likes PlygonShape,​ LineShape, etc.  \\ ThinkGeo.MapSuite.Styles contains classes used for building map styles like AreaStyle, LineStyle, etc. \\ ....... |ThinkGeo.Core ​      | | ThinkGeo.MapSuite.Core |ThinkGeo.MapSuite contains common and basic classes for building Map Suite applications like GeographyUnit,​ GeoCollection,​ etc. \\ ThinkGeo.MapSuite.Drawing contains drawing-related classes likes GeoImage, GeoSolidBrush,​ etc \\ ThinkGeo.MapSuite.Layers contains some base classes like Layer, FeatureLayer,​ etc. \\ ThinkGeo.MapSuite.Shapes contains geometry-related classes likes PlygonShape,​ LineShape, etc.  \\ ThinkGeo.MapSuite.Styles contains classes used for building map styles like AreaStyle, LineStyle, etc. \\ ....... |ThinkGeo.Core ​      |
 | ThinkGeo.MapSuite.WpfDesktopEdition|ThinkGeo.MapSuite.Wpf ​    ​|ThinkGeo.UI.Wpf ​     |  ​ | ThinkGeo.MapSuite.WpfDesktopEdition|ThinkGeo.MapSuite.Wpf ​    ​|ThinkGeo.UI.Wpf ​     |  ​
 +| ThinkGeo.MapSuite.WebApiEdition|ThinkGeo.MapSuite.WebApi ​    ​|ThinkGeo.UI.WebApi ​     |  ​
 \\ \\
 ==== API Changes ====  ==== API Changes ==== 
Line 65: Line 67:
 \\ \\
 \\ \\
-===== Upgrade To Map Suite 12 in Action ===== +===== Upgrade To ThinkGeo ​12 in Action ===== 
-Using the [[https://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_wpf_quick_start_guide | Desktop for Wpf Hello World quickstart sample]], here is a guide to upgrading to Map Suite 12.0: +Using the [[https://​wiki.thinkgeo.com/​wiki/​map_suite_desktop_for_wpf_quick_start_guide | Desktop for Wpf Hello World quickstart sample]], here is a guide to upgrading to ThinkGeo ​12.0: 
  
 \\ \\
Line 134: Line 136:
 Here are answers to some of the most common questions that we are asked about the MapSuite 12.0 upgrading. If you still have questions after reading these, feel free to post them our discussion forum. Our forums are monitored by our development staff in order to provide detailed and technical answers when you need them. Here are answers to some of the most common questions that we are asked about the MapSuite 12.0 upgrading. If you still have questions after reading these, feel free to post them our discussion forum. Our forums are monitored by our development staff in order to provide detailed and technical answers when you need them.
  
-==== How to use MapEngine ​MapSuite ​12.0? ====+==== How to use MapEngine ​ThinkGeo ​12.0? ====
 There is no MapEngine any more, there are two options for you: There is no MapEngine any more, there are two options for you:
   - If you use MapEngine to draw the layer. Please use layer to draw directly.;   - If you use MapEngine to draw the layer. Please use layer to draw directly.;
Line 142: Line 144:
   - If you still want to use MapEngine, we already make MapEngine opensource, please download this [[http://​wiki.thinkgeo.com/​wiki/​_media/​mapengine.zip|source file]].   - If you still want to use MapEngine, we already make MapEngine opensource, please download this [[http://​wiki.thinkgeo.com/​wiki/​_media/​mapengine.zip|source file]].
  
-If you want to know how to implement your feature with MapSuite ​12.0, please refer the samples in [[https://​github.com/​thinkgeo|GitHub]]+If you want to know how to implement your feature with ThinkGeo ​12.0, please refer the samples in [[https://​github.com/​thinkgeo|GitHub]]
  
 ==== Where is GdiPlusXXX? ==== ==== Where is GdiPlusXXX? ====
-The new name is GdiPlusGeoCanvas now is something like PlatformGeoCanvas,​ GdiPlusRasterLayer now is NativeImageRasterLayer on Windows.+ThinkGeo 12.0 is base on .NET core 3.0+ and .NET Framework 4.6.1+, so we use SkiaSharp instead of GdiPlus to render map. 
 + 
 +The new name is GdiPlusGeoCanvas now is something like PlatformGeoCanvas ​or SkiaGeoCanvas, GdiPlusRasterLayer now is NativeImageRasterLayer on Windows.
  
 ==== How to use the WorldMapKit?​ ==== ==== How to use the WorldMapKit?​ ====
 The OsmWorldMapKitLayer hadn't been supported in version 12. The OsmWorldMapKitLayer hadn't been supported in version 12.
  
-If you want to use WorldMapKit as background layer, please just choose ​ThinkGeoCloudRasterMapsOverlay ​instead of it+If you want to use WorldMapKit as background layer, please just choose ​ThinkGeoCloudRasterMapsLayer and ThinkGeoCloudVectorMapsLayer ​instead of it.
- +
-If you want to render the Sqlite database like original OsmWorldMapKitLayer,​ please just view this sample https://​github.com/​ThinkGeo/​WorldStreetsLayerSDKOnLinux-ForWinForms.+
  
-Upgrading to V12 is recommended,​ but if you want to use version 10 with WorldMapKitLayer,​ please view attached sample, you can double check the executable in bin folder and run directly, replace corresponding assembly to the project and it will works well. 
-[[http://​wiki.thinkgeo.com/​wiki/​_media/​worldmapkitsdk/​WorldMapKitTest.zip|WorldMapKitTest.zip]] 
  
 ==== How to process breaking change? ==== ==== How to process breaking change? ====
thinkgeo_12_upgrade_guide.txt · Last modified: 2020/07/28 19:17 by benbai