千家信息网

TE二次开发中如何画圆

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章将为大家详细讲解有关TE二次开发中如何画圆,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在TE的二次开发中,有时会用到画圆标示一个范围,圆的半径根据鼠标移动
千家信息网最后更新 2026年10月31日TE二次开发中如何画圆

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

在TE的二次开发中,有时会用到画圆标示一个范围,圆的半径根据鼠标移动而变化,跟直接使用TE画一个圆的效果相同。

这需要定义TE二次开发中的鼠标点击等事件,以下是详细的画法代码。

//定义鼠标左键事件

sgworld.OnLButtonUp += sgworld_OnLButtonUp;

//定义鼠标右键事件

sgworld.OnRButtonUp += sgworld_OnRButtonUp;

//定义实时监测事件

sgworld.OnFrame += sgworld_OnFrame;

bool sgworld_OnLButtonUp(int Flags, int X, int Y)

{

if (icircle == null)

{

//在对象为空的情况下,先在鼠标第一次点击的地方画一个圆

//鼠标点击位置的坐标获取

iworldpoint = this.sgworld.Window.PixelToWorld(X, Y, WorldPointType.WPT_TERRAIN);

iposition = iworldpoint.Position;

iposition.AltitudeType = AltitudeTypeCode.ATC_ON_TERRAIN;

//创建一个圆

icircle = sgworld.Creator.CreateCircle(iposition, x, "", sgworld.Creator.CreateColor(fillcolor.R, fillcolor.G, fillcolor.B, fillcolor.A), groupid, "Circle");

icircle.NumberOfSegments = 25;

return true;

}

else

{

//在已经画上圆,根据鼠标现在的位置计算圆的半径

iworldpoint2 = this.sgworld.Window.PixelToWorld(X, Y, WorldPointType.WPT_TERRAIN);

//数据鼠标摆放的位置,计算距离

x = sgworld.CoordServices.GetDistance(iworldpoint.Position.X, iworldpoint.Position.Y, iworldpoint2.Position.X, iworldpoint2.Position.Y);

icircle.Radius = x;

icircle = null;

return true;

}

return false;

}

//实时监测事件

void sgworld_OnFrame()

{

//判断圆对象不为空的情况

if(icircle!=null)

{

//获得鼠标的信息

moseinfo = this.sgworld.Window.GetMouseInfo();

iworldpoint2 = this.sgworld.Window.PixelToWorld(moseinfo.X,moseinfo.Y,WorldPointType.WPT_TERRAIN);

//计算距离

x = sgworld.CoordServices.GetDistance(iworldpoint.Position.X, iworldpoint.Position.Y, iworldpoint2.Position.X, iworldpoint2.Position.Y);

icircle.Radius = x;

}

}

//鼠标右键事件

bool sgworld_OnRButtonUp(int Flags, int X, int Y)

{

//常用的一些画完结束事件

return false;

}

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

鼠标 事件 开发 位置 篇文章 半径 实时 对象 情况 更多 监测 不错 实用 相同 代码 信息 内容 地方 坐标 常用 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 伟宏互联网科技 科技金融是不是互联网金融 美国互联网科技巨头监管 互联网中国科技 善班互联网科技 科技创新互联网企业 互联网科技小额贷款 顺玮阁互联网科技 卓越科技互联网 招聘 深圳前海聚择互联网科技有限公司 汽车互联网创新科技园 燊美集互联网科技有限公司 互联网科技的全部知识 科技互联网的核心竞争力 福建互联网展示科技馆设计 互联网高科技行业有哪些企业 华人运通互联网科技公司 上海旺乐尼互联网科技有限公司 互联网的黑科技实验室 宁波允成互联网科技有限公司 喔噻互联网科技有限公司 互联网和科技创新 互联网高科技企业 成都玖崟互联网科技有限公司乐商圈怎么样 宁夏科技产业互联网案例 智腾互联网科技有限公司 成都互联网科技公司工作好不好 工业互联网山东科技大学 全球科技与互联网公司市值变化 互联网时代科技型公司的机会
0