我可能有琐碎的问题。我正在尝试使用GEOS库。我的功能在我自己的库中使用GEOS库。我想在我用C ++编写的QGIS插件中使用这个库。问题是,我的库中的函数与geos::geom::Geometry
一起使用,但在QGIS插件中,有GEOSGeometry
。我认为这是一回事,但可能不是。
有谁能解释我这两者之间的区别并给我一个建议,如何将它们互相转换或告诉我我做错了什么?感谢。
答案 0 :(得分:0)
GEOSGeometry
是typedef
。官方文档中指出,使用C API比C ++ API更受欢迎,因为它可能更稳定(就未来的变化而言)。
我不确定你是否可以简单地施放结构(我建议反对它)。我建议你使用C API而不是C ++ API。
答案 1 :(得分:0)
不,您不能简单地在GEOS C API类型GEOSGeometry
和来自geos::geom::Geometry
类的层次结构的C ++ API类型之间进行转换。
但是,您可以在{API}和C ++ API对象之间convert your geometries using WKB as an interchange format。