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
PyOpenGL 3.0.2+ OpenGL python bindings
Pillow 2+ Python Imaging Library (fork)
freetype2 font engine
GNU FreeFont Free UCS Outline Fonts
Optional dependencies
Needed to find fonts, fallbacks on FreeFont otherwise.
on the mac:
pyobjc-framework-CoreText wrappers for the framework CoreText on Mac OS X
Inspirations
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a01f8af0928f56b118da391454a97d7fd0fec08bc378db24adcde8e367a9277
|
|
| MD5 |
9043d04eb39fb6e82aaf38bba220861d
|
|
| BLAKE2b-256 |
49e3bb7ead6a6ccd8669c3d95df203a4e16704047eeb7fb49fd59592ea56ff0d
|