当前位置: 首页>>代码示例>>Python>>正文


Python geometry.from_wkt函数代码示例

本文整理汇总了Python中pygeoif.geometry.from_wkt函数的典型用法代码示例。如果您正苦于以下问题:Python from_wkt函数的具体用法?Python from_wkt怎么用?Python from_wkt使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了from_wkt函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_multipolygon

 def test_multipolygon(self):
     p = geometry.from_wkt(
         "MULTIPOLYGON(((0 0,10 20,30 40,0 0)," "(1 1,2 2,3 3,1 1))," "((100 100,110 110,120 120,100 100)))"
     )
     # two polygons: the first one has an interior ring
     self.assertEqual(len(p.geoms), 2)
     self.assertEqual(p.geoms[0].exterior.coords, ((0.0, 0.0), (10.0, 20.0), (30.0, 40.0), (0.0, 0.0)))
     self.assertEqual(list(p.geoms[0].interiors)[0].coords, ((1.0, 1.0), (2.0, 2.0), (3.0, 3.0), (1.0, 1.0)))
     self.assertEqual(p.geoms[1].exterior.coords, ((100.0, 100.0), (110.0, 110.0), (120.0, 120.0), (100.0, 100.0)))
     self.assertEqual(
         p.to_wkt(),
         "MULTIPOLYGON(((0.0 0.0, 10.0 20.0, "
         "30.0 40.0, 0.0 0.0),"
         "(1.0 1.0, 2.0 2.0, 3.0 3.0, 1.0 1.0))"
         "((100.0 100.0, 110.0 110.0,"
         " 120.0 120.0, 100.0 100.0)))",
     )
     p = geometry.from_wkt("MULTIPOLYGON(((1 1,5 1,5 5,1 5,1 1)," "(2 2, 3 2, 3 3, 2 3,2 2)),((3 3,6 2,6 4,3 3)))")
     self.assertEqual(len(p.geoms), 2)
     p = geometry.from_wkt("MULTIPOLYGON (((30 20, 10 40, 45 40, 30 20))," "((15 5, 40 10, 10 20, 5 10, 15 5)))")
     self.assertEqual(
         p.__geo_interface__,
         {
             "type": "MultiPolygon",
             "bbox": (5.0, 5.0, 45.0, 40.0),
             "coordinates": (
                 (((30.0, 20.0), (10.0, 40.0), (45.0, 40.0), (30.0, 20.0)),),
                 (((15.0, 5.0), (40.0, 10.0), (10.0, 20.0), (5.0, 10.0), (15.0, 5.0)),),
             ),
         },
     )
开发者ID:benjwadams,项目名称:pygeoif,代码行数:31,代码来源:test_main.py

示例2: test_polygon

 def test_polygon(self):
     p = geometry.from_wkt(
         "POLYGON((-91.611 76.227,-91.543 76.217,"
         "-91.503 76.222,-91.483 76.221,-91.474 76.211,"
         "-91.484 76.197,-91.512 76.193,-91.624 76.2,"
         "-91.638 76.202,-91.647 76.211,-91.648 76.218,"
         "-91.643 76.221,-91.636 76.222,-91.611 76.227))"
     )
     self.assertEqual(p.exterior.coords[0][0], -91.611)
     self.assertEqual(p.exterior.coords[0], p.exterior.coords[-1])
     self.assertEqual(len(p.exterior.coords), 14)
     p = geometry.from_wkt("POLYGON((1 1,5 1,5 5,1 5,1 1),(2 2, 3 2, " "3 3, 2 3,2 2))")
     self.assertEqual(p.exterior.coords[0], p.exterior.coords[-1])
     self.assertEqual(p.exterior.coords[0], (1.0, 1.0))
     self.assertEqual(len(list(p.interiors)), 1)
     self.assertEqual(list(p.interiors)[0].coords, ((2.0, 2.0), (3.0, 2.0), (3.0, 3.0), (2.0, 3.0), (2.0, 2.0)))
     self.assertEqual(
         p.to_wkt(),
         "POLYGON((1.0 1.0, 5.0 1.0, 5.0 5.0, "
         "1.0 5.0, 1.0 1.0),(2.0 2.0, 3.0 2.0, "
         "3.0 3.0, 2.0 3.0, 2.0 2.0))",
     )
     p = geometry.from_wkt("POLYGON ((30 10, 10 20, 20 40, 40 40, 30 10))")
     self.assertEqual(p.exterior.coords[0], p.exterior.coords[-1])
     p = geometry.from_wkt(
         """POLYGON ((35 10, 10 20, 15 40, 45 45, 35 10),
         (20 30, 35 35, 30 20, 20 30))"""
     )
     self.assertEqual(p.exterior.coords[0], p.exterior.coords[-1])
