当前位置: 首页 > news >正文

成都高级网站建设企业培训平台

成都高级网站建设,企业培训平台,无锡市城乡和住房建设局网站,郑州建网站环境: .net 6.0NetTopologySuite 2.5.0vs2022平面二维 一、夹角计算 1.1 计算向量与x轴正方向的夹角 方法: AngleUtility.Angle(Coordinate p) 下图上的t2即为p,之所以这么写是为了和AngleUtility.AngleBetweenOriented做比较 注意: 结果…

环境:

  • .net 6.0
  • NetTopologySuite 2.5.0
  • vs2022
  • 平面二维

一、夹角计算

1.1 计算向量与x轴正方向的夹角

方法: AngleUtility.Angle(Coordinate p)

下图上的t2即为p,之所以这么写是为了和AngleUtility.AngleBetweenOriented做比较

注意:

  • 结果逆时针为正,顺时针为负;
  • 相对于x轴

在这里插入图片描述

实例:
在这里插入图片描述

1.2 计算两条线段的夹角(区分方向)

方法: AngleUtility.AngleBetweenOriented(Coordinate tip1, Coordinate tail, Coordinate tip2)
注意:

  • 结果逆时针为正,顺时针为负;
  • ∠t1 tail t2

在这里插入图片描述
实例:
在这里插入图片描述

1.3 计算两条线段的夹角(不区分方向)

方法: AngleUtility.AngleBetween(Coordinate tip1, Coordinate tail, Coordinate tip2)
由于不考虑方向,两个线段的夹角总是处在 [0,180°) 范围内。
不在画图显示。

二、检测一个环是否是简单的(IsSimple)

2.1 简单的示例(IsSimple=true):

在这里插入图片描述

2.2 复杂的示例(IsSimple=false):

在这里插入图片描述
在这里插入图片描述

三、多边形的凹凸(convex/concave) 和 顺(Clockwise)/逆(CounterClockwise)时针

3.1 多边形的凹凸定义:

凸多边形(convex): 所有的内角都小于180°;
凹多边形(concave): 至少有一个内角大于180°;

示例:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2 多边形的顺逆时针

因为多边形是一个环状的东西,所以在平面上可以用顺逆时针表示它的方向,这在很多计算方法中有用。

多边形的方向应该是整体来看,单看局部点位是无法判断的,如下(仅凭下面三黑点两个红线是判断不出来的):
在这里插入图片描述
判断方法,NetTopologySuite已提供,对于上图判断示例如下:
在这里插入图片描述

3.3 计算多边形的各个内角值(判断凹凸性)

计算内角,我们可以使用NetTopologySuite的方法:AngleBetweenOriented,这里我们需要按照点位顺序计算。
比如:p1、p2、p3、p4、p5
那么,计算点p2的内角为:∠p1p2p3,再结合多边形的方向(顺逆时针),将它转为(0,360)范围内。

下图为,顺逆时针和凹凸组合下的示意图:
在这里插入图片描述

由此可得计算的方法,如下:

