1
0
Fork 0
Commit graph

30 commits

Author SHA1 Message Date
Henning Stahlke
a91ebe4676 canvas/svg.nas add optional basic support for linked images
canvas/api.nas add alternative signature for ellipse and circle
2018-12-16 02:15:35 +01:00
Henning Stahlke
f3548c561e canvas/api.nas: add square, ellipse and circle to path; update svg.nas accordingly 2018-12-08 19:55:08 +01:00
Henning Stahlke
37adcd8051 canvas/svg.nas add support for circle und ellipse 2018-11-30 19:35:22 +01:00
Thomas Geymayer
f8b0c5548c parsesvg: use new stroke-opacity and fill-opacity properties 2018-01-29 09:12:09 +01:00
James Turner
51e2ddc8ba Revert "Use new canvas Path rect/SVG support."
Don't use the built-in SVG/rect parser, since this bypasses creating
coordinate / command properties which some Canvas users rely upon.

This reverts commit 57a2d21ddf.
2017-01-23 17:51:39 +00:00
James Turner
57a2d21ddf Use new canvas Path rect/SVG support. 2016-12-16 19:34:16 +00:00
www2
acb88337f2 add var to fillOpacity and strokeOpacity 2015-04-10 21:09:14 +02:00
www2
7b71a8f361 Add Alpha channel for fill and stroke 2015-04-09 00:51:24 +02:00
Torsten Dreyer
61a6fee0db Canvas svg: use font-style and map LiberationFonts
- interprete the font-style attribute for text
- add a better font-mapper for Liberation Fonts
2014-09-10 16:51:12 +02:00
Torsten Dreyer
f3058a3f2e Canvas: add support for stroke-linejoin 2014-08-26 00:06:59 +02:00
Thomas Geymayer
2bce958f39 parsesvg: Improved clip and error handling.
- Ignore and warn for unsupported/invalid clip regions.
 - Correctly handle clip 'none'.
 - Use printlog everywhere instead of debug.dump and others.
2014-08-24 13:59:36 +02:00
Thomas Geymayer
8aabd3726a parsesvg: support for rectangular clip/mask. 2014-07-19 21:44:38 +02:00
Thomas Geymayer
bab393aa0c Canvas/SVG parser: fix bounding box and rotation center.
- Calculate bounding box after adding all children.
 - Apply rotation after all SVG defined rotations to use correct
   center of rotation (as defined in Inkscape)

This (together with the SimGear and FlightGear commits) fixes
the core problems of #1333.
2014-02-08 00:43:13 +01:00
Thomas Geymayer
748f1d4d29 parsesvg: rename canvas.num to canvas.evalCSSNum 2013-12-01 14:05:12 +01:00
Tomash Brechko
2e6ba5f8c0 SVG parser: Add num() wrapper for <rect> attributes. 2013-12-01 14:05:11 +01:00
Gijs de Rooy
a9576e8c8d Canvas Navigational Display:
- get rid of global variables and use instance variables
- identified all important drawing routines and move them into *.draw files
- changed to dynamic loading of *.draw *.model and *.layer files
- implemented poor-man's controller hash to move use-case specific conditionals out of the draw files, and back into the instantiation, i.e. Gijs' EFIS class
- started identifying stuff that is not specific to drawing, but to what is to be drawn, i.e. Model stuff - such as positioned queries, moved those out into *.model files
- some more work on supporting more than a single ND MFD instance per aircraft
- renamed a handful of SVG identifiers to avoid naming conflicts and to simplify usage of SVG IDs as member fields
- moved all of the setlistener setup out of the fdm-initialized stub right into the ctor of the Efis class (actually that's controller stuff...)
- initial MapStructure framework
- aircraft-agnostic NavDisplay class
- preparations for deprecating map.nas
- additions to canvas.map
- preparations for making NDStyles configurable via XML
2013-12-01 13:36:23 +01:00
Thomas Geymayer
7e0797b1be svg parser: read line-height 2013-10-20 23:41:19 +02:00
Philosopher
24ab67fa32 Use resolvepath() for canvas SVGs 2013-10-06 11:52:30 -05:00
Thomas Geymayer
68efae1cd8 canvas.parsesvg: fix handling text without tspan or empty text. 2013-07-20 00:54:42 +02:00
Thomas Geymayer
ce4d7964f6 canvas.parsesvg: Be more tolerant instead of failing.
- Remove 'px' suffix from numbers to be used as valid numbers.
 - Automatically update the rotation center if it the according
   values are present.
 - Fix text only partially set if containing xml entities.
2013-07-15 22:37:05 +02:00
Thomas Geymayer
7027c604de Tweak SVG parser id handling of text elements 2013-02-23 20:05:13 +01:00
Thomas Geymayer
71f3f878c6 SVG rect rounded corner and refactor rect helper 2013-02-23 19:19:53 +01:00
Thomas Geymayer
5d54d3c504 Improve SVG/Inkscape text parsing/interpretation 2013-02-23 18:27:35 +01:00
Thomas Geymayer
95109b7b0c Fix parsing multiple SVG transforms and implement scale and rotation 2013-02-23 14:46:26 +01:00
Thomas Geymayer
4374ab0ce8 Use new built-in string functions 2013-01-31 22:56:43 +01:00
Thomas Geymayer
ef95c4cf10 parsesvg: fix checking for relative/absolute path 2013-01-11 19:56:42 +01:00
Thomas Geymayer
73fcf429d0 Canvas/SVG fix calculating transformation center (Group) 2013-01-09 12:14:31 +01:00
Thomas Geymayer
52b89ed372 Canvas: Update API for core changes.
- Use only one node for colors and dash-array
 - Update some property names to better match SVG/CSS
2012-08-23 21:05:52 +02:00
Thomas Geymayer
7e641735cb Canvas: Improve API and SVG parser.
- API:
  * Rename setSize to setFontSize
  * Add method getElementById to Group
  * Rename name of element to id to show more prominent
    that it should be unique.
  * Add methods for hide/show elements.
  * Fix: set correct id for cloned elements (parsesvg)
  * Fix: retrieving group with getElementById failed.
  * Parse SVG inkscape:transform-center-[xy]
  * Allow rotation around given point (use values from inkscape
    by default for SVG files)
  * Use breadth-first search instead of depth-first search for
    Element::getElementById (large speedup :))
  * Add more convenience functions for path drawing.
  * Add version check (useful if API files manually copied)

 - SVG:
  * Support <use> element
  * Parse font-size
  * Parse stroke-linecap
2012-08-02 01:40:00 +02:00
Thomas Geymayer
007e9bc33a Canvas: Add a basic SVG parser.
- Add basic std::string implementation to a Nasal submodule named
   std.
 - Add basic SVG parser parsing its results into a canvas group
   element.
2012-08-02 01:39:59 +02:00