千家信息网

TE二次开发中线生成墙的问题有哪些

发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,这篇文章将为大家详细讲解有关TE二次开发中线生成墙的问题有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在TE的开发中,可通过设置线的属性,使线显示成一个墙的效
千家信息网最后更新 2024年11月27日TE二次开发中线生成墙的问题有哪些

这篇文章将为大家详细讲解有关TE二次开发中线生成墙的问题有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

在TE的开发中,可通过设置线的属性,使线显示成一个墙的效果,可以使用TE工具Fence and Wall,在地图中进行效果查看。

在工作中的开发,要立体的放置一张图片进行展示,在球面的地形上,只有使用此方式,在地球的大弧度上才能弯曲显示,以下是实现的功能代码:

//创建线

ITerrainPolyline66 _cPolyline = null;

var _cRing = _sgworld.Creator.GeometryCreator.CreateLineStringGeometry(_cVerticesArray);

uint nLineColor = 0x8fFF0000;

//高度类型设置为相对地面

AltitudeTypeCode eAltitudeTypeCode = AltitudeTypeCode.ATC_TERRAIN_RELATIVE;

_cPolyline = _sgworld.Creator.CreatePolyline(_cRing, nLineColor, eAltitudeTypeCode, groupid, layerName);

//设置线边框透明度为0和贴图半透明效果

_cPolyline.LineStyle.Color.SetAlpha(0);

_cPolyline.FillStyle.Color.SetAlpha(0.75);

//设置此属性才能达到贴到地面的效果

_cPolyline.ExtendToGround = true;

//设置此属性才能线沿着地球大范围的弧度

_cPolyline.Spline = true;

//设置线的贴图

_cPolyline.FillStyle.Texture.FileName = _picOut.PicPath;

//设置贴图的旋转角度

_leftPolygon.FillStyle.Texture.RotateAngle = 180;

以上是实现的代码,其中存在几个问题,在使用中请注意:

1、在两个点的情况下,线的弧度越大,会发现贴图要比弧线短一块,可以在中间加一些点;

2、贴图的问题,贴图的方向不确定的,这好像是没有规律的,有时图片贴图方向正确,有时就是相反的...

3、按照1的方式中间加点,贴图的方向就更不是可控的...

4、效果还是可以的...

关于"TE二次开发中线生成墙的问题有哪些"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

0