def _comp_default(self): canvas = Canvas(draw_axes=True, bgcolor="gray") self.triangle = SierpinskiTriangle( position=[0.0, 0.0], bounds=[self.base_width, self.base_width * (SQRT3 / 2)], iterations=self.iterations, max_iters=self.max_iters, base_width=self.base_width, bgcolor="gray") canvas.add(self.triangle) self.viewport = Viewport(component=canvas, enable_zoom=True, stay_inside=True) self.viewport.zoom_tool.min_zoom = 1.0 self.viewport.tools.append( ViewportPanTool(self.viewport, drag_button="right")) scrolled = Scrolled( canvas, inside_padding_width=0, mousewheel_scroll=False, viewport_component=self.viewport, always_show_sb=True, continuous_drag_update=True, ) return scrolled
def create_component(self): canvas = Canvas(bgcolor="lightsteelblue", draw_axes=True) from basic_move import Box box = Box(color="red", bounds=[50, 50], resizable="") box.position = [75, 75] canvas.add(box) viewport = Viewport(component=canvas) viewport.view_position = [0, 0] viewport.tools.append(ViewportPanTool(viewport)) return viewport
def _create_component(self): canvas = Canvas(bgcolor="lightsteelblue", draw_axes=True) boxgridsize = 8 boxsize = 50 spacing = boxsize * 2 offset = spacing / 2 origin_color = array([0.0, 0.0, 1.0]) x_color = array([0.0, 1.0, 0.0]) y_color = array([1.0, 0.0, 0.0]) for i in range(boxgridsize): for j in range(boxgridsize): color = tuple(x_color / (boxgridsize - 1) * i + y_color / (boxgridsize - 1) * j + origin_color) + (1.0, ) box = Box(color=color, bounds=[boxsize, boxsize], resizable="") box.position = [ i * spacing + offset - boxsize / 2 + 0.5, j * spacing + offset - boxsize / 2 + 0.5, ] canvas.add(box) viewport = Viewport( component=canvas, enable_zoom=True, vertical_anchor="center", horizontal_anchor="center", ) # viewport.view_position = [0,0] viewport.tools.append(ViewportPanTool(viewport)) # Uncomment the following to enforce limits on the zoom # viewport.min_zoom = 0.1 # viewport.max_zoom = 3.0 scrolled = Scrolled( canvas, fit_window=True, inside_padding_width=0, mousewheel_scroll=False, viewport_component=viewport, always_show_sb=True, continuous_drag_update=True, ) return scrolled