开发者ID:benjwadams,项目名称:pygeoif,代码行数:29,代码来源:test_main.py

示例3: test_multilinestring

 def test_multilinestring(self):
     p = geometry.from_wkt('MULTILINESTRING((3 4,10 50,20 25),(-5 -8,-10 -8,-15 -4))')
     self.assertEqual(p.geoms[0].coords, (((3, 4),(10, 50),(20, 25))))
     self.assertEqual(p.geoms[1].coords, (((-5, -8),(-10, -8),(-15, -4))))
     self.assertEqual(p.to_wkt(),'MULTILINESTRING((3.0 4.0, 10.0 50.0, 20.0 25.0),(-5.0 -8.0, -10.0 -8.0, -15.0 -4.0))')
     p = geometry.from_wkt('''MULTILINESTRING ((10 10, 20 20, 10 40),
         (40 40, 30 30, 40 20, 30 10))''')
开发者ID:karimbahgat,项目名称:Tably,代码行数:7,代码来源:test_main.py

示例4: test_multipolygon

 def test_multipolygon(self):
     p = geometry.from_wkt('MULTIPOLYGON(((0 0,10 20,30 40,0 0),(1 1,2 2,3 3,1 1)),((100 100,110 110,120 120,100 100)))')
     #two polygons: the first one has an interior ring
     self.assertEqual(len(p.geoms), 2)
     self.assertEqual(p.geoms[0].exterior.coords,
             ((0.0, 0.0), (10.0, 20.0) , (30.0, 40.0), (0.0, 0.0)))
     self.assertEqual(list(p.geoms[0].interiors)[0].coords,
             ((1.0, 1.0), (2.0, 2.0), (3.0, 3.0), (1.0, 1.0)))
     self.assertEqual(p.geoms[1].exterior.coords,
         ((100.0, 100.0), (110.0, 110.0), (120.0, 120.0), (100.0, 100.0)))
     self.assertEqual(p.to_wkt(),
         'MULTIPOLYGON(((0.0 0.0, 10.0 20.0, 30.0 40.0, 0.0 0.0),(1.0 1.0, 2.0 2.0, 3.0 3.0, 1.0 1.0))((100.0 100.0, 110.0 110.0, 120.0 120.0, 100.0 100.0)))')
     p = geometry.from_wkt('MULTIPOLYGON(((1 1,5 1,5 5,1 5,1 1),(2 2, 3 2, 3 3, 2 3,2 2)),((3 3,6 2,6 4,3 3)))')
     self.assertEqual(len(p.geoms), 2)
开发者ID:mlaloux,项目名称:pygeoif,代码行数:14,代码来源:test_main.py

示例5: test_multipoint

 def test_multipoint(self):
     p = geometry.from_wkt("MULTIPOINT(3.5 5.6,4.8 10.5)")
     self.assertEqual(isinstance(p, geometry.MultiPoint), True)
     self.assertEqual(p.geoms[0].x, 3.5)
     self.assertEqual(p.geoms[1].y, 10.5)
     self.assertEqual(p.to_wkt(), "MULTIPOINT(3.5 5.6, 4.8 10.5)")
     p = geometry.from_wkt("MULTIPOINT ((10 40), (40 30), " "(20 20), (30 10))")
     self.assertEqual(isinstance(p, geometry.MultiPoint), True)
     self.assertEqual(p.geoms[0].x, 10.0)
     self.assertEqual(p.geoms[3].y, 10.0)
     p = geometry.from_wkt("MULTIPOINT (10 40, 40 30, 20 20, 30 10)")
     self.assertEqual(isinstance(p, geometry.MultiPoint), True)
     self.assertEqual(p.geoms[0].x, 10.0)
     self.assertEqual(p.geoms[3].y, 10.0)
