<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>加载3dwindow</title>

</head>
<body onload="init3d()">
<div style="margin:0">
<button type="button" onclick="start_line"> 开始</button>
<!-- <span id='pos'></span> -->

<div id="3dmap" style="z-index:0;background-image:url('images/bg.jpg');width:100%;height:100%;margin-top:38px;position:fixed;">
<object class="window3d" id="TerraExplorer3DWindow" classid="CLSID:3a4f9192-65a8-11d5-85c1-0001023952c1"></object>
</div>
</div>
</body>
<script type="text/javascript">
function init3d() {
var dmap = $("3dmap");
var TerraExplorer3DWindow = $("TerraExplorer3DWindow");
dmap.appendChild(CSGWorld());

var SGWorld = $("SGWorld");
//
// SGWorld.AttachEvent("onLButtonDown", onLButtonDown);
// SGWorld.AttachEvent("onRButtonDown", onRButtonDown);

var flyurl = "../Default.FLY";
SGWorld.Open(flyurl);
}

function $(id) {
return window.document.getElementById(id);
}

function CSGWorld() {
obj = document.createElement('object');
document.body.appendChild(obj);
obj.name = "SGWorld";
obj.id = "SGWorld";
obj.classid = "CLSID:3A4F919A-65A8-11D5-85C1-0001023952C1";
return obj;
}
</script>
<script type="text/javascript">
function start_line() {
var SGWorld = $("SGWorld");
SGWorld.AttachEvent("onLButtonDown", onLButtonDown);
SGWorld.AttachEvent("onRButtonDown", onRButtonDown);
}

var line_geometry = []

function onRButtonDown(flags, x, y) {

SGWorld.DetachEvent("onLButtonDown", onLButtonDown);
SGWorld.DetachEvent("onRButtonDown", onRButtonDown);

}

function onLButtonDown(flags, x, y) {
var SGWorld = $("SGWorld");

var ret = SGWorld.Window.PixelToWorld(x, y, flags);
line_geometry.push(ret.Position.X, ret.Position.Y, 180)
if (line_geometry.length > 1) {
var geometry = SGWorld.Creator.GeometryCreator.CreateLineStringGeometry(line_geometry)
}

var color = SGWorld.Creator.CreateColor(255, 0, 0, 0.7);
// 2 in AltitudeTypeCode means on terrain, "" means add to root 
var line = SGWorld.Creator.CreatePolyline(geometry, color, 2, "", "my poly on terrain");
line.LineStyle.Width = 1.5; // 15000m (15km)
line.Position.Distance = 600.0; // set max viewing distance in meters
SGWorld.Navigate.FlyTo(line);

// popup = SGWorld.Creator.CreatePopupMessage("onLButtonDown event", "", x, y);
// popup.InnerText = (ret == null) ? "Screen coordinate hit the sky" : "Screen coordinates (" + x + "," + y +
// "):\nTerrain coordinate:\nX: " + ret.Position.X + "\nY: " + ret.Position.Y;
//
// SGWorld.Window.ShowPopup(popup);
//
// return true; // event was processed by the client. return false to allow additional processing of the event.
}
</script>
<style type="text/css">
.window3d {
z-index: -1000;
width: 100%;
height: 100%;
position: absolute;
left: 0px;
top: 10px;
margin: 0;
}
</style>
</html>

