File: project_linear.py

package info (click to toggle)
python-cartopy 0.21.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 14,668 kB
  • sloc: python: 15,101; makefile: 166; javascript: 66; sh: 6
file content (29 lines) | stat: -rw-r--r-- 926 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# Copyright Cartopy Contributors
#
# This file is part of Cartopy and is released under the LGPL license.
# See COPYING and COPYING.LESSER in the root of the repository for full
# licensing details.

import cartopy.io.shapereader as shpreader
import cartopy.crs as ccrs


class Suite:
    params = [
        ('PlateCarree', 'NorthPolarStereo', 'Robinson',
         'InterruptedGoodeHomolosine'),
        ('110m', '50m'),
    ]
    param_names = ['projection', 'resolution']

    def setup(self, projection, resolution):
        shpfilename = shpreader.natural_earth(
            resolution=resolution, category='physical', name='ocean')
        reader = shpreader.Reader(shpfilename)
        oceans = list(reader.geometries())
        self.geoms = oceans[0]

        self.projection = getattr(ccrs, projection)()

    def time_project_linear(self, projection, resolution):
        self.projection.project_geometry(self.geoms)