def test_ogr_mem_15(): lyr = gdaltest.mem_ds.CreateLayer('wkbCircularString', geom_type=ogr.wkbCircularString) f = ogr.Feature(lyr.GetLayerDefn()) f.SetGeometry(ogr.CreateGeometryFromWkt('CIRCULARSTRING(0 0,1 0,0 0)')) lyr.CreateFeature(f) f = None assert lyr.GetGeomType() == ogr.wkbCircularString assert lyr.GetLayerDefn().GetGeomType() == ogr.wkbCircularString assert lyr.GetLayerDefn().GetGeomFieldDefn(0).GetType() == ogr.wkbCircularString f = lyr.GetNextFeature() g = f.GetGeometryRef() assert g.GetGeometryType() == ogr.wkbCircularString # Test SetNonLinearGeometriesEnabledFlag(False) old_val = ogr.GetNonLinearGeometriesEnabledFlag() ogr.SetNonLinearGeometriesEnabledFlag(False) assert lyr.GetGeomType() == ogr.wkbLineString assert lyr.GetLayerDefn().GetGeomType() == ogr.wkbLineString assert lyr.GetLayerDefn().GetGeomFieldDefn(0).GetType() == ogr.wkbLineString lyr.ResetReading() f = lyr.GetNextFeature() g = f.GetGeometryRef() assert g.GetGeometryType() == ogr.wkbLineString lyr.ResetReading() f = lyr.GetNextFeature() g = f.GetGeomFieldRef(0) assert g.GetGeometryType() == ogr.wkbLineString ogr.SetNonLinearGeometriesEnabledFlag(old_val)
def ogr_mem_15(): lyr = gdaltest.mem_ds.CreateLayer('wkbCircularString', geom_type=ogr.wkbCircularString) f = ogr.Feature(lyr.GetLayerDefn()) f.SetGeometry(ogr.CreateGeometryFromWkt('CIRCULARSTRING(0 0,1 0,0 0)')) lyr.CreateFeature(f) f = None if lyr.GetGeomType() != ogr.wkbCircularString: gdaltest.post_reason('fail') return 'fail' if lyr.GetLayerDefn().GetGeomType() != ogr.wkbCircularString: gdaltest.post_reason('fail') return 'fail' if lyr.GetLayerDefn().GetGeomFieldDefn( 0).GetType() != ogr.wkbCircularString: gdaltest.post_reason('fail') return 'fail' f = lyr.GetNextFeature() g = f.GetGeometryRef() if g.GetGeometryType() != ogr.wkbCircularString: gdaltest.post_reason('fail') return 'fail' # Test SetNonLinearGeometriesEnabledFlag(False) old_val = ogr.GetNonLinearGeometriesEnabledFlag() ogr.SetNonLinearGeometriesEnabledFlag(False) if lyr.GetGeomType() != ogr.wkbLineString: gdaltest.post_reason('fail') return 'fail' if lyr.GetLayerDefn().GetGeomType() != ogr.wkbLineString: gdaltest.post_reason('fail') return 'fail' if lyr.GetLayerDefn().GetGeomFieldDefn(0).GetType() != ogr.wkbLineString: gdaltest.post_reason('fail') return 'fail' lyr.ResetReading() f = lyr.GetNextFeature() g = f.GetGeometryRef() if g.GetGeometryType() != ogr.wkbLineString: gdaltest.post_reason('fail') return 'fail' lyr.ResetReading() f = lyr.GetNextFeature() g = f.GetGeomFieldRef(0) if g.GetGeometryType() != ogr.wkbLineString: gdaltest.post_reason('fail') return 'fail' ogr.SetNonLinearGeometriesEnabledFlag(old_val) return 'success'