예제 #1
0
def render_map(args):
    cfg = read_map_descriptor(args.config)
    K = Kartograph()
    if args.format:
        format = args.format
    elif args.output and args.output != '-':
        format = os.path.splitext(args.output)[1][1:]
    else:
        format = 'svg'
    try:

        # generate the map
        if args.style:
            css = args.style.read()
        else:
            css = None
        if args.output is None and not args.preview:
            args.output = '-'
        if args.output and args.output != '-':
            args.output = open(args.output, 'w')

        K.generate(cfg,
                   args.output,
                   preview=args.preview,
                   format=format,
                   stylesheet=css)
        if not args.output:
            # output to stdout
            # print str(r)
            pass

    except Exception, e:
        print_error(e)
        exit(-1)
예제 #2
0
def svg(args):
    cfg = parse_config(args.config)
    K = Kartograph()
    try:
        K.generate(cfg, args.output)
    except KartographError, e:
        print e
        exit(-1)
예제 #3
0
def kml(args):
    cfg = parse_config(args.config)
    K = Kartograph()
    try:
        K.generate_kml(cfg, args.config)
    except KartographError, e:
        print e
        exit(-1)
예제 #4
0
def generate_place(cfg, the_file, css, curr_state, curr_place):

    # configurations for Kartography

    K = Kartograph()
    K.generate(cfg,
               outfile=the_file,
               stylesheet=css,
               render_format='Moo',
               curr_place=curr_place)
예제 #5
0
def create_map(cc):
    cfg = {
        "layers": {
            "nutsregions": {
                "src": "../data/NUTS_RG_03M_2010.shp",
                "attributes": "all",
                "filter": {
                    "NUTS_ID": country[cc]
                }
            }
        },
        "proj": {
            "id": "satellite",
            "lon0": "auto",
            "lat0": "auto"
        }
    }

    K = Kartograph()
    K.generate(cfg, outfile=cc + '.svg')
예제 #6
0
def merp(place, bbox):
    bbox = bbox.split(",")
    bbox = [float(ll) for ll in bbox]

    new_bbox = geometry.LineString([(bbox[0], bbox[1]), (bbox[2], bbox[3])
                                    ]).envelope.buffer(0.05).bounds

    K = Kartograph()
    css = open('styles.css').read()

    config = {
        'layers': [{
            'src': 'shapefiles/' + place + '/' + place + '_out.shp',
            'class': 'runways'
        }],
        'bounds': {
            'mode': 'bbox',
            'data': [bbox[1], bbox[0], bbox[3], bbox[2]]
        }
    }

    K.generate(config, outfile='svg3/' + place + '.svg', stylesheet=css)
예제 #7
0
#!/usr/bin/python2.7
from kartograph import Kartograph

# conda execute
# env:
#  - python>=2.7.0

import argparse

parser = argparse.ArgumentParser()
parser.add_argument("-source")
parser.add_argument("-proj")
parser.add_argument("-outfile")
args = parser.parse_args()

print(args)
config = {
    "layers": {
        "mylayer": {
            "src": args.source,
            "attributes": "all"
        }
    },
    "proj": {
        "id": args.proj
    }
}

K = Kartograph()
K.generate(config, outfile=args.outfile)