Ejemplo n.º 1
0
def create_circle(lon, lat, radius, resolution=64):
    # Build circle
    circle = CirclePolygon((lon, lat), radius, resolution, facecolor='b')

    # Get coordinates
    path = circle.get_path()
    transform = circle.get_transform()
    path = transform.transform_path(path)

    # Create ring
    ring = ogr.Geometry(ogr.wkbLinearRing)
    for v in path.vertices:
        ring.AddPoint(v[0], v[1])

    # Create polygon (from OGR API)
    p = ogr.Geometry(ogr.wkbPolygon)
    p.AddGeometry(ring)

    return p

def rotate(lis, x):
    x = radians(x)
    return matmult([[cos(x), -sin(x), 0], [sin(x), cos(x), 0], [0, 0, 1]], lis)


def translate(lis, dx, dy):
    return matmult([[1, 0, dx], [0, 1, dy], [0, 0, 1]], lis)


if instructions[0] == "disc":
    #    a,b,r=map(int,instructions[1].split())
    circle = CirclePolygon((a, b), radius=r)
    plt.gca().add_patch(circle)
    verts = circle.get_path().vertices
    x = list(verts[:, 0])
    y = list(verts[:, 1])
    plt.axis('scaled')

instructions = instructions[1:-1]

k = str(instructions[0])
k = k[2:]
#xs, ys = map(int, k.split())
ins = instructions
r1 = r
r2 = r
while len(ins) != 0:
    llp = len(x)
    asdf = [1] * llp