def test_vertex_array_delete_slices(): tags = ExtendedTags.from_text(SPLINE) vertices = VertexArray.from_tags(tags.get_subclass('AcDbSpline')) del vertices[:2] assert len(vertices) == 5 assert vertices[0] == (20, 20, 20) vertices = VertexArray.from_tags(tags.get_subclass('AcDbSpline')) del vertices[::2] assert len(vertices) == 3 assert vertices[0] == (10, 10, 10) assert vertices[1] == (30, 30, 30) assert vertices[2] == (50, 50, 50)
def test_vertex_array_to_dxf_tags(): tags = ExtendedTags.from_text(SPLINE) vertices = VertexArray.from_tags(tags.get_subclass('AcDbSpline')) tags = TagCollector.dxftags(vertices) assert len(tags) == 7 * 3 assert tags[0] == (10, 0.) assert tags[3] == (10, 10.) assert tags[-1] == (30, 60.)
def test_vertex_array_to_dxf_tags(): tags = ExtendedTags.from_text(SPLINE) vertices = VertexArray.from_tags(tags.get_subclass('AcDbSpline')) tags = list(vertices.dxftags()) assert len(tags) == 7 assert tags[0] == (10, (0., 0., 0.)) assert tags[1] == (10, (10., 10., 10.)) assert tags[-1] == (10, (60., 60., 60.))
def test_vertex_array_insert(): tags = ExtendedTags.from_text(SPLINE) vertices = VertexArray.from_tags(tags.get_subclass('AcDbSpline')) assert vertices[0] == (0, 0, 0) assert vertices[1] == (10, 10, 10) vertices.insert(1, (-1, -2, -3)) assert vertices[0] == (0, 0, 0) assert vertices[1] == (-1, -2, -3) assert vertices[2] == (10, 10, 10) assert len(vertices) == 8
def test_vertex_array_delete(): tags = ExtendedTags.from_text(SPLINE) vertices = VertexArray.from_tags(tags.get_subclass('AcDbSpline')) assert len(vertices) == 7 assert vertices[0] == (0, 0, 0) del vertices[0] assert vertices[0] == (10, 10, 10) assert len(vertices) == 6 del vertices[1] # (20, 20, 20) assert vertices[1] == (30, 30, 30) assert len(vertices) == 5
def test_vertex_array_basics(): tags = ExtendedTags.from_text(SPLINE) vertices = VertexArray.from_tags(tags.get_subclass('AcDbSpline')) assert len(vertices) == 7 points = list(vertices) assert len(points) == 7 assert vertices[0] == (0., 0., 0.) assert vertices[1] == (10., 10., 10.) # test negative index assert vertices[-1] == (60., 60., 60.) with pytest.raises(IndexError): _ = vertices[-8] with pytest.raises(IndexError): _ = vertices[8]
def test_vertex_array_advanced(): tags = ExtendedTags.from_text(SPLINE) vertices = VertexArray.from_tags(tags.get_subclass('AcDbSpline')) # append() vertices.append((70, 70, 70)) assert len(vertices) == 8 assert vertices[-1] == (70., 70., 70.) # set vertex vertices[0] = (7, 6, 5) assert vertices[0] == (7, 6, 5) assert len(vertices) == 8 # clear() vertices.clear() assert len(vertices) == 0 # extend() vertices.extend([(0, 0, 0), (1, 2, 3), (4, 5, 6)]) assert len(vertices) == 3 assert vertices[0] == (0, 0, 0) assert vertices[1] == (1, 2, 3) assert vertices[2] == (4, 5, 6)