skyline画折现bug代码的更多相关文章

  1. 偶现bug如何处理?

    请先允许我对此类bug进行吐槽,相信做测试的同学都碰见过这种bug! 我们在测试过程中经常会碰见一类很头疼的bug,就是偶现性的bug,所谓偶现性,是相对于必现而言,这类bug有些可以有重现路径,但是 ...

  2. 阿里聚安全·安全周刊】一种秘密窃取数据的新型 Android 木马|iOS 11相机惊现BUG

    本周的七个关键词:  新型 Android 木马丨 TLS 1.3 丨  阿里安全图灵实验室 丨 漏洞感染 Linux 服务器 丨 CPU曝极危漏洞 丨   iOS 11相机BUG 丨R2D2技术 - ...

  3. 佛祖保佑永无BUG代码注释

    // // _oo0oo_ // o8888888o // 88" . "88 // (| -_- |) // 0\ = /0 // ___/`---'\___ // .' \\| ...

  4. 佛祖保佑 永无bug 代码注释

    // // _oo0oo_ // o8888888o // 88" . "88 // (| -_- |) // 0\ = /0 // ___/`---'\___ // .' \\| ...

  5. Mapreduce-实现webcount代码

    参考博文:https://blog.csdn.net/qq_41035588/article/details/90514824 首先安装一个Hadoop-Eclipse-Plugin 方便来对于hdf ...

  6. 小程序部分机型上一个诡异的偶现bug

    如上图所示:开始的时候进到下单页面,价格是0,当选中了商品产生价格的时候,生成的价格如 ¥150,这个时候会只露出¥1以及一小半的5,后面的都被遮挡住了. wxml里是这样的写的 <view w ...

  7. V7承保 bug代码

    v7 bug1

  8. 20140312 Excel表格画折现图次坐标轴

    1.struct 是8字节对齐 2.char * a, sizeof(a)=4; char a[]="abcdefg";sizeof(a)=8; 3.内存对其齐

  9. 从 A/Looper: Could not create epoll instance. errno=24 错误浅谈解决各种 bug 的思路

    今天代码写着写着就莫名闪退了,手机也没有“程序停止运行”的提示,logcat也没有看到蓝色的调用栈log,这样的闪退最是蛋疼了,还好必现.复现几次之后,终于从logcat中看到了一行可疑的log: A ...

随机推荐

  1. java入门学习总结

    1.jdk(java开发工具包)------> jre(java运行环境)------> jvm(java虚拟机) ------>应用(javac) -------> java ...

  2. 掷骰子游戏窗体实现--Java初级小项目

    掷骰子 **多线程&&观察者模式 题目要求:<掷骰子>窗体小游戏,在该游戏中,玩家初始拥有1000的金钱,每次输入押大还是押小,以及下注金额,随机3个骰子的点数,如果3个骰 ...

  3. 转贴:如何学好C++语言.docx

    不知道哪里转的.呵呵 抱歉 C++是最难的语言.这个世界上最难的编程语言可能非C++莫属了.你千万不要以为几天就可以学好C++,C++的学习曲线是相当BT的,你可以看看这篇文章.C++是一门很自由的语 ...

  4. python 使用set对列表去重后,保持原来列表的顺序排列

    testlist = ['cc', 'bbbb', 'afa', 'sss', 'bbbb', 'cc', 'shafa'] set2list = list(set(testlist)) print ...

  5. node升级 npm的升级

    安装方法: 1.产看node版本,没安装的请先安装: node -v 2.清楚node缓存: sudo npm cache clean -f 3.安装node版本管理工具'n'; sudo npm i ...

  6. 高可用web框架

    nginx nginx简介 Nginx是一个自由.开源.高性能及轻量级的HTTP服务器及反转代理服务器.Nginx以其高性能.稳定.功能丰富.配置简单及占用系统资源少而著称. Nginx 超越 Apa ...

  7. python新建以时间命名的目录

    1.新建三级目录,第一级是去年的年份,第二级是去年的月,第三级为去年的日,在日的文件中写入今年的时分秒 import os import time import shutil def create_f ...

  8. 组合数取模方法总结(Lucas定理介绍)

    1.当n,m都很小的时候可以利用杨辉三角直接求. C(n,m)=C(n-1,m)+C(n-1,m-1): 2.n和m较大,但是p为素数的时候 Lucas定理是用来求 c(n,m) mod p,p为素数 ...

  9. 关于Mysql查询varchar类型错误问题

    因为后台所有表ID都是按照雪花算法生成的18位数字,需要对接到Android,Ios和H5,此时H5会出现字符超长溢出,所以直接把ID改为varchar类型. 如我的一张表ID为varchar(18) ...

  10. C#ref和out的区别-ref是有进有出,out是只出不进

    之前学习C#时候就遇到了这个问题,不过当时没有深究.昨晚想到这个问题时候自己尝试敲了敲代码,结果从运行的结果来看,越看越乱.在查看了一些资料的基础上,自己总结了一下. 可能会有点乱,但是自己总结出来的 ...