├── .gitignore ├── .tfignore ├── GeoSOS For ArcGIS 10.X.sln ├── GeoSOS.Algorithms ├── ArtificalNeuralNetwork.cs ├── DecisionTree.cs ├── GeoSOS.Algorithms.csproj ├── LogisticRegression.cs └── Properties │ └── AssemblyInfo.cs ├── GeoSOS.ArcMapAddin ├── Config.Designer.cs ├── Config.esriaddinx ├── GeoSOS.ArcMapAddIn.csproj ├── Images │ ├── ButtonANNCA.png │ ├── ButtonAbout.png │ ├── ButtonDTCA.png │ ├── ButtonGraphyWindow.png │ ├── ButtonHistoricalTrends.png │ ├── ButtonImagesCompare.png │ ├── ButtonLogisticCA.png │ ├── ButtonManual.png │ ├── ButtonOutputWindow.png │ ├── ButtonPause.png │ ├── ButtonReStart.png │ ├── ButtonSimulationConfiguration.png │ ├── ButtonStart.png │ ├── ButtonStop.png │ ├── ClearText.png │ ├── DockableAreaOptimization.png │ ├── DockableWindowGrphy.png │ ├── DockableWindowOutput.png │ ├── GeoSOS ArcMapAddin.png │ └── saveText.png ├── Properties │ ├── AssemblyInfo.cs │ ├── Resource_en.Designer.cs │ ├── Resource_en.resx │ ├── Resource_zh_CHS.Designer.cs │ ├── Resource_zh_CHS.resx │ ├── Resources.Designer.cs │ └── Resources.resx ├── Resources │ ├── Help.png │ ├── Info.png │ └── Welcome.png ├── UI │ ├── Buttons │ │ ├── ButtonANNCA.cs │ │ ├── ButtonAbout.cs │ │ ├── ButtonAreaOptimization.cs │ │ ├── ButtonDTCA.cs │ │ ├── ButtonGraphyWindow.cs │ │ ├── ButtonHistoricalTrends.cs │ │ ├── ButtonImagesCompare.cs │ │ ├── ButtonLogisticCA.cs │ │ ├── ButtonOutputWindow.cs │ │ ├── ButtonPause.cs │ │ ├── ButtonReStart.cs │ │ ├── ButtonSimulationConfiguration.cs │ │ ├── ButtonStart.cs │ │ ├── ButtonStop.cs │ │ └── ButtonUserManual.cs │ ├── DockableWindows │ │ ├── DockableWindowAreaOptimization.Designer.cs │ │ ├── DockableWindowAreaOptimization.cs │ │ ├── DockableWindowAreaOptimization.resx │ │ ├── DockableWindowGraphy.cs │ │ ├── DockableWindowGraphy.designer.cs │ │ ├── DockableWindowGraphy.resx │ │ ├── DockableWindowOutput.Designer.cs │ │ ├── DockableWindowOutput.cs │ │ ├── DockableWindowOutput.en.resx │ │ └── DockableWindowOutput.resx │ ├── Forms │ │ ├── FormACOOutput.Designer.cs │ │ ├── FormACOOutput.cs │ │ ├── FormACOOutput.resx │ │ ├── FormACOParameters.Designer.cs │ │ ├── FormACOParameters.cs │ │ ├── FormACOParameters.resx │ │ ├── FormACOUtility.Designer.cs │ │ ├── FormACOUtility.cs │ │ ├── FormACOUtility.resx │ │ ├── FormAbout.Designer.cs │ │ ├── FormAbout.cs │ │ ├── FormAbout.en.resx │ │ ├── FormAbout.resx │ │ ├── FormConfusionMatrix.Designer.cs │ │ ├── FormConfusionMatrix.cs │ │ ├── FormConfusionMatrix.en.resx │ │ ├── FormConfusionMatrix.resx │ │ ├── FormImagesCompare.Designer.cs │ │ ├── FormImagesCompare.cs │ │ ├── FormImagesCompare.resx │ │ ├── FormLandUSeHistory.Designer.cs │ │ ├── FormLandUSeHistory.cs │ │ ├── FormLandUSeHistory.resx │ │ ├── FormManual.Designer.cs │ │ ├── FormManual.cs │ │ ├── FormManual.en.resx │ │ ├── FormManual.resx │ │ ├── FormSimulationSetting.Designer.cs │ │ ├── FormSimulationSetting.cs │ │ ├── FormSimulationSetting.en.resx │ │ ├── FormSimulationSetting.resx │ │ ├── FormVariables.Designer.cs │ │ ├── FormVariables.cs │ │ ├── FormVariables.en.resx │ │ └── FormVariables.resx │ └── WizardFroms │ │ ├── ANNCAWizard.Designer.cs │ │ ├── ANNCAWizard.cs │ │ ├── ANNCAWizard.en.resx │ │ ├── ANNCAWizard.resx │ │ ├── ANNCAWizard.zh-CN.resx │ │ ├── DTCAWizard.Designer.cs │ │ ├── DTCAWizard.cs │ │ ├── DTCAWizard.en.resx │ │ ├── DTCAWizard.resx │ │ ├── DTCAWizard.zh-CN.resx │ │ ├── LogisticCAWizard.Designer.cs │ │ ├── LogisticCAWizard.cs │ │ ├── LogisticCAWizard.en.resx │ │ ├── LogisticCAWizard.resx │ │ └── LogisticCAWizard.zh-CN.resx ├── Utility │ ├── EnumCurrentModel.cs │ ├── IGeoSimulation.cs │ ├── Optimization │ │ └── Area │ │ │ ├── Ant.cs │ │ │ └── AreaOptimizationACO.cs │ └── Simulation │ │ └── CA │ │ ├── ANNCA.cs │ │ ├── DecisionTreeCA.cs │ │ └── LogisticRegreesionCA.cs └── VariableMaintainer.cs ├── GeoSOS.GeneralLibrary ├── ArcGISOperator.cs ├── GeneralOpertor.cs ├── GeoSOS.CommonLibrary.csproj ├── LandUseClassificationInfo.cs ├── NeighbourOperator.cs ├── Properties │ ├── AssemblyInfo.cs │ ├── Resource_en.Designer.cs │ ├── Resource_en.resx │ ├── Resource_zh_CHS.Designer.cs │ └── Resource_zh_CHS.resx ├── RasterSampling.cs └── Struct │ ├── StructACOParameters.cs │ ├── StructConfusionMatrix.cs │ ├── StructLanduseInfo.cs │ ├── StructLanduseInfoAndCount.cs │ └── StructRasterMetaData.cs ├── LICENSE ├── OpenSouceControls ├── Accord.Controls.dll ├── Accord.MachineLearning.dll ├── Accord.Math.Core.dll ├── Accord.Math.dll ├── Accord.Neuro.dll ├── Accord.Statistics.dll ├── Accord.dll ├── Evaluant.Antlr.dll ├── Evaluant.Calculator.dll ├── License.txt ├── WizardControls.dll ├── ZedGraph.dll └── log4net.dll ├── README.md └── WizardControls ├── AssemblyInfo.cs ├── Wizard.cs ├── Wizard.resx ├── WizardControls.csproj ├── WizardPage.cs ├── WizardPage.resx └── WizardPagesCollection.cs /.gitignore: -------------------------------------------------------------------------------- 1 | Thumbs.db 2 | *.obj 3 | *.exe 4 | *.pdb 5 | *.user 6 | *.aps 7 | *.pch 8 | *.vspscc 9 | *_i.c 10 | *_p.c 11 | *.ncb 12 | *.suo 13 | *.sln.docstates 14 | *.tlb 15 | *.tlh 16 | *.bak 17 | *.cache 18 | *.ilk 19 | *.log 20 | [Bb]in 21 | [Dd]ebug*/ 22 | *.lib 23 | *.sbr 24 | obj/ 25 | [Rr]elease*/ 26 | _ReSharper*/ 27 | [Tt]est[Rr]esult* 28 | *.vssscc 29 | $tf*/ -------------------------------------------------------------------------------- /.tfignore: -------------------------------------------------------------------------------- 1 | \.git -------------------------------------------------------------------------------- /GeoSOS For ArcGIS 10.X.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 11.00 3 | # Visual Studio 2010 4 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GeoSOS.ArcMapAddIn", "GeoSOS.ArcMapAddin\GeoSOS.ArcMapAddIn.csproj", "{5C29055C-EE91-4946-8E24-4A795DBABA54}" 5 | EndProject 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GeoSOS.Algorithms", "GeoSOS.Algorithms\GeoSOS.Algorithms.csproj", "{1920B3D6-F9EE-42E6-9A8C-92D263972E4A}" 7 | EndProject 8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GeoSOS.CommonLibrary", "GeoSOS.GeneralLibrary\GeoSOS.CommonLibrary.csproj", "{C4F38566-274B-4B5B-B9D0-00B59B59F1AC}" 9 | EndProject 10 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WizardControls", "WizardControls\WizardControls.csproj", "{870C7D59-F59B-44D1-961E-C4341DAA5306}" 11 | EndProject 12 | Global 13 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 14 | Debug|Any CPU = Debug|Any CPU 15 | Release|Any CPU = Release|Any CPU 16 | EndGlobalSection 17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 18 | {5C29055C-EE91-4946-8E24-4A795DBABA54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 19 | {5C29055C-EE91-4946-8E24-4A795DBABA54}.Debug|Any CPU.Build.0 = Debug|Any CPU 20 | {5C29055C-EE91-4946-8E24-4A795DBABA54}.Release|Any CPU.ActiveCfg = Release|Any CPU 21 | {5C29055C-EE91-4946-8E24-4A795DBABA54}.Release|Any CPU.Build.0 = Release|Any CPU 22 | {1920B3D6-F9EE-42E6-9A8C-92D263972E4A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 23 | {1920B3D6-F9EE-42E6-9A8C-92D263972E4A}.Debug|Any CPU.Build.0 = Debug|Any CPU 24 | {1920B3D6-F9EE-42E6-9A8C-92D263972E4A}.Release|Any CPU.ActiveCfg = Release|Any CPU 25 | {1920B3D6-F9EE-42E6-9A8C-92D263972E4A}.Release|Any CPU.Build.0 = Release|Any CPU 26 | {C4F38566-274B-4B5B-B9D0-00B59B59F1AC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 27 | {C4F38566-274B-4B5B-B9D0-00B59B59F1AC}.Debug|Any CPU.Build.0 = Debug|Any CPU 28 | {C4F38566-274B-4B5B-B9D0-00B59B59F1AC}.Release|Any CPU.ActiveCfg = Release|Any CPU 29 | {C4F38566-274B-4B5B-B9D0-00B59B59F1AC}.Release|Any CPU.Build.0 = Release|Any CPU 30 | {870C7D59-F59B-44D1-961E-C4341DAA5306}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 31 | {870C7D59-F59B-44D1-961E-C4341DAA5306}.Debug|Any CPU.Build.0 = Debug|Any CPU 32 | {870C7D59-F59B-44D1-961E-C4341DAA5306}.Release|Any CPU.ActiveCfg = Release|Any CPU 33 | {870C7D59-F59B-44D1-961E-C4341DAA5306}.Release|Any CPU.Build.0 = Release|Any CPU 34 | EndGlobalSection 35 | GlobalSection(SolutionProperties) = preSolution 36 | HideSolutionNode = FALSE 37 | EndGlobalSection 38 | EndGlobal 39 | -------------------------------------------------------------------------------- /GeoSOS.Algorithms/ArtificalNeuralNetwork.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Windows.Forms; 6 | using Accord.Neuro.Learning; 7 | using Accord.Neuro; 8 | using ZedGraph; 9 | using GeoSOS.CommonLibrary; 10 | 11 | namespace GeoSOS.Algorithms 12 | { 13 | public class ArtificalNeuralNetwork 14 | { 15 | private ActivationNetwork network; 16 | 17 | public ActivationNetwork ANNActivationNetwork 18 | { 19 | get { return network; } 20 | } 21 | 22 | public double TarinNetwork(float[][] inputs,float[][] outputs, int samplingCellsCount, int inputNeuronsCount, 23 | int outputNeuronsCount,int hiddenLayerNeuronsCount, double learningRate, 24 | int iterations, System.Windows.Forms.Label labelTrainTest, System.Windows.Forms.Label labelTrainningAccuracy, 25 | System.Windows.Forms.Label labelValidationAccuracy,ZedGraphControl zedGraphControl) 26 | { 27 | network = new ActivationNetwork( 28 | new SigmoidFunction(), inputNeuronsCount, hiddenLayerNeuronsCount, outputNeuronsCount); 29 | ParallelResilientBackpropagationLearning teacher = new ParallelResilientBackpropagationLearning(network); 30 | teacher.LearningRate = learningRate; 31 | 32 | double[][] trainInput = GeneralOpertor.GetArray(inputs, 0.8, true, inputNeuronsCount); 33 | double[][] testInput = GeneralOpertor.GetArray(inputs, 0.8, false, inputNeuronsCount); 34 | double[][] trainOutput = GeneralOpertor.GetArray(outputs, 0.8, true, outputNeuronsCount); 35 | double[][] testOutput = GeneralOpertor.GetArray(outputs, 0.8, false, outputNeuronsCount); 36 | 37 | int iteration = 0; 38 | double error = 1; 39 | 40 | zedGraphControl.GraphPane.CurveList.Clear(); 41 | PointPairList list = new PointPairList(); 42 | 43 | while ((error > 0.01) && (iteration <= iterations)) 44 | { 45 | error = teacher.RunEpoch(trainInput, trainOutput) * 2 / samplingCellsCount; 46 | if (iteration == 0) 47 | { 48 | list.Add(iteration, error); 49 | zedGraphControl.GraphPane.AddCurve("Error", list, System.Drawing.Color.FromArgb(255,0,0)); 50 | zedGraphControl.GraphPane.AxisChange(); 51 | } 52 | else if ((iteration % 30 == 0)||(iteration == iterations)) 53 | { 54 | zedGraphControl.GraphPane.CurveList[0].AddPoint (iteration, error); 55 | zedGraphControl.GraphPane.AxisChange(); 56 | labelTrainTest.Text = "Iteration:" + iteration + ", Error:" + error.ToString("0.00000"); 57 | Application.DoEvents(); 58 | } 59 | zedGraphControl.Refresh(); 60 | iteration++; 61 | } 62 | 63 | double accuracy = GetAccuracy(trainInput, trainOutput, network); 64 | labelTrainningAccuracy.Text = (accuracy * 100).ToString("0.000") + " %"; 65 | accuracy = GetAccuracy(testInput, testOutput, network); 66 | labelValidationAccuracy.Text = (accuracy * 100).ToString("0.000") + " %"; 67 | 68 | return error; 69 | } 70 | 71 | private double GetAccuracy(double[][] input, double[][] output, ActivationNetwork network) 72 | { 73 | double accuracy = 0d; 74 | double numCorrect = 0d; 75 | double numWrong = 0d; 76 | for (int i = 0; i < output.Length; i++) 77 | { 78 | double[] t = network.Compute(input[i]); 79 | int maxIndex = MaxIndex(t); // which cell in yValues has largest value? 80 | 81 | double[] r = output[i]; 82 | if (r[maxIndex] == 1.0) // ugly. consider AreEqual(double x, double y) 83 | ++numCorrect; 84 | else 85 | ++numWrong; 86 | } 87 | accuracy = numCorrect / (numCorrect + numWrong); 88 | return accuracy; 89 | } 90 | 91 | private int MaxIndex(double[] vector) // helper for Accuracy() 92 | { 93 | // index of largest value 94 | int bigIndex = 0; 95 | double biggestVal = vector[0]; 96 | for (int i = 0; i < vector.Length; ++i) 97 | { 98 | if (vector[i] > biggestVal) 99 | { 100 | biggestVal = vector[i]; bigIndex = i; 101 | } 102 | } 103 | return bigIndex; 104 | } 105 | } 106 | } 107 | -------------------------------------------------------------------------------- /GeoSOS.Algorithms/DecisionTree.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Windows.Forms; 6 | using Accord.MachineLearning.DecisionTrees; 7 | using Accord.MachineLearning.DecisionTrees.Learning; 8 | using Accord.Controls; 9 | using Accord.Statistics.Analysis; 10 | 11 | namespace GeoSOS.Algorithms 12 | { 13 | public class DecisionTreeGenerator 14 | { 15 | public DecisionTree GenerateDecisionTree(int inputsCount,ref double[][] inputs,ref int[] outputs, 16 | int outputClassNum,List listVariablesName,int neiWindowSize, int landuseTypesCount) 17 | { 18 | DecisionVariable[] variable = new DecisionVariable[inputsCount]; 19 | 20 | for(int i=0;i 2 | 3 | 4 | Debug 5 | AnyCPU 6 | 8.0.30703 7 | 2.0 8 | {1920B3D6-F9EE-42E6-9A8C-92D263972E4A} 9 | Library 10 | Properties 11 | GeoSOS.Algorithms 12 | GeoSOS.Algorithms 13 | v3.5 14 | 512 15 | 16 | 17 | 18 | true 19 | full 20 | false 21 | ..\Bin\Debug\ 22 | DEBUG;TRACE 23 | prompt 24 | 4 25 | false 26 | 27 | 28 | pdbonly 29 | true 30 | ..\Bin\Release\ 31 | TRACE 32 | prompt 33 | 4 34 | false 35 | 36 | 37 | true 38 | bin\x86\Debug\ 39 | DEBUG;TRACE 40 | full 41 | AnyCPU 42 | bin\Debug\GeoSOS.Algorithms.dll.CodeAnalysisLog.xml 43 | true 44 | GlobalSuppressions.cs 45 | prompt 46 | MinimumRecommendedRules.ruleset 47 | ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets 48 | true 49 | ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules 50 | true 51 | false 52 | 53 | 54 | bin\x86\Release\ 55 | TRACE 56 | true 57 | pdbonly 58 | x86 59 | bin\Release\GeoSOS.Algorithms.dll.CodeAnalysisLog.xml 60 | true 61 | GlobalSuppressions.cs 62 | prompt 63 | MinimumRecommendedRules.ruleset 64 | ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets 65 | true 66 | ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules 67 | true 68 | false 69 | 70 | 71 | 72 | False 73 | ..\OpenSouceControls\Accord.dll 74 | 75 | 76 | False 77 | ..\OpenSouceControls\Accord.Controls.dll 78 | 79 | 80 | False 81 | ..\OpenSouceControls\Accord.MachineLearning.dll 82 | 83 | 84 | False 85 | ..\OpenSouceControls\Accord.Math.dll 86 | 87 | 88 | False 89 | ..\OpenSouceControls\Accord.Math.Core.dll 90 | 91 | 92 | False 93 | ..\OpenSouceControls\Accord.Neuro.dll 94 | 95 | 96 | False 97 | ..\OpenSouceControls\Accord.Statistics.dll 98 | 99 | 100 | ..\OpenSouceControls\log4net.dll 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | False 112 | ..\OpenSouceControls\ZedGraph.dll 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | {c4f38566-274b-4b5b-b9d0-00b59b59f1ac} 124 | GeoSOS.CommonLibrary 125 | 126 | 127 | 128 | 129 | 136 | -------------------------------------------------------------------------------- /GeoSOS.Algorithms/LogisticRegression.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using Accord.Statistics.Analysis; 6 | 7 | namespace GeoSOS.Algorithms 8 | { 9 | public class LogisticRegression 10 | { 11 | public void LogisticRegresssionAanlysis(float[,] datas,int rowCount,int columnCount, out double[] coef, 12 | out double[] odds, out double[] stde, out double[]min, out double[] max) 13 | { 14 | double[][] inputs = new double[rowCount][]; 15 | double[] outputs = new double[rowCount]; 16 | 17 | //根据给定的数据得到输入、输出数组 18 | SetInputAndOutputData(datas, rowCount, columnCount, ref inputs, ref outputs); 19 | 20 | // Create a Logistic Regression analysis 21 | var regression = new LogisticRegressionAnalysis(); 22 | 23 | regression.Learn(inputs, outputs); 24 | //regression.Compute(); // compute the analysis. 25 | 26 | // We can also investigate all parameters individually. For 27 | // example the coefficients values will be available at the 28 | // vector 29 | coef = regression.CoefficientValues; 30 | 31 | // The first value refers to the model's intercept term. We 32 | // can also retrieve the odds ratios and standard errors: 33 | odds = regression.OddsRatios; 34 | stde = regression.StandardErrors; 35 | 36 | //得到置信区间 37 | Accord.DoubleRange[] confidence = regression.Confidences; 38 | min = new double[confidence.Length]; 39 | max = new double[confidence.Length]; 40 | for (int i = 0; i < confidence.Length; i++) 41 | { 42 | min[i] = confidence[i].Min; 43 | max[i] = confidence[i].Max; 44 | } 45 | } 46 | 47 | private void SetInputAndOutputData(float[,] sampledDatas, int rowCount, int columnCount, ref double[][] inputs, ref double[] outputs) 48 | { 49 | double[] rowValueArray; 50 | for (int i = 0; i < rowCount; i++) 51 | { 52 | rowValueArray = new double[columnCount - 1]; 53 | for (int j = 0; j < columnCount - 1; j++) 54 | { 55 | rowValueArray[j] = Convert.ToDouble(sampledDatas[i,j]); 56 | } 57 | inputs[i] = rowValueArray; 58 | outputs[i] = Convert.ToDouble(sampledDatas[i,columnCount - 1]); 59 | } 60 | } 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /GeoSOS.Algorithms/Properties/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using System.Runtime.CompilerServices; 3 | using System.Runtime.InteropServices; 4 | 5 | // 有关程序集的常规信息通过以下 6 | // 特性集控制。更改这些特性值可修改 7 | // 与程序集关联的信息。 8 | [assembly: AssemblyTitle("GeoSOS.Algorithms")] 9 | [assembly: AssemblyDescription("")] 10 | [assembly: AssemblyConfiguration("")] 11 | [assembly: AssemblyCompany("")] 12 | [assembly: AssemblyProduct("GeoSOS.Algorithms")] 13 | [assembly: AssemblyCopyright("Copyright © 2016")] 14 | [assembly: AssemblyTrademark("")] 15 | [assembly: AssemblyCulture("")] 16 | 17 | // 将 ComVisible 设置为 false 使此程序集中的类型 18 | // 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型, 19 | // 则将该类型上的 ComVisible 特性设置为 true。 20 | [assembly: ComVisible(false)] 21 | 22 | // 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID 23 | [assembly: Guid("7126333a-2084-4cbe-a04e-3a56325bc6a5")] 24 | 25 | // 程序集的版本信息由下面四个值组成: 26 | // 27 | // 主版本 28 | // 次版本 29 | // 内部版本号 30 | // 修订号 31 | // 32 | // 可以指定所有这些值,也可以使用“内部版本号”和“修订号”的默认值, 33 | // 方法是按如下所示使用“*”: 34 | // [assembly: AssemblyVersion("1.0.*")] 35 | [assembly: AssemblyVersion("1.0.0.0")] 36 | [assembly: AssemblyFileVersion("1.0.0.0")] 37 | -------------------------------------------------------------------------------- /GeoSOS.ArcMapAddin/Config.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GeoSOSDevelopers/GeoSOSforArcGIS/774e56aa92d6e9d870e82a4064f8dc7c0afb04a8/GeoSOS.ArcMapAddin/Config.Designer.cs -------------------------------------------------------------------------------- /GeoSOS.ArcMapAddin/Config.esriaddinx: -------------------------------------------------------------------------------- 1 |  2 | GeoSOS for ArcGIS 3 | {ea3e103b-fc5c-4eeb-bf28-d7e59875f0ba} 4 | This is an ArcMap Add-In provides GeoSOS CA (Cellular Automata) simulation functions and area optimization function. 5 | 2.1.0a 6 | Images\GeoSOS ArcMapAddIn.png 7 | Dr. Dan Li, Prof. Xia Li 8 | Prof. Xia Li 9 | 2016/10/4 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |