`

Google Earth 开发示例(Hello World)

阅读更多
Google Earth Hello World 示例
<html>
  <head>
    <title>Hello Google Earth!</title>
    <!-- *** Replace the key below below with your own API key, available at http://code.google.com/apis/maps/signup.html *** -->
    <script src="http://www.google.com/jsapi?key=ABQIAAAA4ZZxnijCQhlZlf57igoGExTwM0brOpm-All5BF6PoaKBxRWWERR0mYEVnCnlZi8Qmoq3uoivZ9cIgQ";></script>
    <script>
//google.load("earth", "1");
google.load('earth', '1');
var ge = null;
/**
	Init
*/
function init() {
  google.earth.setLanguage('zh_CN');
  google.earth.createInstance("map3d", initCallback, failureCallback);

}
/*
	Call Back
*/
function initCallback(object) {
  ge = object;
 /*
	LAYER_BORDERS - shows country and area borders, and place labels for cities, states, countries, oceans, etc
	LAYER_BUILDINGS - 3D buildings
	LAYER_BUILDINGS_LOW_RESOLUTION - grey buildings (non-photorealistic). Note that this does not contain copies of photorealistic buildings; rather, it includes				buildings that do not yet exist in the photorealistic buildings layer. As photorealistic versions of grey buildings are created, the buildings will be added			to LAYER_BUILDINGS and removed from LAYER_BUILDINGS_LOW_RESOLUTION.
	LAYER_ROADS - displays roads and road names
	LAYER_TERRAIN - 3D terrain
	LAYER_TREES - 3D tree models
*/
  ge.getLayerRoot().enableLayerById(ge.LAYER_BORDERS, true);
  ge.getLayerRoot().enableLayerById(ge.LAYER_BUILDINGS, true);
  ge.getLayerRoot().enableLayerById(ge.LAYER_BUILDINGS_LOW_RESOLUTION, true);
  ge.getLayerRoot().enableLayerById(ge.LAYER_ROADS, true);
  ge.getLayerRoot().enableLayerById(ge.LAYER_TERRAIN, true);
  ge.getLayerRoot().enableLayerById(ge.LAYER_TREES, true);

	/*
	ge.VISIBILITY_SHOW
	ge.VISIBILITY_HIDE
	ge.VISIBILITY_AUTO
	*/
  ge.getNavigationControl().setVisibility(ge.VISIBILITY_AUTO);
	//parseKmlString(ge);

  ge.getWindow().setVisibility(true);

}

function parseKmlString(ge){
	var kmlString = ''
			+ '<?xml version="1.0" encoding="UTF-8"?>'
			+ '<kml xmlns="http://www.opengis.net/kml/2.2">'
			+ '<Document>'              + '  <Camera>' 
			+ '    <longitude>-122.444633</longitude>' 
			+ '    <latitude>37.801899</latitude>' 
			+ '    <altitude>139.629438</altitude>' 
			+ '    <heading>-70.0</heading>' 
			+ '    <tilt>75</tilt>' 
			+ '  </Camera>'
			+ '  <Placemark>'
			+ '    <name>Placemark from KML string</name>'
			+ '    <Point>'
			+ '      <coordinates>-122.448425,37.802907,0</coordinates>'
			+ '    </Point>'
			+ '  </Placemark>'
			+ '</Document>'
			+ '</kml>';
	var kmlObject = ge.parseKml(kmlString);
	ge.getFeatures().appendChild(kmlObject);

}

/*CallBack*/
function failureCallback(object) {

}


var placemark = ge.createPlacemark('');

placemark.setName("You are at Google");

ge.getFeatures().appendChild(placemark);


// Create style map for placemark

var normal = ge.createIcon('');

normal.setHref('http://maps.google.com/mapfiles/kml/paddle/red-circle.png');

var iconNormal = ge.createStyle('');

iconNormal.getIconStyle().setIcon(normal);

var highlight = ge.createIcon('');

highlight.setHref('http://maps.google.com/mapfiles/kml/paddle/red-circle.png');

var iconHighlight = ge.createStyle('');

iconHighlight.getIconStyle().setIcon(highlight);

var styleMap = ge.createStyleMap('');

styleMap.setNormalStyle(iconNormal);

styleMap.setHighlightStyle(iconHighlight);

placemark.setStyleSelector(styleMap);
  

// Create point

var la = ge.getView().copyAsLookAt(ge.ALTITUDE_RELATIVE_TO_GROUND);

var point = ge.createPoint('');

point.setLatitude(la.getLatitude());

point.setLongitude(la.getLongitude());

placemark.setGeometry(point);


</script>
  </head>
  <body onload='init()';


      <div>
        He Nan Qi Xiang
      </div>

      <div id='map3d_container'
           style='border: 1px solid silver; height: 600px; width: 800px;'>
        <div id='map3d' style='height: 100%;'></div>
      </div>
  </body>

</html>

 

分享到:
评论

相关推荐

    HelloWorld

    【标题】"HelloWorld"揭示了这是一个基础的编程示例,通常用于教学目的,让学习者了解如何在特定环境中创建并运行第一个“Hello, World!”程序。在Windows CE(简称WinCE)操作系统中,这样的程序有助于新手理解基本...

    OSG_3.2+osgEarth_2.5+osgOcean_1.0.1+VPB+CEGUI_0.8.4.zip

    6. 编写和运行示例:一旦所有组件都安装完毕,你可以从osgEarth的示例代码开始学习,了解如何加载地形、添加标记、处理KML数据等。 7. 开发自定义应用:根据项目需求,利用osgEarth提供的API和工具开发自己的地理...

    谷歌地图开发快速入门

    综上,开发者可以通过这些资源学习如何使用Google Maps API来创建个性化地图应用,从基础的"Hello World"程序到复杂的地图交互功能,都能得到详尽的指导和支持。在实践中不断学习和优化,将使你的地图应用更加出色。

    helloworldmakefile.rar

    在Linux环境下,只需在终端输入`make`命令,`makefile`就会按照设定自动编译并链接所有的源文件,生成`helloworld`可执行文件。 总结一下,`helloworldmakefile.rar`的内容是一个简单的C++程序,展示了如何使用`...

    EE14 Strings.docx

    // 输出: HelloWorld! ``` - **参数**: `string1` 和 `string2` 分别是要连接的两个字符串对象。 - **返回值**: 连接后的字符串。 ##### 2. 替换字符串 (`string.replace`) ```javascript // 在字符串中替换指定...

    qt基础入门经典手册(基础篇)

    - 广泛应用:被众多知名企业和组织使用,例如 Autodesk、Google Earth、Adobe Photoshop Album 等。 - 支持多种编程语言:通过语言绑定,可以使用除了 C++ 之外的语言进行开发。 #### 二、Qt的历史与发展 - **...

    vb 字符串函数大全

    **示例**: 如果`expression = "Hello World"`且`find = "World"`,那么`Replace(expression, find, "Earth")`的结果是`"Hello Earth"`。 --- ##### 10. Trim([left|right|both] string) **功能**: 删除字符串两端...

    Qt4 GUI introduction

    它被众多知名公司和组织采用,包括Autodesk、Google Earth、KDE、Adobe Photoshop Album、欧洲太空总署、OPIE、Skype、VLC媒体播放器、三星集团、飞利浦、Panasonic以及VirtualBox等。 Qt支持多种编程语言,除了C++...

    asp.net正则使用示例

    string input = "Hello, world!"; string output = regex.Replace(input, "Greetings, Earth!"); ``` 在这个例子中,"Hello, world!"会被替换为"Greetings, Earth!"。 7. **分组构造器**: 如果正则表达式模式...

    Google_Maps_Cheat_Sheet.pdf

    &lt;img src="http://maps.google.com/staticmap?center=49.841272,18.290248&zoom=10&size=140x70" alt="Hello, World of Google Maps"&gt; ``` - **参数解释**: - `center`:指定地图中心的经纬度坐标。 - `zoom`...

    js字符串方法[参考].pdf

    // 输出 "hello, world" ``` ##### 2. `indexOf()` `indexOf()` 方法返回字符串中一个子串第一次出现的位置索引,如果找不到,则返回 `-1`。 ```javascript let str = "hello, world"; let index = str.indexOf(...

    IOS应用源码——感恩---奉上大量samplecode(第2部分)19_18208_dbad520b178dc4f.rar

    KML是一种用于地理空间数据的XML标准,常用于Google Earth和Google Maps。这可能涉及到CoreLocation和MapKit框架的使用,以及网络请求和数据解析。 2. **DigiClock**: DigiClock可能是一个数字时钟应用,展示了如何...

    Google地图API高级特性

    下面是一个简单的Hello World示例,展示了如何使用Google地图API快速创建并展示一个带有标记的地图: ```javascript &lt;script type="text/javascript" src="http://ditu.google.cn/maps?file=api&v=2&key=ABQc"&gt; ;...

    QT开发者会议1.1

    - Google Earth - Skype for Linux - Opera浏览器 - 全面支持Nokia的设备 #### 二、QtQuick入门 - **QML语言介绍** - QML是一种轻量级的声明性语言,用于构建用户界面。 - QML与JavaScript结合使用,可以...

    GEE技术开源文档翻译文档

    - **“Hello World”示例**:作为初学者的第一个项目,用户可以从简单的“Hello World”程序开始,通过这种方式熟悉代码编辑器的基本操作流程。 综上所述,本文档详细介绍了GEE技术的基础知识、编程语言选择、API...

    php字符串函数学习之strstr()_.docx

    $arr = array("Hello" =&gt; "Hi", "world" =&gt; "earth"); echo strtr("Hello world",$arr). "&lt;hr/&gt;"; echo strtr("假如省略,则用法内部字符编码","内部","外部"). " "; $arr = array("假如" =&gt; "若", "则" =&gt; ...

    正则表达式---Python程序设计1

    text = "&lt;a&gt;hello&lt;a&gt;&lt;b&gt;world&lt;b&gt;" match = re.search(r"(.*?)&lt;b&gt;", text) if match: print(match.group(1)) # 输出:hello ``` 这里,`.*?` 表示尽可能多地匹配任何字符(除了换行符),直到遇到 `&lt;b&gt;`。由于使用...

    在HTML5中插入X3D文件完整源码

    这个“HelloWorld”程序就是一个很好的示例,教你如何在网页中集成X3D内容。下面将详细解释这个过程以及涉及的相关技术。 首先,`index.htm`是主HTML文件,它包含了引入X3D内容的代码。在HTML5中,X3D通常通过X3DOM...

    ScriptSharp.pdf

    HelloWorld应用示例 使用Scriptlets编写简单的脚本代码,快速实现一个HelloWorld应用,展示Script#的基本用法。 ##### 2. 构建Script组件 在Script#类库中创建Script组件,这有助于组织和重用代码,提高代码的...

Global site tag (gtag.js) - Google Analytics