开发者ID:benjwadams,项目名称:pygeoif,代码行数:14,代码来源:test_main.py

示例6: test_linestring

 def test_linestring(self):
     l = geometry.from_wkt('LINESTRING(-72.991 46.177,-73.079 46.16,'
                           '-73.146 46.124,-73.177 46.071,-73.164 46.044)')
     self.assertEqual(l.to_wkt(), 'LINESTRING (-72.991 46.177, '
                                  '-73.079 46.16, -73.146 46.124, '
                                  '-73.177 46.071, -73.164 46.044)')
     self.assertEqual(isinstance(l, geometry.LineString), True)
开发者ID:cleder,项目名称:pygeoif,代码行数:7,代码来源:test_main.py

示例7: create_leaflet_viewer

    def create_leaflet_viewer(self, idaho_image_results, output_filename):
        '''Create a leaflet viewer html file for viewing idaho images

        Args:
            idaho_image_results (dict): IDAHO image result set as returned from 
                                        the catalog.
            output_filename (str): where to save an output html file
        '''

        description = self.describe_images(idaho_image_results)
        if len(description) > 0:
            functionstring = ''
            for catid, images in description.items():
                for partnum, part in images['parts'].items():
    
                    num_images = len(list(part.keys()))
                    partname = None
                    if num_images == 1:
                        # there is only one image, use the PAN
                        partname = [p for p in list(part.keys())][0]
                        pan_image_id = ''
                    elif num_images == 2:
                        # there are two images in this part, use the multi (or pansharpen)
                        partname = [p for p in list(part.keys()) if p is not 'PAN'][0]
                        pan_image_id = part['PAN']['id']
    
                    if not partname:
                        self.logger.debug("Cannot find part for idaho image.")
                        continue
    
                    bandstr = {
                        'RGBN': '0,1,2',
                        'WORLDVIEW_8_BAND': '4,2,1',
                        'PAN': '0'
                    }.get(partname, '0,1,2')
    
                    part_boundstr_wkt = part[partname]['boundstr']
                    part_polygon = geometry.from_wkt(part_boundstr_wkt)
                    bucketname = part[partname]['bucket']
                    image_id = part[partname]['id']
                    W, S, E, N = part_polygon.bounds
    
                    functionstring += "addLayerToMap('%s','%s',%s,%s,%s,%s,'%s');\n" % (bucketname, image_id, W,S,E,N, pan_image_id)
    
            __location__ = os.path.realpath(
                os.path.join(os.getcwd(), os.path.dirname(__file__)))
            with open(os.path.join(__location__, 'leafletmap_template.html'), 'r') as htmlfile:
                data=htmlfile.read().decode("utf8")
    
            data = data.replace('FUNCTIONSTRING',functionstring)
            data = data.replace('CENTERLAT',str(S))
            data = data.replace('CENTERLON',str(W))
            data = data.replace('BANDS',bandstr)
            data = data.replace('TOKEN',self.gbdx_connection.access_token)
    
            with codecs.open(output_filename,'w','utf8') as outputfile:
                self.logger.debug("Saving %s" % output_filename)
                outputfile.write(data)
        else:
            print("No items returned.")
开发者ID:jeffnaus,项目名称:gbdxtools,代码行数:60,代码来源:idaho.py

示例8: get_bounding_box

def get_bounding_box(wkt):
    geom = geometry.from_wkt(wkt)
    minx = geom.bounds[0]
    miny = geom.bounds[1]
    maxx = geom.bounds[2]
    maxy = geom.bounds[3]
    return str(minx) + ',' + str(miny) + ',' + str(maxx) + ',' + str(maxy)
开发者ID:bcdev,项目名称:GISportal,代码行数:7,代码来源:geometry_support.py

示例9: test_geometrycollection

 def test_geometrycollection(self):
     gc = geometry.from_wkt('GEOMETRYCOLLECTION(POINT(4 6), LINESTRING(4 6,7 10))')
     self.assertEqual(len(list(gc.geoms)), 2)
     self.assertTrue(isinstance(list(gc.geoms)[0], geometry.Point))
     self.assertTrue(isinstance(list(gc.geoms)[1], geometry.LineString))
     self.assertEqual(gc.to_wkt(),
         'GEOMETRYCOLLECTION (POINT (4.0 6.0), LINESTRING (4.0 6.0, 7.0 10.0))')
