文件名称:LongLiveTheSquare:查找最小边界框的算法
文件大小:4.21MB
文件格式:ZIP
更新时间:2024-06-03 19:35:05
C#
广场万岁(LLTS) 在R²找到任意定向的最小边界框的算法。 什么是最小边界框? 是一个矩形,该矩形将给定点集中的所有点都包围起来,并且在所有包围的矩形中具有最小的面积(图1 )。 图1:最小边界框 它是如何工作的? 算法的输入是一组点,这些点通过2d位置矢量进行描述。 为了减少要处理的点数,建议首先计算凸包。 凸包 是一组点,它们是输入集中最超出测试点的点(图2 )。 就像您将橡皮筋缠在各个点上,然后拿走与之接触的橡皮筋一样。 LLTS使用来计算凸包。 该算法首先按 对这些点进行排序,然后遍历最高和最低点,以创建上下壳体。 两者合起来就是凸包。 图2:凸包 单调凸包算法以O(n * log(n))速度运行。 最小边界框 LLTS算法的思想是使用最小边界框的一个边缘与凸包的边缘平行的属性。 因此,首先,算法将凸包的所有点连接到一个段列表中。 因为它更琐碎找到对齐边框轴则任意
【文件预览】:
LongLiveTheSquare-master
----.gitignore(371B)
----U4LongLiveTheSquare.Mac()
--------Program.cs(227B)
--------packages.config(209B)
--------Info.plist(576B)
--------U4LongLiveTheSquare.Mac.csproj(3KB)
--------Properties()
----images()
--------bounding_box.png(86KB)
--------application.png(222KB)
--------convex_hull.png(484KB)
----U4LongLiveTheSquare()
--------packages.config(209B)
--------U4LongLiveTheSquare.csproj(3KB)
--------StopWatch.cs(432B)
--------Geometry()
--------Draw()
--------Images()
--------MainForm.cs(6KB)
--------MinimalBoundingBox.cs(3KB)
--------Properties()
----U4LongLiveTheSquare.Wpf()
--------Program.cs(227B)
--------packages.config(209B)
--------U4LongLiveTheSquare.Wpf.csproj(2KB)
--------Properties()
----U4LongLiveTheSquare.Gtk2()
--------Program.cs(229B)
--------U4LongLiveTheSquare.Gtk2.csproj(2KB)
--------packages.config(209B)
--------Properties()
----U4LongLiveTheSquare.Gtk3()
--------Program.cs(229B)
--------packages.config(210B)
--------U4LongLiveTheSquare.Gtk3.csproj(2KB)
--------Properties()
----U4LongLiveTheSquare.sln(6KB)
----LICENSE(1KB)
----release()
--------winforms()
--------README.pdf(1.55MB)
--------wpf()
----README.md(4KB)
----U4LongLiveTheSquare.XamMac2()
--------Program.cs(235B)
--------packages.config(227B)
--------U4LongLiveTheSquare.XamMac2.csproj(3KB)
--------Info.plist(584B)
--------Properties()
----U4LongLiveTheSquare.WinForms()
--------Program.cs(237B)
--------packages.config(213B)
--------U4LongLiveTheSquare.WinForms.csproj(2KB)
--------Properties()