예제 #1
0
def transform(path, m, n1, n2, n3, scale=1.0, points=100, range=TWOPI):
    new_path = Path()
    for i in _range(points):
        pt = path.pointAt(float(i) / points)
        phi = i * range / points
        dx, dy = supercalc(m, n1, n2, n3, phi)
        new_path.addPoint(pt.x + dx * scale, pt.y + dy * scale)
    return new_path
예제 #2
0
def transform(path, m, n1, n2, n3, scale=1.0, points=100, range=TWOPI):
    new_path = Path()
    for i in _range(points):
        pt = path.pointAt(float(i) / points)
        phi = i * range / points
        dx, dy = supercalc(m, n1, n2, n3, phi)
        new_path.addPoint(pt.x + dx * scale, pt.y + dy * scale)
    return new_path
예제 #3
0
def path(position, width, height, m, n1, n2, n3, points=1000, percentage=1.0, range=TWOPI):
    path = Path()
    for i in _range(points):
        if i > points*percentage:
            continue
        phi = i * range / points
        dx, dy = supercalc(m, n1, n2, n3, phi)
        dx = (dx * width / 2) + position.x
        dy = (dy * height / 2) + position.y
        path.addPoint(dx, dy)
    return path
예제 #4
0
def path(position,
         width,
         height,
         m,
         n1,
         n2,
         n3,
         points=1000,
         percentage=1.0,
         range=TWOPI):
    path = Path()
    for i in _range(points):
        if i > points * percentage:
            continue
        phi = i * range / points
        dx, dy = supercalc(m, n1, n2, n3, phi)
        dx = (dx * width / 2) + position.x
        dy = (dy * height / 2) + position.y
        path.addPoint(dx, dy)
    return path