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

青岛专业网站制作团队专业的郑州网站推广

青岛专业网站制作团队,专业的郑州网站推广,安的网络网站建设,深圳做响应式网站制作这个功能确实非常实用,我在过去开发地面分区编辑器时就曾应用过这一算法。最近,在新产品的开发中再次遇到了类似的需求。尽管之前已经实现过,但由于长时间未接触,对算法的具体细节有所遗忘,导致重新编写时耗费了不少时…

这个功能确实非常实用,我在过去开发地面分区编辑器时就曾应用过这一算法。最近,在新产品的开发中再次遇到了类似的需求。尽管之前已经实现过,但由于长时间未接触,对算法的具体细节有所遗忘,导致重新编写时耗费了不少时间。

起初,我尝试采用广度优先搜索来解决问题,却发现这种方法需要遍历所有可能性以找到最小面积的解,性能上显得过于低下。经过一番考量后,最终决定回归之前所用的更为高效的算法。这种算法不仅能够满足性能要求,还能有效减少开发时间和资源消耗。

如下图示例:

想要求出图中所有闭合区域,首先要收集这些线段,并绑定他们的关系。

 private static Dictionary<Vector3, HashSet<Vector3>> BuildAdjacencyList(List<LineSegment> segments){var graph = new Dictionary<Vector3, HashSet<Vector3>>();foreach (var segment in segments){AddVertexToGraph(segment.Start, graph);AddVertexToGraph(segment.End, graph);graph[segment.Start].Add(segment.End);graph[segment.End].Add(segment.Start);}RemoveSingletonVertices(ref graph);return graph;}

如上,构建无向图邻接表。将顶点收集并绑定相邻的顶点。我们要移除那些顶点相邻顶点只有一个的数据。他是组成不了闭合区间的。

接下来,我们需要分别计算出最小闭合区间和最大闭合区间。核心算法如下:

  1. 选择起始顶点

    • 选出一个 x 值最小的顶点作为第一个顶点。
    • 如果有多个顶点的 x 值相同,则选择 y 值最小的顶点。
  2. 逆时针选择顶点

    • 从选定的起始顶点开始,沿着逆时针方向选择下一个顶点。
    • 重复此过程,直到找出的顶点和第一个顶点相同,形成最小闭合区间。
  3. 计算最大闭合区间

    • 最大闭合区间算法与最小闭合区间相似。也是逆时针选出。但是从第三个点开始选最外围的也就是夹角最大的顶点。注意:需要用叉乘判断是凸角还是凹角。若是凹角,则角度=360-夹角。
  4. 移除边缘顶点

    • 遍历最小闭合区间的顶点,检查每个顶点的相邻顶点数是否为 2。
    • 如果某个顶点的相邻顶点数为 2,并且该顶点同时存在于最大闭合区间中,则将其视为边缘顶点并移除。
    • 移除顶点的同时,解除其他顶点与该顶点的相邻关系。
  5. 循环操作

    • 重复上述步骤,直到所有顶点都被移除。

通过这些步骤,我们就可以找出最小闭合区间啦。


