C# *** 作Styline二次开发实现画线功能

C# *** 作Styline二次开发实现画线功能,第1张

概述C# *** 作Styline二次开发实现画线功能 c# *** 作styline模型左键点击模型获取坐标,完成画线 *** 作。

1:鼠标点击模型事件


 List<Iposition66> pos = new List<Iposition66>();        private bool Sgworld_OnLbuttonClicked(int Flags, int X, int Y)        {                       var sgworld = new SGWorld66();            var postioninfo = sgworld.Window.PixelToWorld(X, Y);            Iposition66 ss = postioninfo.position;            ss.X = postioninfo.position.X;            ss.Y = postioninfo.position.Y;            pos.Add(ss);             return false;        } 

2: *** 作画线


  string tMsg = String.Empty;            IlinearRing cRing = null;            IGeometry cpolygonGeometry = null;            ITerrainpolyline66 cpolyo = null;            //创建实例            //Message@[email protected](String.Format("X:{0}\r\nY:{1}", posl[i].PosX, posl[i].PosX));            var sgworld = new SGWorld66();            List<Iposition66> posl = pos;            int sin = 0;            sin = posl.Count*3;            double[] cVerticesArray = new double[sin];            //获取坐标值            for (int i = 0; i < posl.Count; i++)            {                 cVerticesArray[i*3] = posl[i].X;                cVerticesArray[i*3+1] = posl[i].Y;                cVerticesArray[i * 3 + 2] = posl[i].Altitude;            }             {                cRing = sgworld.Creator.GeometryCreator.CreatelinearRingGeometry(cVerticesArray);                cpolygonGeometry = sgworld.Creator.GeometryCreator.CreatelinearRingGeometry(cRing);            }             {                uint nlinecolor = 0xFF00FF00; //颜色样式                AltitudeTypeCode AltitudeType = AltitudeTypeCode.ATC_ON_TERRAIN;                // D2. Create polygon                cpolyo = sgworld.Creator.Createpolyline(cpolygonGeometry, nlinecolor, AltitudeType, string.Empty, "polygon");                ///注意坐标                sgworld.Window.PixelToWorld(sgworld.Window.Rect.left, sgworld.Window.Rect.top, WorldPointType.WPT_TERRAIN);            }
总结

以上是内存溢出为你收集整理的C# *** 作Styline二次开发实现画线功能全部内容,希望文章能够帮你解决C# *** 作Styline二次开发实现画线功能所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1211080.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存