def __init__(self): app.Canvas.__init__(self, keys='interactive') self.size = (800, 800) global pos self.visuals = [] polygon = visuals.PolygonVisual(pos=pos, color=(0.8, .2, 0, 1), border_color=(1, 1, 1, 1)) polygon.transform = transforms.STTransform(scale=(200, 200), translate=(600, 600)) self.visuals.append(polygon) ellipse = visuals.EllipseVisual(pos=(0, 0, 0), radius=(100, 100), color=(0.2, 0.2, 0.8, 1), border_color=(1, 1, 1, 1), start_angle=180., span_angle=150.) ellipse.transform = transforms.STTransform(scale=(0.9, 1.5), translate=(200, 200)) self.visuals.append(ellipse) rect = visuals.RectangleVisual(pos=(600, 200, 0), height=200., width=300., radius=[30., 30., 0., 0.], color=(0.5, 0.5, 0.2, 1), border_color='white') rect.transform = transforms.NullTransform() self.visuals.append(rect) rpolygon = visuals.RegularPolygonVisual(pos=(200., 600., 0), radius=160, color=(0.2, 0.8, 0.2, 1), border_color=(1, 1, 1, 1), sides=6) rpolygon.transform = transforms.NullTransform() self.visuals.append(rpolygon) for v in self.visuals: v.tr_sys = transforms.TransformSystem(self) v.tr_sys.visual_to_document = v.transform self.show() self._timer = app.Timer('auto', connect=self.on_timer, start=True)
def __init__(self): app.Canvas.__init__(self, keys='interactive', size=(800, 800)) global pos self.visuals = [] polygon = visuals.PolygonVisual(pos=pos, color=(0.8, .2, 0, 1), border_color=(1, 1, 1, 1), border_width=3) polygon.transform = transforms.STTransform(scale=(200, 200), translate=(600, 600)) self.visuals.append(polygon) ellipse = visuals.EllipseVisual(center=(0, 0, 0), radius=(100, 150), color=(0.2, 0.2, 0.8, 1), border_color=(1, 1, 1, 1), border_width=3, start_angle=180., span_angle=150.) ellipse.transform = transforms.STTransform(scale=(0.9, 1.5), translate=(200, 300)) self.visuals.append(ellipse) rect = visuals.RectangleVisual(center=(600, 200, 0), height=200., width=300., radius=[30., 30., 0., 0.], color=(0.5, 0.5, 0.2, 1), border_width=3, border_color='white') rect.transform = transforms.NullTransform() self.visuals.append(rect) rpolygon = visuals.RegularPolygonVisual(center=(200., 600., 0), radius=160, color=(0.2, 0.8, 0.2, 1), border_color=(1, 1, 1, 1), border_width=3, sides=6) rpolygon.transform = transforms.NullTransform() self.visuals.append(rpolygon) self.show()
def _fcn_sliderMagnify(self): """Magnify signals.""" # Set transformation to each node parent : for k in self._chan.node: # Use either Magnify / Null transformation : if self._slMagnify.isChecked(): transform = vist.nonlinear.Magnify1DTransform() else: transform = vist.NullTransform() k.transform = transform
def __init__(self, vertices=None, faces=None, normals=None, lr_index=None, hemisphere='both', sulcus=None, alpha=1., mask_color='orange', camera=None, meshdata=None, invert_normals=False): """Init.""" self._camera = None self._translucent = True self._alpha = alpha self._hemisphere = hemisphere self._n_overlay = 0 self._data_lim = [] # Initialize the vispy.Visual class with the vertex / fragment buffer : Visual.__init__(self, vcode=VERT_SHADER, fcode=FRAG_SHADER) # _________________ BUFFERS _________________ # Vertices / faces / normals / color : def_3 = np.zeros((0, 3), dtype=np.float32) self._vert_buffer = gloo.VertexBuffer(def_3) self._normals_buffer = gloo.VertexBuffer(def_3) self._bgd_buffer = gloo.VertexBuffer() self._xrange_buffer = gloo.VertexBuffer() self._alphas_buffer = gloo.VertexBuffer() self._index_buffer = gloo.IndexBuffer() # _________________ PROGRAMS _________________ self.shared_program.vert['a_position'] = self._vert_buffer self.shared_program.vert['a_normal'] = self._normals_buffer self.shared_program.vert['u_n_overlays'] = self._n_overlay self.shared_program.frag['u_alpha'] = alpha # _________________ LIGHTS _________________ self.shared_program.frag['u_light_intensity'] = LIGHT_INTENSITY self.shared_program.frag['u_coef_ambient'] = COEF_AMBIENT self.shared_program.frag['u_coef_specular'] = COEF_SPECULAR self.shared_program.frag['u_light_position'] = LIGHT_POSITION self.shared_program.frag['camtf'] = vist.NullTransform() # _________________ DATA / CAMERA / LIGHT _________________ # Data : self.set_data(vertices, faces, normals, hemisphere, lr_index, invert_normals, sulcus, meshdata) # Camera : self.set_camera(camera) self.mask_color = mask_color # _________________ GL STATE _________________ self.set_gl_state('translucent', depth_test=True, cull_face=False, blend=True, blend_func=('src_alpha', 'one_minus_src_alpha')) self._draw_mode = 'triangles' self.freeze()
def __init__(self, vertices=None, faces=None, normals=None, sulcus=None, alpha=1., camera=None): """Init.""" self._camera = None self._camera_transform = vist.NullTransform() self._translucent = True self._alpha = alpha self._n_overlay = 0 self._data_lim = [] self._colormaps = [] # Initialize the vispy.Visual class with the vertex / fragment buffer : Visual.__init__(self, vcode=VERT_SHADER, fcode=FRAG_SHADER) # _________________ BUFFERS _________________ # Vertices / faces / normals / color : def_3 = np.zeros((0, 3), dtype=np.float32) self._vert_buffer = gloo.VertexBuffer(def_3) self._normals_buffer = gloo.VertexBuffer(def_3) self._bgd_buffer = gloo.VertexBuffer() self._xrange_buffer = gloo.VertexBuffer() self._alphas_buffer = gloo.VertexBuffer() self._index_buffer = gloo.IndexBuffer() # _________________ PROGRAMS _________________ self.shared_program.vert['a_position'] = self._vert_buffer self.shared_program.vert['a_normal'] = self._normals_buffer self.shared_program.vert['u_n_overlays'] = self._n_overlay self.shared_program.frag['u_alpha'] = alpha # _________________ TEXTURE _________________ color_1d = np.c_[np.array([1.] * 4), np.array(SULCUS_COLOR)].T text_1d = gloo.Texture1D(color_1d.astype(np.float32)) self.shared_program.vert['u_bgd_text'] = text_1d # _________________ LIGHTS _________________ self.shared_program.frag['u_light_intensity'] = LIGHT_INTENSITY self.shared_program.frag['u_coef_ambient'] = COEF_AMBIENT # _________________ DATA / CAMERA / LIGHT _________________ self.set_data(vertices, faces, normals, sulcus) self.set_camera(camera) # _________________ GL STATE _________________ self.set_gl_state('translucent', depth_test=True, cull_face=False, blend=True, blend_func=('src_alpha', 'one_minus_src_alpha')) self._draw_mode = 'triangles' self.freeze()
def on_mouse_release(event): """Executed function when the mouse is pressed over canvas. This method set the transformation to the canvas to NullTransform. """ # Get canvas name : name = canvas.title condition = bool(name.find('Canvas') + 1) if condition and not self._slMagnify.isChecked(): # Get channel name : chan = name.split('Canvas_')[1] # Get index : idx = self._channels.index(chan) # Build transformation : self._chan.node[idx].transform = vist.NullTransform()
def __init__(self, name, parent=None, transform=None, verbose=None, **kw): """Init.""" _VisbrainObj.__init__(self, **kw) self._node = vispy.scene.Node(name=name) self._node.parent = parent self._csize = None # canvas size self._shortcuts = {} # Name : assert isinstance(name, str) self._name = name # Transformation : if transform is None: transform = vist.NullTransform() self._node.transform = transform # Verbose : set_log_level(verbose) logger.info('%s created' % repr(self))
def __init__(self, vertices=None, faces=None, normals=None, lr_index=None, hemisphere='both', sulcus=None, alpha=1., mask_color='orange', light_position=[100.] * 3, light_color=[1.] * 4, light_intensity=[1.] * 3, coef_ambient=.05, coef_specular=.5, vertfcn=None, camera=None, meshdata=None, invert_normals=False): """Init.""" self._camera = None self._camera_transform = vist.NullTransform() self._translucent = True self._alpha = alpha self._hemisphere = hemisphere # Initialize the vispy.Visual class with the vertex / fragment buffer : Visual.__init__(self, vcode=VERT_SHADER, fcode=FRAG_SHADER) # _________________ TRANSFORMATIONS _________________ self._vertfcn = vist.NullTransform() if vertfcn is None else vertfcn # _________________ BUFFERS _________________ # Vertices / faces / normals / color : def_3 = np.zeros((0, 3), dtype=np.float32) def_4 = np.zeros((0, 4), dtype=np.float32) self._vert_buffer = gloo.VertexBuffer(def_3) self._color_buffer = gloo.VertexBuffer(def_4) self._normals_buffer = gloo.VertexBuffer(def_3) self._mask_buffer = gloo.VertexBuffer() self._sulcus_buffer = gloo.VertexBuffer() self._index_buffer = gloo.IndexBuffer() # _________________ PROGRAMS _________________ self.shared_program.vert['a_position'] = self._vert_buffer self.shared_program.vert['a_color'] = self._color_buffer self.shared_program.vert['a_normal'] = self._normals_buffer self.shared_program.frag['u_alpha'] = alpha # _________________ DATA / CAMERA / LIGHT _________________ self.set_data(vertices, faces, normals, hemisphere, lr_index, invert_normals, sulcus, meshdata) self.set_camera(camera) self.mask_color = mask_color self.light_color = light_color self.light_position = light_position self.light_intensity = light_intensity self.coef_ambient = coef_ambient self.coef_specular = coef_specular # _________________ GL STATE _________________ self.set_gl_state('translucent', depth_test=True, cull_face=False, blend=True, blend_func=('src_alpha', 'one_minus_src_alpha')) self._draw_mode = 'triangles' self.freeze()