开发者ID:karimbahgat,项目名称:Tably,代码行数:7,代码来源:test_main.py

示例10: verify_wkt

def verify_wkt(data):
    try:
        from shapely import wkt
        geom = wkt.loads(data)
    except ImportError:
        from pygeoif.geometry import from_wkt
        geom = from_wkt(data)
    return geom
开发者ID:seantis,项目名称:seantis.dir.events,代码行数:8,代码来源:utils.py

示例11: wkt

	def wkt(self, data):
		if data is None or len(data) == 0:
			return False

		try:
			wkt = geometry.from_wkt(data)
			return isinstance(wkt, geometry._Geometry)
		except:
			return False
开发者ID:JanVan01,项目名称:gwot-physical,代码行数:9,代码来源:utils.py

示例12: verifyWkt

 def verifyWkt(self, data):
     try:
         from shapely import wkt
         geom = wkt.loads(data)
         #geom = {"type":"Point","coordinates":"00000000"}
     except ImportError:
         from pygeoif.geometry import from_wkt
         geom = from_wkt(data)
     return geom
开发者ID:robystar,项目名称:collective.geo.contentlocations,代码行数:9,代码来源:geoshapeform.py

示例13: test_point

 def test_point(self):
     p = geometry.from_wkt("POINT (0.0 1.0)")
     self.assertEqual(isinstance(p, geometry.Point), True)
     self.assertEqual(p.x, 0.0)
     self.assertEqual(p.y, 1.0)
     self.assertEqual(p.to_wkt(), "POINT (0.0 1.0)")
     self.assertEqual(p.to_wkt(), p.wkt)
     self.assertEqual(str(p), "POINT (0.0 1.0)")
     self.assertEqual(p.geom_type, "Point")
开发者ID:benjwadams,项目名称:pygeoif,代码行数:9,代码来源:test_main.py

示例14: records_in_polygon

def records_in_polygon(records,polygon):
    # Filter out the records that are not inside the polygon
    output_records = []
    for record in records:
        recordwkt = record['properties']['footprintWkt']
        record_polygon = geometry.from_wkt(recordwkt)
        if bbox_in_poly(record_polygon,polygon):
            output_records.append(record)

    #print "Filtered in polygon: %s" % len(output_records)
    return output_records
开发者ID:loominator1970,项目名称:gbdxtools,代码行数:11,代码来源:catalog_search_aoi.py

示例15: query_iteratively

    def query_iteratively(self, searchAreaWkt, query, count=100, ttl='5m'):
        '''
        Perform a vector services query using the QUERY API
        (https://gbdxdocs.digitalglobe.com/docs/vs-query-list-vector-items-returns-default-fields)

        Args:
            searchAreaWkt: WKT Polygon of area to search
            query: Elastic Search query
            count: Maximum number of results to return
            ttl: Amount of time for each temporary vector page to exist

        Returns:
            generator of vector results
    
        '''

        search_area_polygon = geometry.from_wkt(searchAreaWkt)
        left, lower, right, upper = search_area_polygon.bounds

        params = {
            "q": query,
            "count": count,
            "ttl": ttl,
            "left": left,
            "right": right,
            "lower": lower,
            "upper": upper
        }

        # initialize paging request
        r = self.gbdx_connection.get(self.query_url, params=params)
        r.raise_for_status()
        page = r.json()
        paging_id = page['pagingId']
        item_count = int(page['itemCount'])

        # get vectors from each page
        while paging_id and item_count > 0:

          headers = {'Content-Type':'application/x-www-form-urlencoded'}
          data = {
              "pagingId": paging_id,
              "ttl": ttl
          }

          r = self.gbdx_connection.post(self.page_url, headers=headers, data=data)
          r.raise_for_status()
          page = r.json()
          paging_id = page['next_paging_id']
          item_count = int(page['item_count'])
          data = page['data']

          for vector in data:
            yield vector
开发者ID:michaelconnor00,项目名称:gbdxtools,代码行数:54,代码来源:vectors.py


注:本文中的pygeoif.geometry.from_wkt函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。