预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN113421338A(43)申请公布日2021.09.21(21)申请号202110826234.1(22)申请日2021.07.21(71)申请人北京臻观数智科技有限公司地址100000北京市朝阳区高碑店乡半壁店村惠河南街1063号-1号1层A1274(72)发明人宋江(74)专利代理机构成都环泰专利代理事务所(特殊普通合伙)51242代理人李斌李辉(51)Int.Cl.G06T17/10(2006.01)G06T15/00(2011.01)G06T15/55(2011.01)权利要求书2页说明书9页附图1页(54)发明名称一种将二维矢量进行三维渲染的方法(57)摘要本发明公开了一种将二维矢量进行三维渲染的方法,包括以下步骤:S1、从shp文件中获取shp数据,对shp数据进行数据坐标转换,转换成build.json文件并保存所有数据目录;S2、根据建筑信息的字段内容,对建筑进行归类;S3、读取build.json文件,获取矢量面坐标点和高度信息;S4、根据矢量面坐标点和高度信息,计算三维建筑的顶点要素信息;S5、根据三维建筑得顶点要素信息、样式分类信息、排列顶点信息、颜色信息和法向量信息创建分组,根据分组创建一个bufferGeometry对象;S6、获取buffGeometry对象对应的坐标信息;S7、根据bufferGeometry和材质数组materials创建一个mesh对象,并根据坐标信息添加到三维场景中进行渲染。CN113421338ACN113421338A权利要求书1/2页1.一种将二维矢量进行三维渲染的方法,其特征在于,包括以下步骤:S1、通过处理器从shp文件中获取shp数据,并在存储介质中建立对应的第一存储空间,将获取的shp数据保存到所述第一存储空间中;按照空间范围对所述保存的shp数据进行切割,对shp数据进行数据坐标转换,转换成build.json文件并在存储介质中建立对应的第二存储空间,将build.json文件的所有数据目录保存到所述第二存储空间中;S2、根据建筑信息的字段内容,对建筑进行归类,获取建筑的风格化参数和归类条件并保存;S3、处理器根据第二存储空间中保存的build.json文件数据目录读取build.json文件,获取build.json文件中每一个切片文件pbf的内容,并解析成geojson数据,获取坐标原点,并获取每一个矢量面要素,根据步骤S2中建筑的归类条件对矢量面要素进行分类,获取矢量面坐标点和高度信息;S4、根据矢量面坐标点和高度信息,计算三维建筑的顶点要素信息;S5、根据三维建筑得顶点要素信息、样式分类信息、排列顶点信息、颜色信息和法向量信息创建分组,根据分组在存储介质中创建一个bufferGeometry对象;S6、获取buffGeometry对象对应的坐标信息;S7、根据bufferGeometry和材质数组materials创建一个mesh对象,并根据坐标信息添加到三维场景中进行渲染。2.根据权利要求1所述的一种将二维矢量进行三维渲染的方法,其特征在于,所述步骤S1包括:根据空间范围将shp文件中的shp数据切割成若干份矢量要素的集合数组,并为每一个集合数组指定一个固定的坐标原点O(lon,lat);建立矢量面,并确定坐标原点O(lon,lat)的位置,将矢量面中的点标记为A(lon,lat),根据经纬度坐标和threejs的内部坐标转换关系,将A点全部转换为相对O(lon,lat)原点的相对偏移坐标A1(x,y),x、y为A点和O对应threejs的坐标的横纵坐标差;将坐标原点0、矢量点A和转换后坐标A1转换为geojson数据,再转换成pbf数据,将所有的切片文件路径自动记录在一个json中,记为build.json。3.根据权利要求1所述的一种将二维矢量进行三维渲染的方法,其特征在于,所述步骤S2包括:根据风格样式创建对应的建筑材质对象,一个建筑风格样式对应两个建筑材质对象,分别是顶部材质和侧面材质。4.根据权利要求1所述的一种将二维矢量进行三维渲染的方法,其特征在于,所述步骤S3包括:获取到矢量面的坐标点并设为Array[p1,p2,p3,…,pn],获取高度信息并设为h。5.根据权利要求1所述的一种将二维矢量进行三维渲染的方法,其特征在于,所述步骤S4包括:获取定位坐标positions、顶点着色信息colors和顶点贴图坐标;遍历单个矢量面的坐标点串Array[p1,p2,p3,…,pn],相邻两点可以组合成两个三角形,如(p1,p2,p1_H)和(p1_H,p2,p2_H),其中p1_H、p2_H、p3_H…pn_H是通过修改Array[p1,p2,p3,…,pn]的z