Skip to main content

2D scene graph based on SVG with OpenGL backend

Project description

a 2D scene graph based on SVG with OpenGL backend

Goals & non-goals

Goals:

  • 2D scene graph suitable for interactive rendering

  • minimal set of dependencies

Non-goals:

  • full SVG implementation

  • optimized for speed

Features

  • pythonic API modeled after SVG spec & semantic

  • SVG parsing and serialization

  • scale dependent polygonalization

  • analytical picking

  • sub-pixel strokes rendering enhancement through width and opacity correction

  • per-pixel gradients

  • two modes text rendering: raster by freetype2 for high quality AA at small sizes, vector otherwise

SVG spec

implemented:

  • shapes: path, rect, circle, ellipse, line, polyline, polygon, image

  • text: (excluding decoration, text on path)

  • structure: group, use (including attributes inheritance)

  • painting: solid color, linear and radial gradients (including units, transform, spread, href);

  • fill: rule (nonzero, evenodd)

  • stroke: cap (butt, round, square), join (miter, round, bevel), miterlimit

  • multi-pass rendering: clipping, masking, object opacity

  • transforms: translate, rotate, scale, skewX, skewY

eventually:

  • tspan

  • painting: pattern

  • stroke: dash, marker

  • filters

never:

  • DOM API

Dependencies

Optional dependencies

Needed to find fonts, fallbacks on FreeFont otherwise.

on the mac:

Inspirations

  • sauvage by S. Conversy

  • SVGL by S. Conversy & J.-D. Fekete

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

seagull-0.1.tar.gz (34.0 kB view details)

Uploaded Source

File details

Details for the file seagull-0.1.tar.gz.

File metadata

  • Download URL: seagull-0.1.tar.gz
  • Upload date:
  • Size: 34.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for seagull-0.1.tar.gz
Algorithm Hash digest
SHA256 5a01f8af0928f56b118da391454a97d7fd0fec08bc378db24adcde8e367a9277
MD5 9043d04eb39fb6e82aaf38bba220861d
BLAKE2b-256 49e3bb7ead6a6ccd8669c3d95df203a4e16704047eeb7fb49fd59592ea56ff0d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page