Skip to main content

Crate pineal_render

Crate pineal_render 

Source
Expand description

pineal-render — abstracción de painter.

Los crates de visualización (cartesian, mesh, polar…) no conocen el runtime de UI: hablan contra el trait Canvas definido acá. Eso deja a la cadena core → render → painter agnóstica.

Backends activos:

  • Llimphi/vello (llimphi_backend::SceneCanvas) — canónico para apps tawasuyu; pinta dentro de un paint_with del View<Msg> declarativo.
  • PlanRecorder (recorder::PlanRecorder) — graba cada llamada como RenderCmd. Consumido por pineal-export para emitir SVG, PNG (raster propio con AA 2×2) y PDF (writer propio).
  • GPU directo wgpu (gpu_canvas::GpuSceneCanvas) — backend denso para >100 K primitivas. Delega cada llamada del Canvas a llimphi_raster::GpuBatch y se enchufa desde View::gpu_paint_with en lugar de paint_with. Los painters no cambian. Sin texto y sin AA fino — ver doc del módulo para trade-offs.

Tipos primitivos (Color, Point, Rect) viven acá para no atarlos al tipo de color/punto de ningún runtime.

Re-exports§

pub use color::Color;
pub use geom::Point;
pub use geom::Rect;
pub use canvas::Canvas;
pub use canvas::StrokeStyle;
pub use plan::RenderCmd;
pub use plan::RenderPlan;
pub use recorder::PlanRecorder;
pub use llimphi_backend::SceneCanvas;
pub use gpu_canvas::GpuSceneCanvas;

Modules§

canvas
El trait Canvas que todos los painters consumen.
color
Color RGBA en f32, agnóstico de backend.
geom
Tipos geométricos mínimos en f32.
gpu_canvas
Backend GPU directo del trait crate::Canvas — Fase 4 del SDD 02_ruway/llimphi/SDD.md §“GPU directo wgpu”.
llimphi_backend
Backend del trait crate::Canvas sobre un vello::Scene de Llimphi.
plan
RenderPlan — comandos materializados para backends que no reciben llamadas en vivo (SVG export, snapshot testing).
recorder
PlanRecorder — un Canvas que graba cada llamada como RenderCmd en un RenderPlan, en vez de dibujar.