def test_ui_line_double_slider_2d(interactive=False): line_double_slider_2d_test = ui.LineDoubleSlider2D( center=(300, 300), shape="disk", outer_radius=15, min_value=-10, max_value=10, initial_values=(-10, 10)) npt.assert_equal(line_double_slider_2d_test.handles[0].size, (30, 30)) npt.assert_equal(line_double_slider_2d_test.left_disk_value, -10) npt.assert_equal(line_double_slider_2d_test.right_disk_value, 10) if interactive: show_manager = window.ShowManager(size=(600, 600), title="FURY Line Double Slider") show_manager.scene.add(line_double_slider_2d_test) show_manager.start() line_double_slider_2d_test = ui.LineDoubleSlider2D( center=(300, 300), shape="square", handle_side=5, initial_values=(50, 40)) npt.assert_equal(line_double_slider_2d_test.handles[0].size, (5, 5)) npt.assert_equal(line_double_slider_2d_test._values[0], 39) npt.assert_equal(line_double_slider_2d_test.right_disk_value, 40) if interactive: show_manager = window.ShowManager(size=(600, 600), title="FURY Line Double Slider") show_manager.scene.add(line_double_slider_2d_test) show_manager.start()
panel = ui.Panel2D((256, 144), position=(40, 5), color=(1, 1, 1), opacity=.1, align='right') thr_x1 = np.percentile(xyz[:, 0], 50) thr_x2 = max_xyz[0] global ind_x ind_x = argviz(thr_x1, thr_x2, xyz, 0) slider_clipping_plane_label_x = build_label('X Clipping Plane') slider_clipping_plane_thrs_x = ui.LineDoubleSlider2D( line_width=3, outer_radius=5, length=115, initial_values=(thr_x1, thr_x2), min_value=min_xyz[0], max_value=max_xyz[0], font_size=12, text_template="{value:.0f}") thr_y1 = np.percentile(xyz[:, 1], 50) thr_y2 = max_xyz[1] global ind_y ind_y = argviz(thr_y1, thr_y2, xyz, 1) slider_clipping_plane_label_y = build_label('Y Clipping Plane') slider_clipping_plane_thrs_y = ui.LineDoubleSlider2D( line_width=3, outer_radius=5, length=115, initial_values=(thr_y1, thr_y2),
def test_ui_line_double_slider_2d(interactive=False): line_double_slider_2d_horizontal_test = ui.LineDoubleSlider2D( center=(300, 300), shape="disk", outer_radius=15, min_value=-10, max_value=10, initial_values=(-10, 10)) npt.assert_equal( line_double_slider_2d_horizontal_test.handles[0].size, (30, 30)) npt.assert_equal( line_double_slider_2d_horizontal_test.left_disk_value, -10) npt.assert_equal( line_double_slider_2d_horizontal_test.right_disk_value, 10) line_double_slider_2d_vertical_test = ui.LineDoubleSlider2D( center=(300, 300), shape="disk", outer_radius=15, min_value=-10, max_value=10, initial_values=(-10, 10)) npt.assert_equal( line_double_slider_2d_vertical_test.handles[0].size, (30, 30)) npt.assert_equal( line_double_slider_2d_vertical_test.bottom_disk_value, -10) npt.assert_equal( line_double_slider_2d_vertical_test.top_disk_value, 10) if interactive: show_manager = window.ShowManager(size=(600, 600), title="FURY Line Double Slider") show_manager.scene.add(line_double_slider_2d_horizontal_test) show_manager.scene.add(line_double_slider_2d_vertical_test) show_manager.start() line_double_slider_2d_horizontal_test = ui.LineDoubleSlider2D( center=(300, 300), shape="square", handle_side=5, orientation="horizontal", initial_values=(50, 40)) npt.assert_equal( line_double_slider_2d_horizontal_test.handles[0].size, (5, 5)) npt.assert_equal( line_double_slider_2d_horizontal_test.left_disk_value, 39) npt.assert_equal( line_double_slider_2d_horizontal_test.right_disk_value, 40) npt.assert_equal( line_double_slider_2d_horizontal_test.left_disk_ratio, 0.39) npt.assert_equal( line_double_slider_2d_horizontal_test.right_disk_ratio, 0.4) line_double_slider_2d_vertical_test = ui.LineDoubleSlider2D( center=(300, 300), shape="square", handle_side=5, orientation="vertical", initial_values=(50, 40)) npt.assert_equal( line_double_slider_2d_vertical_test.handles[0].size, (5, 5)) npt.assert_equal( line_double_slider_2d_vertical_test.bottom_disk_value, 39) npt.assert_equal( line_double_slider_2d_vertical_test.top_disk_value, 40) npt.assert_equal( line_double_slider_2d_vertical_test.bottom_disk_ratio, 0.39) npt.assert_equal( line_double_slider_2d_vertical_test.top_disk_ratio, 0.4) with npt.assert_raises(ValueError): ui.LineDoubleSlider2D(orientation="Not_hor_not_vert") if interactive: show_manager = window.ShowManager(size=(600, 600), title="FURY Line Double Slider") show_manager.scene.add(line_double_slider_2d_horizontal_test) show_manager.scene.add(line_double_slider_2d_vertical_test) show_manager.start()
global panel panel = ui.Panel2D((420, 240), position=(760, 20), color=(1, 1, 1), opacity=.1, align='right') thr_x1 = np.percentile(xyz[:, 0], 25) thr_x2 = max_xyz[0] global ind_x ind_x = argviz(thr_x1, thr_x2, xyz, 0) slider_clipping_plane_label_x = build_label('X Clipping Plane') slider_clipping_plane_thrs_x = ui.LineDoubleSlider2D( initial_values=(thr_x1, thr_x2), min_value=min_xyz[0], max_value=max_xyz[0], text_template="{value:.0f}") thr_y1 = np.percentile(xyz[:, 1], 25) thr_y2 = max_xyz[1] global ind_y ind_y = argviz(thr_y1, thr_y2, xyz, 1) slider_clipping_plane_label_y = build_label('Y Clipping Plane') slider_clipping_plane_thrs_y = ui.LineDoubleSlider2D( initial_values=(thr_y1, thr_y2), min_value=min_xyz[1], max_value=max_xyz[1], text_template="{value:.0f}") thr_z1 = np.percentile(xyz[:, 2], 25)
[np.percentile(centers[:, i], v) for i, v in enumerate(high_perc)]) slider_frame_thr = ui.LineSlider2D(initial_value=0, min_value=0, max_value=len(xml_files) - 1, length=260, line_width=3, outer_radius=8, font_size=16, text_template="{value:.0f}") slider_clipping_plane_thrs_x = ui.LineDoubleSlider2D( line_width=3, outer_radius=8, length=260, initial_values=(low_ranges[0], high_ranges[0]), min_value=min_centers[0], max_value=max_centers[0], font_size=16, text_template="{value:.0f}") slider_clipping_plane_thrs_y = ui.LineDoubleSlider2D( line_width=3, outer_radius=8, length=260, initial_values=(low_ranges[1], high_ranges[1]), min_value=min_centers[1], max_value=max_centers[1], font_size=16, text_template="{value:.0f}")
color=(1, 1, 1), opacity=.1, align='right') # thr_x1 = np.percentile(xyz[:, 0], 50) thr_x1 = min_xyz[0] thr_x2 = max_xyz[0] global ind_x ind_x = argviz(thr_x1, thr_x2, xyz, 0) slider_clipping_plane_label_x = build_label('X Clipping Plane') # initial_values=(thr_x1, thr_x2), min_value=xmin, slider_clipping_plane_thrs_x = ui.LineDoubleSlider2D( line_width=3, outer_radius=5, length=115, initial_values=(xmin, xmax), min_value=xmin, max_value=xmax, font_size=12, text_template="{value:.0f}") # thr_y1 = np.percentile(xyz[:, 1], 50) thr_y1 = min_xyz[1] thr_y2 = max_xyz[1] global ind_y ind_y = argviz(thr_y1, thr_y2, xyz, 1) slider_clipping_plane_label_y = build_label('Y Clipping Plane') slider_clipping_plane_thrs_y = ui.LineDoubleSlider2D( line_width=3, outer_radius=5, length=115,
def create_visualization(self): ren_win = self.getView('-1') scene = ren_win.GetRenderers().GetFirstRenderer() showm = self.getSharedObject('SHOWM') self.panel = ui.Panel2D((480, 270), position=(5, 5), color=(1, 1, 1), opacity=.1, align='right') self.slider_frame_label = build_label('Frame') self.slider_frame_label.set_visibility(False) self.slider_frame_thr = ui.LineSlider2D(initial_value=0, min_value=0, max_value=1, length=260, line_width=3, outer_radius=8, font_size=16, text_template="{value:.0f}") self.slider_frame_thr.set_visibility(False) self.slider_frame_thr.on_change = self.change_frame self.slider_clipping_plane_label_x = build_label('X Clipping Plane') self.slider_clipping_plane_thrs_x = ui.LineDoubleSlider2D( line_width=3, outer_radius=8, length=260, initial_values=(self.low_ranges[0], self.high_ranges[0]), min_value=self.min_centers[0], max_value=self.max_centers[0], font_size=16, text_template="{value:.0f}") self.slider_clipping_plane_label_y = build_label('Y Clipping Plane') self.slider_clipping_plane_thrs_y = ui.LineDoubleSlider2D( line_width=3, outer_radius=8, length=260, initial_values=(self.low_ranges[1], self.high_ranges[1]), min_value=self.min_centers[1], max_value=self.max_centers[1], font_size=16, text_template="{value:.0f}") self.slider_clipping_plane_label_z = build_label('Z Clipping Plane') self.slider_clipping_plane_thrs_z = ui.LineDoubleSlider2D( line_width=3, outer_radius=8, length=260, initial_values=(self.low_ranges[2], self.high_ranges[2]), min_value=self.min_centers[2], max_value=self.max_centers[2], font_size=16, text_template="{value:.0f}") self.panel.add_element(self.slider_frame_label, (.04, .85)) self.panel.add_element(self.slider_frame_thr, (.38, .85)) self.panel.add_element(self.slider_clipping_plane_label_x, (.04, .55)) self.panel.add_element(self.slider_clipping_plane_thrs_x, (.38, .55)) self.panel.add_element(self.slider_clipping_plane_label_y, (.04, .35)) self.panel.add_element(self.slider_clipping_plane_thrs_y, (.38, .35)) self.panel.add_element(self.slider_clipping_plane_label_z, (.04, .15)) self.panel.add_element(self.slider_clipping_plane_thrs_z, (.38, .15)) scene.ResetCamera() scene.add(self.panel) self.size = scene.GetSize() # showm.add_window_callback(self.win_callback) showm.render() if self.load_default: print("load default") data = { "folder": os.path.abspath(os.path.dirname(__file__)), "filename": 'output00000246.xml' } self.add_frame(data)