def test_get_bounds(): size = (15, 15) test_bounds = [0.0, 15, 0.0, 15, 0.0, 0.0] points = vtk.vtkPoints() points.InsertNextPoint(0, 0, 0) points.InsertNextPoint(size[0], 0, 0) points.InsertNextPoint(size[0], size[1], 0) points.InsertNextPoint(0, size[1], 0) # Create the polygon polygon = vtk.vtkPolygon() polygon.GetPointIds().SetNumberOfIds(4) # make a quad polygon.GetPointIds().SetId(0, 0) polygon.GetPointIds().SetId(1, 1) polygon.GetPointIds().SetId(2, 2) polygon.GetPointIds().SetId(3, 3) # Add the polygon to a list of polygons polygons = vtk.vtkCellArray() polygons.InsertNextCell(polygon) # Create a PolyData polygonPolyData = vtk.vtkPolyData() polygonPolyData.SetPoints(points) polygonPolyData.SetPolys(polygons) # Create a mapper and actor mapper = vtk.vtkPolyDataMapper2D() mapper = set_input(mapper, polygonPolyData) actor = vtk.vtkActor2D() actor.SetMapper(mapper) compute_bounds(actor) npt.assert_equal(get_bounds(actor), test_bounds)
from fury.utils import vtk from fury import ui, window linesPolyData = vtk.vtkPolyData() pts = vtk.vtkPoints() count = 0 for i in range(0, 1800, 30): pts.InsertNextPoint([0, i, 0]) pts.InsertNextPoint([800, i, 0]) pts.InsertNextPoint([i, 0, 0]) pts.InsertNextPoint([i, 800, 0]) count += 1 linesPolyData.SetPoints(pts) lines = vtk.vtkCellArray() for i in range(0, count + 1, 4): h_line = vtk.vtkLine() v_line = vtk.vtkLine() h_line.GetPointIds().SetId(0, i) h_line.GetPointIds().SetId(1, i + 1) v_line.GetPointIds().SetId(0, i + 2) v_line.GetPointIds().SetId(1, i + 3) lines.InsertNextCell(h_line) lines.InsertNextCell(v_line)