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