千家信息网

C#如何调用GoogleEarth COM API

发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,这篇文章主要为大家展示了"C#如何调用GoogleEarth COM API",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"C#如何调用GoogleEart
千家信息网最后更新 2025年02月07日C#如何调用GoogleEarth COM API

这篇文章主要为大家展示了"C#如何调用GoogleEarth COM API",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"C#如何调用GoogleEarth COM API"这篇文章吧。

一、C#调用GoogleEarth COM API准备

Google Earth提供了个人免费版、Plus版、Pro版,个人开发只安装个人免费版就可以了,如果需要更多的功能,那么只有每年上交$400购买专业版了

到目前为止,GoogleEarth的二次开发接口还比较少,功能太弱,仅仅提供了1.0的类库。

GoogleEarth COM API参考文档可以在这里找到:http://earth.google.com/comapi/index.html

C#调用COM的参考资料多如牛毛,大家可以到网上搜一下

二、C#调用GoogleEarth COM API例子

这里提供一个利用VS2008 + Google Earth 5.0开发一个"Hello world"程序

首先,确保已经正确安装GE,打开VS2008 ,新建一个Windows应用程序项目,在"项目"菜单中选择"添加引用…",切换到"COM"选项卡,选择"Google Earth 1.0 Type Library",其实就是Google Earth的主程序

在项目的引用中你可以看到已经添加了一个EARTHLib的引用,然后我们就可以调用其中的接口进行开发了。

下面就是小例子的代码(功能很简单,只有三个,打开GE,然后让GE保存一张截图,然后可以打开这个截图看看。呵呵)

// 功能:GE实例      // 描述:GE COM API 网址:http://earth.google.com/comapi/index.html         using System;   using System.Collections.Generic;   using System.ComponentModel;   using System.Data;  using System.Drawing;  using System.Text;  using System.Windows.Forms;  using EARTHLib;  using System.Runtime.InteropServices;  using System.IO;  using System.Diagnostics;   namespace GEDemo  {    public partial class Form1 : Form      {          ///          /// 标记GE是否已经启动          ///          private bool isGeStarted = false;          ///          /// 定义GE应用程序类          ///          private ApplicationGEClass GeApp;           public Form1()          {              InitializeComponent();          }           private void button1_Click(object sender, EventArgs e)          {              StartGE();           }           ///            /// 启动GE          ///          private void StartGE()          {              if (isGeStarted)              {                  return;              }               try             {                  GeApp = (ApplicationGEClass)Marshal.GetActiveObject("GoogleEarth.Application");                   isGeStarted = true;              }              catch               {                 GeApp = new ApplicationGEClass();                   isGeStarted = true;              }          }           private void button2_Click(object sender, EventArgs e)           {              string ssFile = Path.Combine(Application.StartupPath, "ScreenShot.jpg");               try             {                 //quality的取值范围在(0,100)之间,质量越高,quality越大                  GeApp.SaveScreenShot(ssFile, 100);                   MessageBox.Show("成功保存截屏图像:" + ssFile);              }              catch(Exception ex)              {                  MessageBox.Show("保存截屏图像时发生错误:" + ex.Message);              }          }           private void button3_Click(object sender, EventArgs e)          {             string ssFile = Path.Combine(Application.StartupPath, "ScreenShot.jpg");                 if (!File.Exists(ssFile))              {                  MessageBox.Show("未能找到保存的截屏图像!");                  return;              }               Process.Start(ssFile);          }           private void button4_Click(object sender, EventArgs e)          {              this.Close();              Application.Exit();          }       }  }

以上是"C#如何调用GoogleEarth COM API"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

C# 功能 开发 个人 内容 图像 程序 篇文章 项目 例子 只有 就是 应用程序 截图 接口 更多 免费版 参考 学习 帮助 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库1元订单什么意思 数据库一个表能存多少数据 博科b8标准版数据库 小学生网络安全活动图片 中国航运数据库邮箱格式 green服务器怎么填写 软件开发公司收费 浏览器服务器已经停止响应 怀柔区技术软件开发服务价钱 sql数据库的详细信息怎么查看 神州泰岳网络技术公司 网络安全教育学后感 贯彻落实网络安全四个坚持 服务器内存条有没有电阻的区别 考证软件开发 新乡市鱼人网络技术有限公司 学网络技术短时间 花生壳 数据库 怎么用 旭旭宝宝斗鱼服务器瘫痪了 数据库备份文件夹拒绝访问 php 数据库配置文件 千人基因组数据库怎么看 东莞睿尚网络技术有限公司 网络安全心理健康主题班会 高二网络技术获奖教案 护苗网络安全课堂具体内容 诺尔丹上海软件开发 阿里云服务器能搞几个ip 上海运营计算机网络技术服务系统 jsp操作数据库
0