Exemple #1
0
def test_edgedata_io(mesh):
    mesh.update_default_edge_attributes({'index': 0})
    for index, (u, v) in enumerate(mesh.edges()):
        mesh.edge_attribute((u, v), 'index', index)
    other = HalfEdge.from_data(mesh.data)
    assert all(
        other.edge_attribute(edge, 'index') == index
        for index, edge in enumerate(other.edges()))
Exemple #2
0
def test_default_edge_attributes():
    he = HalfEdge(name='test', default_edge_attributes={'a': 1, 'b': 2})
    for edge in he.vertices():
        assert he.edge_attribute(edge, name='a') == 1
        assert he.edge_attribute(edge, name='b') == 2
        he.edge_attribute(edge, name='a', value=3)
        assert he.edge_attribute(edge, name='a') == 3
Exemple #3
0
def test_default_vertex_attributes():
    he = HalfEdge(name='test', default_vertex_attributes={'a': 1, 'b': 2})
    for vertex in he.vertices():
        assert he.vertex_attribute(vertex, name='a') == 1
        assert he.vertex_attribute(vertex, name='b') == 2
        he.vertex_attribute(vertex, name='a', value=3)
        assert he.vertex_attribute(vertex, name='a') == 3
Exemple #4
0
def mesh():
    vertices = [None, None, None, None]
    faces = [[0, 1, 2], [0, 3, 1]]
    he = HalfEdge()
    for vertex in vertices:
        he.add_vertex()
    for face in faces:
        he.add_face(face)
    return he
Exemple #5
0
def mesh():
    vertices = [
        [1.0, 0.0, 0.0],
        [1.0, 2.0, 0.0],
        [0.0, 1.0, 0.0],
        [2.0, 1.0, 0.0]
    ]

    faces = [
        [0, 1, 2],
        [0, 3, 1]
    ]

    he = HalfEdge()

    for vertex in vertices:
        he.add_vertex(x=vertex[0], y=vertex[1], z=vertex[2])

    for face in faces:
        he.add_face(face)

    return he