Exemplo n.º 1
0
def input_to_point(inp: WPSInput) -> Any:
    """ Convert input to point
    """
    g = input_to_geometry(inp)
    if isinstance(g, QgsReferencedGeometry):
        g = QgsReferencedPointXY(g.centroid().asPoint(), g.crs())
    return g
Exemplo n.º 2
0
def input_to_point( inp: WPSInput ):
    """ Handle point from complex input
    """
    data_format = inp.data_format
    geom = None
    if data_format.mime_type == FORMATS.GEOJSON.mime_type:
        geom = ogr.CreateGeometryFromJson(inp.data)
    elif data_format.mime_type == FORMATS.GML.mime_type:
        geom = ogr.CreateGeometryFromGML(inp.data)
 
    if geom:
        srs  = geom.GetSpatialReference()
        geom = QgsGeometry.fromWkt(geom.ExportToWkt())
        if srs:
            srs = QgsCoordinateReferenceSystem.fromWkt(srs.ExportToWkt())
        if srs and srs.isValid():
            geom = QgsReferencedPointXY( geom.centroid().asPoint(), srs )
            
        return geom

    raise NoApplicableCode("Unsupported data format: %s" % data_format)