1个不稳定版本
0.1.0 | 2024年6月18日 |
---|
#2005 in 算法
82KB
1.5K SLoC
LAS+KML 到 STL
这个库是做什么的?
这个库可以将激光雷达数据(如美国地质调查局免费提供的数据)和任意数量的KML文件转换为指定区域的3D可打印网格地形。
所以它是TouchTerrain但速度较慢?
是的。但我无法让TouchTerrain工作,因此这个库只是用Rust实现了它,并具有适当的错误处理和代码中的大量更好的文档。它还使用本地LAS文件而不是通过谷歌地球浏览器进行,因为谷歌没有回复我的请求 :(. 除了本地文件的支持外,它还支持KML文件作为掩码。更多关于KML部分的内容。
KML/Geo支持
这个库还允许您根据KML文件创建3D数据的掩码。您可以导入包含多边形、路径和航点的文件。内部将KML文件转换为Geo类型,因此如果您提供有效的多边形、线字符串或点,则无需使用KML文件。这些掩码可用于选择要转换为STL的数据部分,并使用掩码调整高度值。这些功能组合起来可以让你用不同的颜色打印路径,甚至将路径分割成单独的对象,该对象可以插入到地形模型中。(让你可以在不需要材料切换打印机的条件下,使用不同的颜色打印对象)
速度
这个库非常慢。直接来说。尚未实现多线程加载LAS数据,如果想要加载整个国家或类似的内容,可能需要一个小时。然而,处理后的高度图可以快速保存和加载,允许您以相当快的迭代时间更改STL设置。
坐标系
该库使用UTM和常规的经纬度GPS十进制度。请注意各种对象使用的单位,因为所有单位都使用相同的Structs。请还检查您的LAS输入的单位,因为它可能是在UTM,但也可能是您当地市政府官员从屁股里想出来的某些怪物(比如加州2 SP83测量英尺)。如果您不幸拥有过时的标准数据,您仍然可以将其作为高程地图加载,但此时您需要将边界坐标转换为UTM。我推荐espg.io,因为他们支持许多过时的系统。我没有测试转换方法,所以如果您有问题,可以使用Las2Las在原始LAZ/LAS文件之间的坐标系之间进行转换,尽管它似乎是从MS Dos或其他类似遗留系统移植过来的。
UTM区域参数有什么用?
UTM使用各种区域来更好地投影GPS坐标,老实说,我所知道的就这些,我通常不处理地理数据。我不知道您是否可以混合区域,或者它们是否必须保持不变,我的数据只在一个区域内,所以我从未测试过。但是,您可以通过google确定一个坐标所在的区域。
依赖项
~21–32MB
~394K SLoC