(self)
| 26 | super().__init__(*args, **kwargs) |
| 27 | |
| 28 | def setUp(self): |
| 29 | self.id_window = None |
| 30 | self.client_window = None |
| 31 | |
| 32 | theta = np.linspace(-1 * np.pi, 1 * np.pi, 100) |
| 33 | z = np.linspace(2, -2, 100) |
| 34 | r = z**2 + 1 |
| 35 | x = r * np.sin(theta) |
| 36 | y = r * np.cos(theta) |
| 37 | points = np.column_stack((x, y, z)) |
| 38 | |
| 39 | lineSource = vtkPolyLineSource() |
| 40 | lineSource.SetNumberOfPoints(len(points)) |
| 41 | labels = vtkStringArray() |
| 42 | for i, point in enumerate(points): |
| 43 | lineSource.SetPoint(i, point[0], point[1], point[2]) |
| 44 | labels.InsertNextValue(f"x:{point[0]:.2f} y:{point[1]:.2f} z:{point[2]:.2f}") |
| 45 | |
| 46 | lineSource.Update() |
| 47 | line = lineSource.GetOutput() |
| 48 | labels.SetName('labels') |
| 49 | line.GetPointData().AddArray(labels) |
| 50 | |
| 51 | elev = vtkElevationFilter() |
| 52 | elev.SetInputData(line) |
| 53 | mapper = vtkPolyDataMapper() |
| 54 | mapper.SetInputConnection(elev.GetOutputPort()) |
| 55 | actor = vtkActor() |
| 56 | actor.GetProperty().SetLineWidth(10) |
| 57 | actor.GetProperty().SetRenderLinesAsTubes(True) |
| 58 | actor.SetMapper(mapper) |
| 59 | renderer = vtkRenderer() |
| 60 | renderer.AddActor(actor) |
| 61 | # renderer.SetBackground(1.0, 1.0, 1.0) |
| 62 | |
| 63 | hier = vtkPointSetToLabelHierarchy() |
| 64 | hier.SetInputData(line) |
| 65 | hier.SetLabelArrayName('labels') |
| 66 | hier.Update() |
| 67 | |
| 68 | labelMapper = vtkLabelPlacementMapper() |
| 69 | labelMapper.SetInputConnection(hier.GetOutputPort()) |
| 70 | labelActor = vtkActor2D() |
| 71 | labelActor.SetMapper(labelMapper) |
| 72 | |
| 73 | renderer.AddActor(labelActor) |
| 74 | |
| 75 | self.server_window = vtkRenderWindow() |
| 76 | iren = vtkRenderWindowInteractor() |
| 77 | self.server_window.SetInteractor(iren) |
| 78 | self.server_window.AddRenderer(renderer) |
| 79 | |
| 80 | self.server_window.SetMultiSamples(0) |
| 81 | self.server_window.Render() |
| 82 | |
| 83 | def serialize(self): |
| 84 |
nothing calls this directly
no test coverage detected