コード例 #1
0
ファイル: concave_interactive.py プロジェクト: zhuliquan/hull
def mouseClicked():
    """Mouse click event function."""
    global points, concave

    background(255)
    points.append((mouse.x, mouse.y))

    for p in points:
        ellipse(p[0], p[1], SIZE, SIZE)

    if len(points) >= 3:
        concave = hull.concave(points)
        for i in range(len(concave) - 1):
            line(concave[i], concave[i + 1])
        line(concave[-1], concave[0])
コード例 #2
0
def mouseClicked():
    """
    Mouse clicked event.

    :return: None
    """
    global points, c_hull
    background(255)  # Redraw background to delete old scenery
    points.append((mouse.x, mouse.y))
    for p in points:
        ellipse(p[0], p[1], SIZE, SIZE)
    if len(points) >= 3:
        c_hull = hull.concave(points, 3)  # Calculate concave hull
        for i in range(len(c_hull) - 1):
            line(c_hull[i], c_hull[i + 1])
        line(c_hull[-1], c_hull[0])  # Close hull
コード例 #3
0
ファイル: concave_static.py プロジェクト: zhuliquan/hull
def setup():
    """Initial setup function."""
    size(WIDTH, HEIGHT)
    background(255)
    fill(0)
    stroke(0)

    points = [] 
        for i in range(COUNT):
        x = randint(OFFSET, WIDTH - OFFSET)
        y = randint(OFFSET, HEIGHT - OFFSET)
        points.append((x, y))
        ellipse(x, y, SIZE, SIZE)

    concave = hull.concave(points)
    for i in range(len(concave) - 1):
        line(concave[i], concave[i + 1])
    line(concave[-1], concave[0])
コード例 #4
0
def setup():
    """
    Setup.

    :return: None
    """
    size(WIDTH, HEIGHT)
    background(255)
    fill(0)
    stroke(0)

    points = []  # List of points
    for i in range(COUNT):
        x, y = randint(OFFSET, WIDTH - OFFSET), randint(OFFSET, HEIGHT - OFFSET)
        points.append((x, y))
        ellipse(x, y, SIZE, SIZE)

    c_hull = hull.concave(points, 3)  # Calculate concave hull
    for i in range(len(c_hull) - 1):
        line(c_hull[i], c_hull[i + 1])
    line(c_hull[-1], c_hull[0])  # Close hull
コード例 #5
0
import hull

points = [(207, 184), (393, 60), (197, 158), (197, 114), (128, 261), (442, 40),
          (237, 159), (338, 75), (194, 93), (33, 159), (393, 152), (433, 267),
          (324, 141), (384, 183), (273, 165), (250, 257), (423, 198),
          (227, 68), (120, 184), (214, 49), (256, 75), (379, 93), (312, 49),
          (471, 187), (366, 122)]

concave_hull = hull.concave(points, 3)
convex_hull = hull.convex(points)
コード例 #6
0
import hull

points = [(207, 184), (393, 60), (197, 158), (197, 114), (128, 261), (442, 40),
          (237, 159), (338, 75), (194, 93), (33, 159), (393, 152), (433, 267),
          (324, 141), (384, 183), (273, 165), (250, 257), (423, 198),
          (227, 68), (120, 184), (214, 49), (256, 75), (379, 93), (312, 49),
          (471, 187), (366, 122)]

concave = hull.concave(points, 3)
convex = hull.convex(points)