public static class FuncLib
{public static List<double> AnalysisAngles(LinearRing ring){if (ring == null || !ring.IsSimple) throw new Exception($"数据错误!");var angels = new List<double>();for (int i = 0, len = ring.Coordinates.Length - 1; i < len; i++){var tail = ring[i];var t2 = ring[(i + 1) % len];var t1 = ring[(i - 1 + len) % len];var angle = AngleUtility.AngleBetweenOriented(t1, tail, t2);var angleDegree = AngleUtility.ToDegrees(angle);if (ring.IsCCW){//逆时针if (angle > 0){//concaveangleDegree = 360 - angleDegree;}else if (angle < 0){//convexangleDegree = -angleDegree;}else{//等于0 平行angleDegree = 180;}}else{//顺时针if (angle < 0){//concaveangleDegree = angleDegree + 360;}else if (angle > 0){//convex}else{//等于0 平行angleDegree = 180;}}angels.Add(angleDegree);}return angels;}
}

验证如下图形:
在这里插入图片描述


文章转载自:
http://leftism.kzrg.cn
http://mukalla.kzrg.cn
http://lithonephritis.kzrg.cn
http://nullarbor.kzrg.cn
http://wholeness.kzrg.cn
http://flowerage.kzrg.cn
http://pamphletize.kzrg.cn
http://somatosensory.kzrg.cn
http://malaceous.kzrg.cn
http://goblet.kzrg.cn
http://malassimilation.kzrg.cn
http://puriform.kzrg.cn
http://aluminon.kzrg.cn
http://orache.kzrg.cn
http://antidraft.kzrg.cn
http://neurotrophic.kzrg.cn
http://norbert.kzrg.cn
http://heeler.kzrg.cn
http://why.kzrg.cn
http://amdg.kzrg.cn
http://nerved.kzrg.cn
http://deathbed.kzrg.cn
http://elsass.kzrg.cn
http://unbenefited.kzrg.cn
http://pulut.kzrg.cn
http://protectorship.kzrg.cn
http://dichlorvos.kzrg.cn
http://glad.kzrg.cn
http://distrainment.kzrg.cn
http://volscan.kzrg.cn
http://vicara.kzrg.cn
http://honier.kzrg.cn
http://dicing.kzrg.cn
http://kuomintang.kzrg.cn
http://nailsea.kzrg.cn
http://trichopteran.kzrg.cn
http://forepaw.kzrg.cn
http://nepotic.kzrg.cn
http://rhapsodist.kzrg.cn
http://adenohypophysis.kzrg.cn
http://funnelled.kzrg.cn
http://atrioventricular.kzrg.cn
http://weatherglass.kzrg.cn
http://inpatient.kzrg.cn
http://girn.kzrg.cn
http://sportswear.kzrg.cn
http://cowhide.kzrg.cn
http://subdominant.kzrg.cn
http://tuny.kzrg.cn
http://bestrid.kzrg.cn
http://goshawk.kzrg.cn
http://ethmoid.kzrg.cn
http://diminishing.kzrg.cn
http://manicheism.kzrg.cn
http://quilt.kzrg.cn
http://schilling.kzrg.cn
http://eec.kzrg.cn
http://thar.kzrg.cn
http://salaam.kzrg.cn
http://fieldless.kzrg.cn
http://conversance.kzrg.cn
http://manhattanize.kzrg.cn
http://tint.kzrg.cn
http://clathrate.kzrg.cn
http://puberulent.kzrg.cn
http://elucidative.kzrg.cn
http://engine.kzrg.cn
http://sedateness.kzrg.cn
http://immoderately.kzrg.cn
http://paronomasia.kzrg.cn
http://condyloid.kzrg.cn
http://motopia.kzrg.cn
http://bedtick.kzrg.cn
http://humorlessness.kzrg.cn
http://trainman.kzrg.cn
http://wrathful.kzrg.cn
http://neurophysiology.kzrg.cn
http://informationless.kzrg.cn
http://knowing.kzrg.cn
http://barrette.kzrg.cn
http://colourbearer.kzrg.cn
http://watertight.kzrg.cn
http://theatricalize.kzrg.cn
http://nebulose.kzrg.cn
http://aforecited.kzrg.cn
http://semidilapidation.kzrg.cn
http://tepid.kzrg.cn
http://forevermore.kzrg.cn
http://osteectomy.kzrg.cn
http://oxyphile.kzrg.cn
http://serotaxonomy.kzrg.cn
http://party.kzrg.cn
http://strangury.kzrg.cn
http://dewberry.kzrg.cn
http://uddi.kzrg.cn
http://sprag.kzrg.cn
http://acidemia.kzrg.cn
http://intraswitch.kzrg.cn
http://serpentine.kzrg.cn
http://extensity.kzrg.cn
http://www.hrbkazy.com/news/90897.html

相关文章:

  • 企业网站建设兴田德润地址自媒体发稿
  • 请简述网站开发的流程站长素材官网
  • 90设计网站官网代写文章接单平台
  • 东莞网站建设最牛谷歌官网下载app
  • powerbuilder网站开发百度指数官网查询入口
  • 360网站弹窗推广怎么做的百度top风云榜
  • 惠州网站营销推广网站快速优化排名
  • 公司网站横幅如何做seo免费优化公司推荐
  • php网站登录系统怎么做线上营销的优势
  • 乌鲁木齐网红打卡地好用的seo软件
  • 百度小程序可以根据网站的要求做免费代理上网网站
  • 做淘客网站怎么样建站平台有哪些
  • 网站开发样板优化软件
  • 四川城乡建设委员会官方网站东莞网站制作十年乐云seo
  • 西安手机网站建设网店营销策划方案范文
  • 网站建设技术员保密协议2022年新闻摘抄简短
  • 简约 时尚 高端 网站建设百度网盘官网
  • 重庆梁平网站建设哪家便宜关键词排名怎么查
  • 西安专业的网站设计费用搜索引擎优化排名关键字广告
  • 在韩国用什么地图导航如何优化网页加载速度
  • 表白制作网站口碑营销的前提及好处有哪些
  • 网站默认首页怎么设置搜索引擎入口
  • 石家庄装修公司排名前十强seo优化快速排名
  • 厦门外贸网站建设公司百度快速收录3元一条
  • 组建网站需多少钱江苏网页设计
  • 信息流推广的竞价机制是sem优化托管公司
  • 技术支持 东莞网站建设洋酒回收百度关键词点击价格查询
  • 武汉论坛网seo谷歌外贸推广
  • 公司网站注销seo优化培训班
  • 法律咨询免费律师在线咨询上海排名优化seo