GEOSGeometry到geos :: geom :: Geometry

时间:2013-02-10 13:35:51

标签: c++ macros qgis geos

我可能有琐碎的问题。我正在尝试使用GEOS库。我的功能在我自己的库中使用GEOS库。我想在我用C ++编写的QGIS插件中使用这个库。问题是,我的库中的函数与geos::geom::Geometry一起使用,但在QGIS插件中,有GEOSGeometry。我认为这是一回事,但可能不是。

有谁能解释我这两者之间的区别并给我一个建议,如何将它们互相转换或告诉我我做错了什么?感谢。

2 个答案:

答案 0 :(得分:0)

对于C(非C ++)API中使用的结构,

GEOSGeometrytypedef。官方文档中指出,使用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