コード例 #1
0
    def init(self):
        Controller.init(self)
        self.shaperenderer = ShapeRenderer(self.camera)
        self.shaperenderer.gl_init()
        self.first = True 
        self.frame_buffer = Framebuffer(self.camera, self.camera.screensize, record_mode=Framebuffer.RECORD_BLIT)
        self.frame_buffer.init()
        shape = Rectangle()
        texture = NumpyTexture(np.random.random_sample(4*10000).reshape(100,100,4))
        texture.gl_init()
        self.shaperenderer.draw_instance(ShapeInstance(shape, **{
            'size': (200,200),
            'position': (100,200), 
            'color': [0,0,0,1],
            'border': {
                'size': 10,
                'color': [1,0,0,1],
            },
            'texture': self.frame_buffer
        }))
        self.shaperenderer.draw_instance(ShapeInstance(shape, (200,200),(300,100), border={
            'size': 20,
            'color': [1,1,0,0.5],


        }))
コード例 #2
0
	def init(self):
		print('ich habe init gemacht')

		fancy_font = ImageFont.truetype (FONT_RESOURCES_DIR+"/cmunui.ttf", 30)
		
		self.font_renderer = FontRenderer(self.camera)
		self.font_renderer.init()

		text = Text("ich bin ein cooler font", fancy_font)
		
		abs_layout = AbsoluteLayout()
		abs_layout.add_text(text)

		self.font_renderer.layouts['abs'] = abs_layout



		Controller.init(self)
コード例 #3
0
    def init(self):
        """
        initializes plot2d
        """
        self.shaperenderer = ShapeRenderer(self.camera)
        self.shaperenderer.shapes['default_rectangle'] = Rectangle()
        self.shaperenderer.gl_init()

        # setup axis
        self.init_labels()

        # setup plotplane
        plotframe = window.Framebuffer(
            camera      = self.camera,
            screensize  = self.plotframe_size,
            screen_mode = window.Framebuffer.SCREEN_MODE_STRECH,
            record_mode = self.plotmode.record_mode if self.plotmode is not None else window.Framebuffer.RECORD_CLEAR,
            clear_color = hex_to_rgba(self.color_scheme['plotplane-bgcolor']),
            multisampling = 8,
            blit_texture=True,
        )
        self._fntrenderer.set_camera(self.camera)
        self._fntrenderer.init()

        self._fntlayout.camera = self.camera
        if self.plotmode is not None:
            plotframe.record_program = self.plotmode.get_shader()

        plotframe.init()
        plotframe.modelview.set_position(self._plotplane_margin[3], self._plotplane_margin[0])
        plotframe.update_modelview()

        # setup plotplane camera
        plotframe.inner_camera.set_base_matrix(np.array([
            1, 0, 0, 0,
            0, -1, 0, 0,
            0, 0, 1, 0,
            0, 0, 0, 1,
        ], dtype=np.float32))
        plotframe.inner_camera.set_scaling(self._axis)
        plotframe.inner_camera.set_position(*self._origin)
        self._plotframe = plotframe




        # parent controller initialization
        Controller.init(self)
        self.state = self.STATE_IDLE

        self._select_area_rectangle = ShapeInstance('default_rectangle', **{
            'size': (0,0),
            'position': (0,0),
            'border': {
                'size': self.color_scheme['select-area-border-size'],
                'color': hex_to_rgba(self.color_scheme['select-area-border-color']),
            },
            'color': hex_to_rgba(self.color_scheme['select-area-bgcolor']),
        })

        self._plotplane = ShapeInstance('default_rectangle', **{
            'size': self.plotframe_size,
            'position': self.plotframe_position,
            'border': {
                'size': self.color_scheme['plotframe-border-size'],
                'color': hex_to_rgba(self.color_scheme['plotframe-border-color']),
            },
            'color': [0,0,0,0],
            'texture': self._plotframe
        })
        self.shaperenderer.draw_instance(self._plotplane)

        # setup axis
        if self._render_axis[0]:
            self._xaxis = axis.Scale(
                camera       = self.camera,
                scale_camera = self._plotframe.inner_camera,
                size         = self.get_xaxis_size(),
                unit         = self._axis_units[0],
                subunits     = self._axis_subunits[0],
                font         = None,
                axis         = axis.XAXIS,
                unit_symbol  = self._axis_unit_symbols[0],
                bgcolor      = hex_to_rgba(self.color_scheme['xaxis-bgcolor']),
                linecolor    = hex_to_rgba(self.color_scheme['xaxis-linecolor']),
                fontcolor    = hex_to_rgba(self.color_scheme['xaxis-fontcolor']),
            )
            self._xaxis.density = self._axis_density[0]

            self._xaxis.init()
            self._update_xaxis()

        if self._render_axis[1]:
            self._yaxis = axis.Scale(
                camera       = self.camera,
                scale_camera = self._plotframe.inner_camera,
                size         = self.get_yaxis_size(),
                unit         = self._axis_units[1],
                subunits     = self._axis_subunits[1],
                font         = None,
                axis         = axis.YAXIS,
                unit_symbol  = self._axis_unit_symbols[1],
                bgcolor      = hex_to_rgba(self.color_scheme['yaxis-bgcolor']),
                linecolor    = hex_to_rgba(self.color_scheme['yaxis-linecolor']),
                fontcolor    = hex_to_rgba(self.color_scheme['yaxis-fontcolor']),
            )
            self._yaxis.density = self._axis_density[1]
            self._yaxis.init()
            self._update_yaxis()
        self.init_colorlegend()
        self._plotplane.size = self.plotframe_size
        self._update_plotframe_camera()
        self._update_graph_matricies()
        glfwWindowHint(GLFW_SAMPLES, 4);
        glEnable(GL_MULTISAMPLE)

        if self.widget is not None:
            plot_info('Plotter2d', 'init widget...')
            self.widget.gl_init()

        plot_info('Plotter2d', 'inizialized!')
コード例 #4
0
 def init(self):
     Controller.init(self)
     self.camera.on_change_matrix.append(self.rescale_camera)
     self.prepare()