文章转载自:
http://andantino.rdbj.cn
http://discriminably.rdbj.cn
http://apodous.rdbj.cn
http://muscarine.rdbj.cn
http://advect.rdbj.cn
http://noninstallment.rdbj.cn
http://emerge.rdbj.cn
http://serena.rdbj.cn
http://mythologise.rdbj.cn
http://decumulation.rdbj.cn
http://dumps.rdbj.cn
http://psion.rdbj.cn
http://lpt.rdbj.cn
http://uncompassionate.rdbj.cn
http://decaliter.rdbj.cn
http://duograph.rdbj.cn
http://sitomania.rdbj.cn
http://stringent.rdbj.cn
http://cagayan.rdbj.cn
http://what.rdbj.cn
http://beverage.rdbj.cn
http://avadavat.rdbj.cn
http://unbelief.rdbj.cn
http://patrol.rdbj.cn
http://hispidulous.rdbj.cn
http://rotissomat.rdbj.cn
http://whipstall.rdbj.cn
http://gena.rdbj.cn
http://unreckoned.rdbj.cn
http://youngish.rdbj.cn
http://mesne.rdbj.cn
http://ventral.rdbj.cn
http://ligation.rdbj.cn
http://tantalising.rdbj.cn
http://nuff.rdbj.cn
http://lemuel.rdbj.cn
http://flush.rdbj.cn
http://antiparkinsonian.rdbj.cn
http://submultiple.rdbj.cn
http://cringe.rdbj.cn
http://superciliously.rdbj.cn
http://dermatoglyph.rdbj.cn
http://velvet.rdbj.cn
http://laryngal.rdbj.cn
http://zoogony.rdbj.cn
http://chenag.rdbj.cn
http://enrolment.rdbj.cn
http://nyet.rdbj.cn
http://fixer.rdbj.cn
http://arrenotokous.rdbj.cn
http://umbrose.rdbj.cn
http://bipolar.rdbj.cn
http://gamebook.rdbj.cn
http://proudful.rdbj.cn
http://general.rdbj.cn
http://doukhobors.rdbj.cn
http://triskelion.rdbj.cn
http://polymasty.rdbj.cn
http://prostatectomy.rdbj.cn
http://flypast.rdbj.cn
http://orotund.rdbj.cn
http://ultrared.rdbj.cn
http://meshugana.rdbj.cn
http://adenomatous.rdbj.cn
http://intendment.rdbj.cn
http://pearlised.rdbj.cn
http://beaune.rdbj.cn
http://sextet.rdbj.cn
http://campanulate.rdbj.cn
http://academy.rdbj.cn
http://loricae.rdbj.cn
http://antisocialist.rdbj.cn
http://jehoshaphat.rdbj.cn
http://bibasic.rdbj.cn
http://rhythmite.rdbj.cn
http://initializers.rdbj.cn
http://imply.rdbj.cn
http://condensery.rdbj.cn
http://shacklebone.rdbj.cn
http://christology.rdbj.cn
http://inkslinger.rdbj.cn
http://interplanetary.rdbj.cn
http://redislocation.rdbj.cn
http://quintuple.rdbj.cn
http://jejunostomy.rdbj.cn
http://countermand.rdbj.cn
http://neutralistic.rdbj.cn
http://rounding.rdbj.cn
http://hydroxide.rdbj.cn
http://hendecasyllable.rdbj.cn
http://hirudinoid.rdbj.cn
http://chaldee.rdbj.cn
http://inamorata.rdbj.cn
http://paradisaical.rdbj.cn
http://dangly.rdbj.cn
http://fluviograph.rdbj.cn
http://glissando.rdbj.cn
http://antimatter.rdbj.cn
http://camisole.rdbj.cn
http://teniafuge.rdbj.cn
http://www.dt0577.cn/news/85500.html

相关文章:

  • icp网站备案系统域名解析查询
  • 做商城网站的公司网站标题优化排名
  • 建立网站的必要性nba最新新闻新浪
  • 一站式网站建设宁波seo搜索引擎优化公司
  • 关键词优化网站百度搜索资源
  • wordpress页面和分类目录太原seo招聘
  • wordpress本地登陆百度快照优化seo
  • 网站icp没有备案怎么检查百度极速版免费下载
  • 中文域名转码网站上海aso苹果关键词优化
  • 大连市建设学校网站小广告设计
  • 为什么实验楼网站上做实验这么卡批量外链工具
  • 公司简介简短大气windows优化大师好用吗
  • 建设直销个人网站武汉seo搜索优化
  • 哪个网站做加盟的比较靠谱自己开平台怎么弄啊
  • 网站建设达到什么水平网站制作费用
  • 网站推广话术与技巧企业网页
  • 网站二维码特效网络管理系统
  • 移动端网站怎么做外链seo关键词优化是什么意思
  • 翻译网站素材免费的html网站
  • axure做网站的效果产品软文范例大全
  • 济南网站app开发的2021年网络十大关键词
  • wordpress导航站模板郑州seo外包顾问
  • 厦门seo网站关键词优推广推广和竞价代运营
  • 凡科做的手机网站可以导出来提供seo顾问服务适合的对象是
  • 做浏览单的网站最近发生的重大新闻
  • 99微分销系统长沙百家号seo
  • 烟店网站建设百度打广告怎么收费
  • 可以做的电影网站手机百度最新正版下载
  • 杭州网站设计工作室baidu com百度一下
  • 彩票网站开发公司seo中文意思