Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++,...

17
Magics++, MOS workshop, 4 November 2009 Slide 1 1 Magics++ Magics++ A meteorological graphics library A meteorological graphics library Sylvie Lamy-Thépaut Graphics Section ECMWF

Transcript of Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++,...

Page 1: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 1

1

Magics++Magics++ A meteorological graphics libraryA meteorological graphics library

Sylvie Lamy-ThépautGraphics Section

ECMWF

Page 2: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 2

2

Magics++, successor of Magics, is a graphics library specialized in meteorological plots.

Magics++2.8 is now ready for download at :http://www.ecmwf.int/products/data/software/magics++.html

It is free under the Apache license.

Magics++ is a meteorologically- oriented library, but it is not a standalone application…

Magics++ enters its consolidation phase…Magics++ enters its consolidation phase…

Page 3: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 3

3

…Magics++ is the visualisation component of a more complex framework.

Desktop applications, Web application, WMS …

Its modern object-oriented design allows it to be used in the new generation of meteorological workstations:

Desktop or Web-oriented!

Its modern object-oriented design allows it to be used in the new generation of meteorological workstations:

Desktop or Web-oriented!

Page 4: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 4

4

Magics++ is a library !Magics++ is a library !

Page 5: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 5

5

Magics++ is a modern meteorologically-oriented software…

It is able to visualise most of the meteorological data coded inGRIB1/GRIB2 and BUFR formats.

Its support for netCDF opens it up to the scientific community.

Work is being done to build a library of typical visualisations for specific meteorological parameters.

Magics++ is meteorologically oriented…Magics++ is meteorologically oriented…

Page 6: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 6

6

Magics++ offers solutions :

Choosing an tailored visual definition

Tuning the resolution of the input data

Tuning the resolution of our contouring algorithm ( Akima – INPE/CPTEC)

It also provides facilities to examine data in depth.

Magics++ and high resolution data…Magics++ and high resolution data…

Page 7: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 7

7

Magics++ is ready to plug in new types of visualisation…Magics++ is ready to plug in new types of visualisation…

Page 8: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 8

8

Magics++ produces better publication-quality plots by supporting PNG, EPS and by optimising PostScript outputMagics++ uses Cairo to generate PNG and PDFMagics++ has a enhanced OpenGL driver to fulfil the requirements of Metview 4. We wrote our own SVG driver to have full control over the output.We are creating our own meta internal format for speeding the web production.

Magics++ produces high quality outputsMagics++ produces high quality outputs

Page 9: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 9

9

KML and projection?Concept of timeConcept of heightConcept of layers

Generates OGC compliant KML 2.2

KML : A very different driver!KML : A very different driver!

Page 10: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 10

10

As a modern software, it knows about the web requirements …

Magics++ is WEB-aware !Magics++ is WEB-aware !

-Easily embedded in a Web “Plot on demand“ application.

-Generates metadata for title and legend.

-Generates simple javascript to enable the navigation of the maps ( click-zoom-pan )

Page 11: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 11

11

Autotools (configure) based installation enables easier spread of Magics++

Users are more confident to updateDebian and Fedora community have or plan to package Magics++

C++ proved again to be a good choiceAlready used in Metview for 15 yearsFast, clear structured object-oriented codeOnly issue: compiler support

CairoA modern vector graphics library

Backwards compatibilityImportant in an operational environment, but…Can limit new developments, and slow the developments down.

Magics++: our programming experience…Magics++: our programming experience…

Page 12: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 12

12

Magics++ in the Web era

Users expectations of web services are increasing Large catalogue of products

High availability

More interactivity: zooming, panning, customisation of visualisation or computation

Clickable maps

Re-engineering the Web system with a view to providing a resilient service with interactive features such as zooming and on-demand production of customised plots for Members States…

Re-engineering the Web system with a view to providing a resilient service with interactive features such as zooming and on-demand production of customised plots for Members States…

Page 13: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 13

13

How can Magics++ help?How can Magics++ help?

Easy description of layers using MagML/JSON both Metview-like

Generation of Javascript to navigate the Maps.

Page 14: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 14

14

JSON/ MagML {

"contour_level_selection_type": "interval",

“contour_interval” : 4,

"contour_shade_colour_method": "list",

"contour_shade": "on",

"contour_shade_method": "area_fill",

"contour_shade_colour_list": "blue/green/…/red"

}

Metview Icon Style (

contour_level_selection_type: "interval",

contour_interval : 4,

contour_shade_colour_method: "list",

contour_shade: "on",

contour_shade_method: "area_fill",

contour_shade_colour_list: [“blue”/”green”/…/”red“]

)

Page 15: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 15

15

StylingFits well for with our Visual Definition concept

Tiling Can trigger border effects!

ProjectionShould be compliant.

GetLegendGraphics

Magics++ serving maps for a WMS…Magics++ serving maps for a WMS…

Page 16: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 16

16

Magics++ rendering maps from a WMS…Magics++ rendering maps from a WMS…

Page 17: Magics++ A meteorological graphics library · 2016. 1. 24. · Magics++ is a library ! Magics++, MOS workshop, 4 November 2009 Slide 5 5. ¾. Magics++ is a modern meteorologically-oriented

Magics++, MOS workshop, 4 November 2009

Slide 17

17

Magics++ in action in Metview 4…Magics++ in action in Metview 4…

Thank you!…Thank you!…