Modelica models can have a graphical icon defined as a bitmap or vector graphics. Vector graphics have several benefits, the most obvious being free scaling of images from icon to poster size. With OpenModelica there already exists one open source tool that can be used for editing these vector graphics icon annotations, but it does not reach the usability comfort of professional vector graphics editing tools.
In this paper we present the Modelica Vector Graphics Editor (MoVE), a standalone open source editor for Modelica’s vector graphics syntax that provides many convenience features inspired by the vector graphics editor Inkscape. These features include grouping, snap to grid, move to foreground/background, rotation handles, and drawing perfect circles and squares as well as horizontal and vertical lines when holding Shift.
We hope that MoVE, as a part of the Modelica Tool Ensemble (MoTE), can enrich the open source ecosystem of Modelica by simplifying the creation of more elaborate vector graphics icons for Modelica models.
Keywords: JavaFX, vector graphics, open source, SVG, Inkscape, MVC, MoTE, OpenModelica
Proceedings of the 12th International Modelica Conference, Prague, Czech Republic, May 15-17, 2017
Asghar, Syed Adeel et al. (2011). “An Open Source Modelica Graphic Editor Integrated with Electronic Notebooks and Interactive Simulation”. In: Proceedings of the 8th International Modelica Conference. Dresden, Germany, pp. 739–747.
Dahlström, Erik et al. (2011). Scalable Vector Graphics (SVG) 1.1 (Second Edition). W3C Recommendation REC-SVG11-20110816. W3C. URL: https://www.w3.org/TR/SVG/.
EPFL and Typesafe, Inc. (2016). scala-parser-combinators. GitHub Repository. URL: https://github.com/scala/scala-parser-combinators (visited on 12/09/2016).
Frey, Regis (2016). The model, view, and controller (MVC) pattern relative to the user. URL: https://en.wikipedia.org/wiki/File:MVC-Process.svg (visited on 12/07/2016).
Fritzson, Peter et al. (2005). “The OpenModelica Modeling, Simulation, and Development Environment”. In: Proceedings of the 46th Scandinavian Conference on Simulation and Modeling (SIMS). Trondheim, Norway. GitHub (2016). Atom. URL: https://atom.io (visited on 11/01/2016).
Hoppe, Marcel (2016). Modelica Diagram Editor. URL: https://github.com/THM-MoTE/MoDE (visited on 12/20/2016).
Inkscape (2016). Inkscape — Draw Freely. URL: https://inkscape.org (visited on 12/09/2016).
Justus, Nicola, Marcel Hoppe, and Christopher Schölzel (2017). Modelica Tool Ensemble (MoTE). URL: https://github.com/thm-mote (visited on 03/28/2017).
McIlroy, M. D., E. N. Pinson, and B. A. Tague (1978). “Unix Time-Sharing System: Foreword”. In: The Bell System Technical Journal 57.6, pp. 1899–1904.
Modelica Association (2012). Modelica - A Unified Object-Oriented Language for Systems Modeling. Language Specification. Version 3.3.
Pop, Adrian Dan Iosif et al. (2006). “OpenModelica Development Environment with Eclipse Integration for Browsing, Modeling, and Debugging”. In: Proceedings of the 5th International Modelica Conference. Vienna, Austria, pp. 459–465.
Reenskaug, Trygve (1979). Thing-Model-View-Editor — An Example from a planningsystem. technical note. Xerox PARC.