解决Skyline 6.5版本中3DML模型单体化后外部网页挂接问题

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using TerraExplorerX;

////////设置3DML单体化对象的Message////////赵贺
namespace DXSkyline
{
    public partial class Form1 : Form
    {
        SGWorld65 globe;
        IMouseInfo65 mi;
        I3DMLFeatureLayer65 _3dmlfeatureLayer;
        IWorldPointInfo65 wpi;
        IFeature65 theFeature;
        string lastID;
        int FPSLimitation;
        int framesNr;
        //IMeshLayer65 ml;

        public Form1()
        {
            InitializeComponent();
            globe = new SGWorld65();

            FPSLimitation = 10;

        }

        void globe_OnFrame()
        {
            framesNr++;
            if (framesNr < FPSLimitation)
            { return; }
            mi = globe.Window.GetMouseInfo();
            wpi = globe.Window.PixelToWorld(mi.X, mi.Y);

            if (wpi.Type == (WorldPointType)8192 && lastID != wpi.ObjectID && wpi.ObjectID!="")
            {
                theFeature = (IFeature65)globe.ProjectTree.GetObject(wpi.ObjectID);
                _3dmlfeatureLayer = (I3DMLFeatureLayer65)globe.ProjectTree.GetObject(theFeature.ParentGroupID);
                //_3dmlfeatureLayer.FeatureProperties.Tooltip.Text = theFeature.FeatureAttributes.GetFeatureAttribute("建筑属性").Value; //wpi.ObjectID;
               ITerraExplorerMessage65 mm = globe.Creator.CreateMessage(MsgTargetPosition.MTP_POPUP, "www.baidu.com?" + theFeature.FeatureAttributes.GetFeatureAttribute("建筑属性").Value, MsgType.TYPE_URL);
               _3dmlfeatureLayer.FeatureProperties.MessageID = mm.ID;
                lastID = wpi.ObjectID;
            }

            framesNr = 0;

        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            FPSLimitation = int.Parse(textBox1.Text);

            framesNr = 0;

            Console.WriteLine("FPS Limitation changed: " + FPSLimitation);
        }

        private void button1_Click(object sender, EventArgs e)
        {

            globe.OnFrame += new _ISGWorld65Events_OnFrameEventHandler(globe_OnFrame);
        }

        private void button2_Click(object sender, EventArgs e)
        {
            globe.OnFrame -= new _ISGWorld65Events_OnFrameEventHandler(globe_OnFrame);
        }
    }
}
时间: 2024-10-08 13:38:29

解决Skyline 6.5版本中3DML模型单体化后外部网页挂接问题的相关文章

Cesium 3dtiles模型单体化

1.源码下载:https://xiaozhuanlan.com/topic/3241096587 2.效果图: 分栋: 分层: 原文地址:https://www.cnblogs.com/hanjunjun/p/11577260.html

通过扩大IE使用内存,解决skyline在IE下模型不能加载的方法

环境:skyline TerraExploere 6.6.1,win10 专业版 64位,ie 11 情况描述:在ie下浏览三维场景,ie占用内存不断增大并且内存占用固定在一个最高范围内,三维场景中部分模型无法显示 解决方式: 1.找出ie的exe PS(postscript):如果操作系统是64位,就 要用32位的ie 2.把找到的iexplore.exe文件复制一份,复制到别的目录进行操作(最好不要在原文件.源目录上操作,我就不小心把文件弄来启动不了了) 2.打开visual studio 

GCC版本中没有GLIBCXX_3.4.15解决

run: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15"" not found 解决错误 呈现该错误的原因是当前的GCC版本中,没有GLIBCXX_3.4.15,须要安装更高版本. 我们可以输入:strings /usr/lib/libstdc++.so.6 | grep GLIBCXX,查看当前的GCC版本,成果如下: GLIBCXX_3.4 GLIBCXX_3.4.1 GLIBCXX_3.4.2 GLIBCXX_3.4.3 GLI

MySQL5.5.38和MySQL5.7版本中忘记root密码,解决办法

1.在centos6.5中安装mysql5.5.38版本,忘记密码如何解决? (1).先关闭mysqld服务 service  mysqld  stop (2).使用mysqld_safe安全模式启动mysql,使用两个参数: --skip-grant-tables:跳过授权表 --skip-networking: 跳过网络,防止其他用户对数据库进行读写操作,待密码恢复后可正常开启 执行命令: mysqld_safe  --skip-grant-tables  --skip-networking

解决Wamp各版本中 Apache 文件列表图标无法显示

Edit the following file manually and change the path to the icons folder (it appears 2 times in the file) File to edit: \wamp\bin\apache\apache2.2.6\conf\extra\httpd-autoindex.conf Change the paths: C:/Program Files/Apache Software Foundation/Apache2

解决idea中maven默认jdk为1.5的问题 : IntelliJ IDEA 源值1.5已过时,将在未来所有版本中删除

解决idea中maven默认jdk为1.5的问题 最近运行总是报警告: IntelliJ IDEA 源值1.5已过时,将在未来所有版本中删除 发现是jdk版本问题, 即使自己修改structure中的版本, 还是会变回来, 经过百度后得知需要修改pom.xml就可以解决 修改pom.xml 这里<maven.compiler.source>11</maven.compiler.source>中的11就是指定jdk的版本 要根据自己实际情况来修改 <properties>

“独立”OpenVINO R2019_2 版本中的“super_resolution_demo”例子的,解决由于 R2019_1到R2019_2 升级造成的问题

OpenVINO提供了丰富的例子,为了方便研究和使用,我们需要将这些例子由原始的demo目录中分离出来,也就是“独立”运行,这里我们选择了较为简单的super_resolution_demo来说明问题并标注重点:另一方面,由于OpenVINO升级比较快,在一些细节的也有较多修改,由于版本升级带来的问题需要注意,这里也进行了适当梳理. 本篇博客的前提是“windows平台,并且已经成功在vs2017跑通OpenVINO的例子”.如果这个条件不符合可以参考官方文档和其他资料. 一.“独立”OpenV

在PHP5.5.34版本中启用Zend Opcache

大家知道目前PHP的缓存插件一般有三个:APC.eAccelerator.XCache,但未来它们可能都会消失,因为PHP 5.5已经集成Zend Opcache,功能和前三者相似但又有少许不同,缓存速度据说比它们更快(注意:只是据说,我没测试过).这几个PHP加速插件的主要原理都相同,就是把PHP执行后的数据缓冲到内存中从而避免重复的编译过程,能够直接使用缓冲区已编译的代码从而提高速度,降低服务器负载,它们的效率是显而易见的.Zend Opcache在PHP 5.5后的版本中已经集成了,编译安

ThinkPHP中的模型

ThinkPHP中的模型 1.什么是模型(Model) 模型表示企业数据和业务规则,实际项目开发中,主要实现与数据库进行操作. 2.模型的定义规则 模型类的命名规则是除去表前缀的数据表名称,采用驼峰法命名,并且首字母大写,然后加上模型类的关键词Model,再加上类文件后缀.class.php 案例:实现移动办公自动化系统的组织结构功能 ① 设计数据库db_think ② 设计数据表结构(tk_dept) id ???? 编号 ????int 自动增长 主键 name 部门名称 varchar(4