建模数据导入流程浅析 之 独立坐标系下的模型导入超图时如何定位

本文主要是介绍建模数据导入流程浅析 之 独立坐标系下的模型导入超图时如何定位,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

建模数据导入流程浅析 之 独立坐标系下的模型导入超图时如何定位

    • 导言
    • 软件环境
    • 详细步骤

导言

随着硬件与软件的不断发展,用户对于模型的精致与真实的需求也在不断地提升。因此,模型导入三维GIS平台时,不论是BIM还是精模,只要有放到真实位置的需求,通常都会参考CAD底图进行建模。然而,并不是所有的CAD底图都使用了通用坐标系。有些底图为了符合地方的需求,通常会采用地方独立坐标系。而这些独立坐标系,由于种种原因,可能很难直接获取坐标系的参数。那么,对于这些坐标参考系未知的建模数据,我们该如何进行数据对接呢?本篇博客将以revit模型为例,详解独立坐标系下的建模数据的导入流程。

软件环境

在此次演示中使用到的软件为:
SuperMap iDesktop 9.1.1
Autodesk Revit 2018
Coord坐标转换软件
使用到的插件为:
超图revit插件2018版

详细步骤

一、 Coord坐标转换软件篇
虽然独立坐标系的参数通常是保密的,数据生产方一般不会提供相应的参数,但是相应的,数据方会给出一些控制点供我们参考。我们可以首先根据这些控制点算出该独立坐标系与通用坐标系的四转换参数。具体步骤如下:

1、根据控制点计算四参数。
打开坐标转换软件coord.exe,在【坐标转换】选项卡下找到【计算四参数】功能。
在这里插入图片描述

打开新界面后,将数据生产商提供的第一组控制点的坐标依次填入相应的位置,并且点击【增加】。重复此步直到将所有控制点组加至列表中。注意,这里的源坐标指代的是地方坐标系下的控制点坐标,目标坐标指的是对应的通用坐标系下的控制点坐标。
在这里插入图片描述
将所有控制点输入完毕后,点击【计算】,计算完毕后点击【导出】。

二、 Revit篇
由于超图iDesktop 9.1.1中已经提供了四参数转换的方法,所以Revit中只要将模型原封不动地导出即可。具体步骤如下:

1、 用超图revit插件导出数据集。
用【平面坐标插入点】的方式导出,插入点默认为x=0,y=0即可。
在这里插入图片描述

三、 超图iDesktop篇
在上一步中,我们采用了平面坐标插入点的定位方式进行导出。这样导出的结果,放到平面场景一般会正常显示,但是并不能放到球面场景中。所以,为了与球面上的其他数据一起浏览,我们要进行最后一步操作,四参数转换。具体步骤如下:

1、 打开生成的数据源。在【开始】选项卡下,选择【投影转换】 - 【四参数转换】。填写四参数并设置目标坐标系后(目标坐标系需设置为之前采用的通用坐标系),将数据集依次进行四参数转换。
在这里插入图片描述

2、 新建一个新的数据源,设置该数据源的坐标系是投影文件对应的地理坐标系(比如投影文件是China2000的投影坐标系,就设置china2000的地理坐标系)。
3、 批量投影转换。
【开始】 - 【投影转换】 - 【批量投影转换】。设置好源数据的数据源和目标数据的数据源后,点击【转换】即可。
在这里插入图片描述
Ok,我们已经将模型导至正确的位置了!

在这里插入图片描述

这篇关于建模数据导入流程浅析 之 独立坐标系下的模型导入超图时如何定位的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/766104

相关文章

浅析Python中的绝对导入与相对导入

《浅析Python中的绝对导入与相对导入》这篇文章主要为大家详细介绍了Python中的绝对导入与相对导入的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1 Imports快速介绍2 import语句的语法2.1 基本使用2.2 导入声明的样式3 绝对import和相对i

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

MySQL InnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据

《MySQLInnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据》mysql的ibdata文件被误删、被恶意修改,没有从库和备份数据的情况下的数据恢复,不能保证数据库所有表数据... 参考:mysql Innodb表空间卸载、迁移、装载的使用方法注意!此方法只适用于innodb_fi

mysql通过frm和ibd文件恢复表_mysql5.7根据.frm和.ibd文件恢复表结构和数据

《mysql通过frm和ibd文件恢复表_mysql5.7根据.frm和.ibd文件恢复表结构和数据》文章主要介绍了如何从.frm和.ibd文件恢复MySQLInnoDB表结构和数据,需要的朋友可以参... 目录一、恢复表结构二、恢复表数据补充方法一、恢复表结构(从 .frm 文件)方法 1:使用 mysq

mysql8.0无备份通过idb文件恢复数据的方法、idb文件修复和tablespace id不一致处理

《mysql8.0无备份通过idb文件恢复数据的方法、idb文件修复和tablespaceid不一致处理》文章描述了公司服务器断电后数据库故障的过程,作者通过查看错误日志、重新初始化数据目录、恢复备... 周末突然接到一位一年多没联系的妹妹打来电话,“刘哥,快来救救我”,我脑海瞬间冒出妙瓦底,电信火苲马扁.

golang获取prometheus数据(prometheus/client_golang包)

《golang获取prometheus数据(prometheus/client_golang包)》本文主要介绍了使用Go语言的prometheus/client_golang包来获取Prometheu... 目录1. 创建链接1.1 语法1.2 完整示例2. 简单查询2.1 语法2.2 完整示例3. 范围值

SpringBoot快速接入OpenAI大模型的方法(JDK8)

《SpringBoot快速接入OpenAI大模型的方法(JDK8)》本文介绍了如何使用AI4J快速接入OpenAI大模型,并展示了如何实现流式与非流式的输出,以及对函数调用的使用,AI4J支持JDK8... 目录使用AI4J快速接入OpenAI大模型介绍AI4J-github快速使用创建SpringBoot

javaScript在表单提交时获取表单数据的示例代码

《javaScript在表单提交时获取表单数据的示例代码》本文介绍了五种在JavaScript中获取表单数据的方法:使用FormData对象、手动提取表单数据、使用querySelector获取单个字... 方法 1:使用 FormData 对象FormData 是一个方便的内置对象,用于获取表单中的键值

Rust中的BoxT之堆上的数据与递归类型详解

《Rust中的BoxT之堆上的数据与递归类型详解》本文介绍了Rust中的BoxT类型,包括其在堆与栈之间的内存分配,性能优势,以及如何利用BoxT来实现递归类型和处理大小未知类型,通过BoxT,Rus... 目录1. Box<T> 的基础知识1.1 堆与栈的分工1.2 性能优势2.1 递归类型的问题2.2

Python使用Pandas对比两列数据取最大值的五种方法

《Python使用Pandas对比两列数据取最大值的五种方法》本文主要介绍使用Pandas对比两列数据取最大值的五种方法,包括使用max方法、apply方法结合lambda函数、函数、clip方法、w... 目录引言一、使用max方法二、使用apply方法结合lambda函数三、使用np.maximum函数