Source code for picogl.ui.backend.glut.window.object

"""
Object Window for displaying Mesh Data
"""

from pathlib import Path

from picogl.renderer import GLContext, MeshData
from picogl.renderer.object import ObjectRenderer
from picogl.ui.backend.glut.window.glut import GlutRendererWindow


[docs] class RenderWindow(GlutRendererWindow): """Unified render window supporting textured or untextured rendering."""
[docs] def __init__( self, width: int = 800, height: int = 600, title: str = "RenderWindow", data: MeshData | None = None, base_dir: str | Path | None = None, glsl_dir: str | Path | None = None, use_texture: bool = False, texture_file: str | None = None, resource_subdir: str = "tu02", *args, **kwargs, ): super().__init__(width=width, height=height, title=title, *args, **kwargs)
[docs] self.context = GLContext()
[docs] self.data = data
[docs] self.base_dir = base_dir
[docs] self.glsl_dir = glsl_dir
[docs] self.renderer = ObjectRenderer( context=self.context, data=self.data, base_dir=self.base_dir, glsl_dir=self.glsl_dir, use_texture=use_texture, texture_file=texture_file, resource_subdir=resource_subdir, )
self.renderer.show_model = True
[docs] def initialize(self): self.initializeGL()