Python ogr.Geometry() Examples
The following are 5
code examples of ogr.Geometry().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
ogr
, or try the search function
.
Example #1
Source File: _conftest.py From pyeo with GNU General Public License v3.0 | 6 votes |
def create_temp_shape(self, name, point_list): vector_file = os.path.join(self.temp_dir.name, name) shape_driver = ogr.GetDriverByName("ESRI Shapefile") # Depreciated; replace at some point vector_data_source = shape_driver.CreateDataSource(vector_file) vector_layer = vector_data_source.CreateLayer("geometry", self.srs, geom_type=ogr.wkbPolygon) ring = ogr.Geometry(ogr.wkbLinearRing) for point in point_list: ring.AddPoint(point[0], point[1]) poly = ogr.Geometry(ogr.wkbPolygon) poly.AddGeometry(ring) vector_feature_definition = vector_layer.GetLayerDefn() vector_feature = ogr.Feature(vector_feature_definition) vector_feature.SetGeometry(poly) vector_layer.CreateFeature(vector_feature) vector_layer.CreateField(ogr.FieldDefn("class", ogr.OFTInteger)) feature = ogr.Feature(vector_layer.GetLayerDefn()) feature.SetField("class", 3) vector_data_source.FlushCache() self.vectors.append(vector_data_source) # Check this is the right thing to be saving here self.vector_paths.append(vector_file)
Example #2
Source File: pyeo_tests.py From pyeo with GNU General Public License v3.0 | 5 votes |
def test_write_polygon(managed_geotiff_dir): test_dir = managed_geotiff_dir ring = ogr.Geometry(ogr.wkbLinearRing) ring.AddPoint(1,1) ring.AddPoint(1,5) ring.AddPoint(5,1) ring.AddPoint(1,1) poly = ogr.Geometry(ogr.wkbPolygon) poly.AddGeometry(ring) result_path = os.path.join(test_dir.path, "test_poly") pyeo.write_polygon(poly, result_path) assert os.path.exists(result_path)
Example #3
Source File: _conftest.py From pyeo with GNU General Public License v3.0 | 5 votes |
def create_100x100_shp(self, name): """Cretes a shapefile with a vector layer named "geometry" containing a 100mx100m square , top left corner being at wgs coords 10,10. This polygon has a field, 'class' with a value of 3. Left in for back-compatability""" # TODO Generalise this vector_file = os.path.join(self.temp_dir.name, name) shape_driver = ogr.GetDriverByName("ESRI Shapefile") # Depreciated; replace at some point vector_data_source = shape_driver.CreateDataSource(vector_file) vector_layer = vector_data_source.CreateLayer("geometry", self.srs, geom_type=ogr.wkbPolygon) ring = ogr.Geometry(ogr.wkbLinearRing) ring.AddPoint(10.0, 10.0) ring.AddPoint(10.0, 110.0) ring.AddPoint(110.0, 110.0) ring.AddPoint(110.0, 10.0) ring.AddPoint(10.0, 10.0) poly = ogr.Geometry(ogr.wkbPolygon) poly.AddGeometry(ring) vector_feature_definition = vector_layer.GetLayerDefn() vector_feature = ogr.Feature(vector_feature_definition) vector_feature.SetGeometry(poly) vector_layer.CreateFeature(vector_feature) vector_layer.CreateField(ogr.FieldDefn("class", ogr.OFTInteger)) feature = ogr.Feature(vector_layer.GetLayerDefn()) feature.SetField("class", 3) vector_data_source.FlushCache() self.vectors.append(vector_data_source) # Check this is the right thing to be saving here self.vector_paths.append(vector_file)
Example #4
Source File: vector.py From OpenSarToolkit with MIT License | 5 votes |
def shp_to_wkt(shapefile, buffer=None, convex=False, envelope=False): '''A helper function to translate a shapefile into WKT ''' # get filepaths and proj4 string shpfile = os.path.abspath(shapefile) prjfile = shpfile[:-4] + '.prj' proj4 = get_proj4(prjfile) lyr_name = os.path.basename(shapefile)[:-4] shp = ogr.Open(os.path.abspath(shapefile)) lyr = shp.GetLayerByName(lyr_name) geom = ogr.Geometry(ogr.wkbGeometryCollection) for feat in lyr: geom.AddGeometry(feat.GetGeometryRef()) wkt = geom.ExportToWkt() if proj4 != '+proj=longlat +datum=WGS84 +no_defs': print(' INFO: Reprojecting AOI file to Lat/Long (WGS84)') wkt = reproject_geometry(wkt, proj4, 4326).ExportToWkt() # do manipulations if needed wkt = wkt_manipulations(wkt, buffer=buffer, convex=convex, envelope=envelope) return wkt
Example #5
Source File: reader.py From stdm with GNU General Public License v2.0 | 5 votes |
def to_ogr_multi_type(self, geom, ogr_type): """ Convert ogr geometry to multi-type when supplied the ogr.type. :param geom: The ogr geometry :type geom: OGRGeometry :param ogr_type: The ogr geometry type :type ogr_type: String :return: WkB geometry and the output layer geometry type. :rtype: Tuple """ multi_geom = ogr.Geometry(ogr_type) multi_geom.AddGeometry(geom) geom_wkb = multi_geom.ExportToWkt() geom_type = multi_geom.GetGeometryName() return geom_wkb, geom_type