示例#1
0
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()
示例#2
0
    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),
示例#3
0
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()
示例#4
0
    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}")
示例#6
0
                       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,
示例#7
0
    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)