程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#調用Google Earth Com API開發(一)(2)

C#調用Google Earth Com API開發(一)(2)

編輯:關於C語言
1: // 功能:GE實例
2: // 描述:GE COM API 網址:http://earth.google.com/comapi/index.Html
3: // 作者:溫偉鵬
4: // 日期:2008-01-20
5:
6: using System;
7: using System.Collections.Generic;
8: using System.ComponentModel;
9: using System.Data;
10: using System.Drawing;
11: using System.Text;
12: using System.Windows.Forms;
13: using EARTHLib;
14: using System.Runtime.InteropServices;
15: using System.IO;
16: using System.Diagnostics;
17:
18: namespace GEDemo
19: {
20:   public partial class Form1 : Form
21:   {
22:     /// <summary>
23:     /// 標記GE是否已經啟動
24:     /// </summary>
25:     private bool isGeStarted = false;
26:     /// <summary>
27:     /// 定義GE應用程序類
28:     /// </summary>
29:     private ApplicationGEClass GeApp;
30:
31:     public Form1()
32:     {
33:       InitializeComponent();
34:     }
35:
36:     private void button1_Click(object sender, EventArgs e)
37:     {
38:       StartGE();
39:     }
40:
41:     /// <summary>
42:     /// 啟動GE
43:     /// </summary>
44:     private void StartGE()
45:     {
46:       if (isGeStarted)
47:       {
48:         return;
49:       }
50:
51:       try
52:       {
53:         GeApp = (ApplicationGEClass)Marshal.GetActiveObject ("GoogleEarth.Application");
54:
55:         isGeStarted = true;
56:       }
57:       catch
58:       {
59:         GeApp = new ApplicationGEClass();
60:
61:         isGeStarted = true;
62:       }
63:     }
64:
65:     private void button2_Click(object sender, EventArgs e)
66:     {
67:       string ssFile = Path.Combine(Application.StartupPath,  "ScreenShot.jpg");
68:
69:       try
70:       {
71:         //quality的取值范圍在(0,100)之間,質量越高,quality越大
72:         GeApp.SaveScreenShot(ssFile, 100);
73:
74:         MessageBox.Show("成功保存截屏圖像:" + ssFile);
75:       }
76:       catch(Exception ex)
77:       {
78:         MessageBox.Show("保存截屏圖像時發生錯誤:" + ex.Message);
79:       }
80:     }
81:
82:     private void button3_Click(object sender, EventArgs e)
83:     {
84:       string ssFile = Path.Combine(Application.StartupPath,  "ScreenShot.jpg");
85:
86:       if (!File.Exists(ssFile))
87:       {
88:         MessageBox.Show("未能找到保存的截屏圖像!");
89:         return;
90:       }
91:
92:       Process.Start(ssFile);
93:     }
94:
95:     private void button4_Click(object sender, EventArgs e)
96:     {
97:       this.Close();
98:       Application.Exit();
99:     }
100:
101:   }
102: }
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved