Example #1
0
    def crop(self):
        cc = [49.4, 2.420480, 51.726419, 6.589545]  # belgium
        x0 = cc[1]
        y0 = cc[0]
        x1 = cc[3]
        y1 = cc[2]

        bmap = Basemap(resolution='i',
                       llcrnrlat=y0,
                       llcrnrlon=x0,
                       urcrnrlat=y1,
                       urcrnrlon=x1)
        bmap.land = None

        for path in self.shapefile_paths:
            bmap.readshapefile(path, 'land')
            self.polys += [shape2poly(shape) for shape in bmap.land]

        with open(self.in_file, 'r') as csvfile:
            csvreader = csv.reader(csvfile, delimiter=',')
            header = True
            for row in csvreader:
                if header:
                    self.header = ','.join(row)
                    header = False
                else:
                    p1 = Point(float(row[0]), float(row[1]))
                    p2 = Point(float(row[2]), float(row[3]))
                    self.segments.append((p1, p2, row))

        self.segments = [self.fix(segment) for segment in self.segments]
        # flatten
        self.segments = [item for sublist in self.segments for item in sublist]
Example #2
0
    def crop(self):
        cc = [49.4, 2.420480, 51.726419, 6.589545]  # belgium
        x0 = cc[1]
        y0 = cc[0]
        x1 = cc[3]
        y1 = cc[2]

        bmap = Basemap(resolution='i', llcrnrlat=y0, llcrnrlon=x0, urcrnrlat=y1, urcrnrlon=x1)
        bmap.land = None

        for path in self.shapefile_paths:
            bmap.readshapefile(path, 'land')
            self.polys += [shape2poly(shape) for shape in bmap.land]

        with open(self.in_file, 'r') as csvfile:
            csvreader = csv.reader(csvfile, delimiter=',')
            header = True
            for row in csvreader:
                if header:
                    self.header = ','.join(row)
                    header = False
                else:
                    p1 = Point(float(row[0]), float(row[1]))
                    p2 = Point(float(row[2]), float(row[3]))
                    self.segments.append((p1, p2, row))

        self.segments = [self.fix(segment) for segment in self.segments]
        # flatten
        self.segments = [item for sublist in self.segments for item in sublist]