modelica / ModelicaStandardLibrary

Free (standard conforming) library to model mechanical (1D/3D), electrical (analog, digital, machines), magnetic, thermal, fluid, control systems and hierarchical state machines. Also numerical functions and functions for strings, files and streams are included.
https://doc.modelica.org
BSD 3-Clause "New" or "Revised" License
479 stars 169 forks source link

Redesigned MSL icons. #1096

Closed modelica-trac-importer closed 7 years ago

modelica-trac-importer commented 7 years ago

Modified by dietmarw on 13 May 2013 15:26 UTC There's been an effort in trying to improve/modernizing the look of the icons in the MSL library. The work has now been committed to the SVN and can be found under the branch "development/ImprovedGraphics": https://svn.modelica.org/projects/Modelica/branches/development/ImprovedGraphics

Some example renderings done by Wolfram SystemModeller are attached:


Reported by dhedberg on 13 May 2013 15:01 UTC There's been an effort in trying to improve/modernizing the look of the icons in the MSL library. The work has now been committed to the SVN and can be found under the branch "development/ImprovedGraphics".


Migrated-From: https://trac.modelica.org/Modelica/ticket/1096

modelica-trac-importer commented 7 years ago

Modified by dietmarw on 13 May 2013 15:26 UTC

modelica-trac-importer commented 7 years ago

Comment by dietmarw on 13 May 2013 15:35 UTC Also added screenshots from the rendering in:

modelica-trac-importer commented 7 years ago

Modified by dietmarw on 14 May 2013 09:04 UTC

modelica-trac-importer commented 7 years ago

Comment by hansolsson on 14 May 2013 10:33 UTC It looks quite nice in general, but there are some issues:

  1. The main Modelica icon has grey M on black background which is not nice. Normally the Modelica icon is black M against white (as on this page). I noticed that most screenshots did not show the Modelica icon in the package browser.
  2. The info-icon is difficult to see in Dymola.
  3. The signal-bus icons are not nice in OMEdit. I believe issues 2 and 3 are related; the problem is how to render vector-graphics in such small scale and I could get a better info-icon in Dymola by thinning down the "i".
modelica-trac-importer commented 7 years ago

Comment by sjoelund.se on 14 May 2013 11:19 UTC There is a reason the bus icons look weird in OMEdit ([attachment:OMEdit-bus.png full icon] lacks one of the lines; don't know why). Also, the full icons have the text in OMEdit, but the smaller icons do not (again, I do not know why).

I also enabled anti-aliasing in that image (was not enabled before).

modelica-trac-importer commented 7 years ago

Comment by jmattsson on 14 May 2013 11:24 UTC The OMEdit problem looks like a bug when rendering polygons that aren't explicitly closed. The spec says: "The polygon is automatically closed, if the first and the last points are not identical."

modelica-trac-importer commented 7 years ago

Comment by sjoelund.se on 14 May 2013 11:29 UTC I didn't say it wasn't a bug in OMEdit ;)

modelica-trac-importer commented 7 years ago

Comment by dietmarw on 14 May 2013 11:32 UTC Just my two cents:

  1. example icons should not be coloured red (=danger/record) but rather something greenish (=good/play)
  2. the "bubbly" design of all icons makes it difficult to recognise the content of the icons
  3. I agree with Hans on the "M" logo and would rather have a black "M" with red ball
  4. The old release notes and references icons are much better to recognise, also for small icon sizes
  5. text and symbols on the icons in the package browser are not rendered correctly in Dymola (but this is most likely a tool issue and should be subject to Dymola fixing its rendering).
  6. The function icon uses a font colour that is quite close to the background. Again I think here the old one was much easier to recognise and less "noisy".
modelica-trac-importer commented 7 years ago

Comment by dietmarw on 14 May 2013 11:45 UTC One thing that was not mentioned yet and I think is important to note is that the colour code of the connectors was changed:

Both versions are less "bold" which in my opinion makes the connectors less visual distinctive. And of course all tools need to update their line rendering accordingly and documentation needs to be updated in several places. Not sure if this aspect is really worth changing.

modelica-trac-importer commented 7 years ago

Comment by leo.gall on 14 May 2013 14:30 UTC Thanks a lot for the new icons! My personal favorite is Modelica.Mechanics.Rotational.Components.IdealGearR2T. Now the icon makes sense.

Dietmar pointed out the important issue of connector colors: Connector colors shouldn't change (at least if there is no automatic conversion for connection line color). Otherwise users would have to adapt graphical annotations of connections to the new connection line colors. All user models using Modelica.Blocks would have to be changed!

Just some remarks:

modelica-trac-importer commented 7 years ago

Comment by dhedberg on 14 May 2013 14:46 UTC Replying to [comment:7 sjoelund.se]:

I didn't say it wasn't a bug in OMEdit ;)

Just for the record, we have not touched this icon when redesigning the icons. :-)

modelica-trac-importer commented 7 years ago

Comment by dhedberg on 14 May 2013 14:53 UTC Replying to [comment:4 hansolsson]:

It looks quite nice in general, but there are some issues:

  1. The main Modelica icon has grey M on black background which is not nice. Normally the Modelica icon is black M against white (as on this page). I noticed that most screenshots did not show the Modelica icon in the package browser.

The Modelica icon was just a proposal. Feel free to change it to anything that you think is better suited, or we can do it once there is an agreement.

  1. The info-icon is difficult to see in Dymola.

I think this due to Dymola not using anti-aliasing. I think there is room for some improvement when it comes to how Dymola renders icons. There is an anti-aliasing rendering flag that can be turned on in Qt. Try it! :-)

  1. The signal-bus icons are not nice in OMEdit.

This is a problem with OMEdit not closing polygons.

I believe issues 2 and 3 are related; the problem is how to render vector-graphics in such small scale and I could get a better info-icon in Dymola by thinning down the "i".

I think we should try and improve the rendering of icons in tools instead of adapting the icons to look good in a specific tool.

modelica-trac-importer commented 7 years ago

Comment by hansolsson on 14 May 2013 15:45 UTC Replying to [comment:12 dhedberg]:

Replying to [comment:4 hansolsson]:

It looks quite nice in general, but there are some issues:

  1. The main Modelica icon has grey M on black background which is not nice. Normally the Modelica icon is black M against white (as on this page). I noticed that most screenshots did not show the Modelica icon in the package browser.

The Modelica icon was just a proposal. Feel free to change it to anything that you think is better suited, or we can do it once there is an agreement.

My first proposal would just be to change the background to white and change the M to black. Alternatively just remove the background.

However, there is also a general issue about the gray backgrounds as discussed above.

So replace appropriate parts of the code (at the top of MSL) with:

Icon(coordinateSystem(extent={{-100.0,-100.0},{100.0,100.0}}), graphics={
  Rectangle(
    lineColor={64,64,64},
    fillColor={255,255,255},
    pattern=LinePattern.None,
    fillPattern=FillPattern.Solid,
    lineThickness=4,
    extent={{-100.0,-100.0},{100.0,100.0}},
    radius=25),
  Polygon(
    origin={-6.9888,20.048},
    fillColor={0,0,0},
    pattern=LinePattern.None,
    fillPattern=FillPattern.Solid,
    points={{-93.0112,10.3188},{-93.0112,10.3188},{-73.011,24.6},{-63.011,31.221},{-51.219,36.777},{-39.842,38.629},{-31.376,36.248},{-25.819,29.369},{-24.232,22.49},{-23.703,17.463},{-15.501,25.135},{-6.24,32.015},{3.02,36.777},{15.191,39.423},{27.097,37.306},{32.653,29.633},{35.035,20.108},{43.501,28.046},{54.085,35.19},{65.991,39.952},{77.897,39.688},{87.422,33.338},{91.126,21.696},{90.068,9.525},{86.099,-1.058},{79.749,-10.054},{71.283,-21.431},{62.816,-33.337},{60.964,-32.808},{70.489,-16.14},{77.368,-2.381},{81.072,10.054},{79.749,19.05},{72.605,24.342},{61.758,23.019},{49.587,14.817},{39.003,4.763},{29.214,-6.085},{21.012,-16.669},{13.339,-26.458},{5.401,-36.777},{-1.213,-46.037},{-6.24,-53.446},{-8.092,-52.387},{-0.684,-40.746},{5.401,-30.692},{12.81,-17.198},{19.424,-3.969},{23.658,7.938},{22.335,18.785},{16.514,23.283},{8.047,23.019},{-1.478,19.05},{-11.267,11.113},{-19.734,2.381},{-29.259,-8.202},{-38.519,-19.579},{-48.044,-31.221},{-56.511,-43.392},{-64.449,-55.298},{-72.386,-66.939},{-77.678,-74.612},{-79.53,-74.083},{-71.857,-61.383},{-62.861,-46.037},{-52.278,-28.046},{-44.869,-15.346},{-38.784,-2.117},{-35.344,8.731},{-36.403,19.844},{-42.488,23.813},{-52.013,22.49},{-60.744,16.933},{-68.947,10.054},{-76.884,2.646},{-93.0112,-12.1707},{-93.0112,-12.1707}},
    smooth=Smooth.Bezier,
          lineColor={0,0,0}),
  Ellipse(
    origin={40.8208,-37.7602},
    fillColor={161,0,4},
    pattern=LinePattern.None,
    fillPattern=FillPattern.Solid,
    extent={{-17.8562,-17.8563},{17.8563,17.8562}})}),
  1. The info-icon is difficult to see in Dymola.

I think this due to Dymola not using anti-aliasing. I think there is room for some improvement when it comes to how Dymola renders icons. There is an anti-aliasing rendering flag that can be turned on in Qt. Try it! :-)

The Dymola issue is related to border-less small polygons, and possibly precision for Bezier-splines (for small polygons). It seems that can be improved in a future Dymola release.

Anti-aliasing might be the final touch, but is not the main issue.

However, we are for this case basically drawing a letter by hand and modern font-rendering has more features than just anti-aliasing to make it look nice at small sizes.

Thus another alternative for the "i" would be to find a suitable font (Book Antiqua, Georgia, ...?) The downside would be that we rely on a specific font.

modelica-trac-importer commented 7 years ago

Comment by Dag Brück on 15 May 2013 07:16 UTC I think maybe we should avoid using fancy italic fonts in icons, to make them easily adaptable to different sizes. You have probably noted that the "same" icon in different sizes typically are rendered by hand with less detail in e.g. 16x16 compared to 32x32. Our idea of automartic scaling for different icon sizes is really an exception.

By the way, Dymola has an alternative way of displaying the package browser (no tree) which uses big icons.

modelica-trac-importer commented 7 years ago

Comment by dhedberg on 3 Jun 2013 19:57 UTC I have updated the MSL top level package icon, the Examples package icon, and the Example model icon. See attachment MSL_icons_update1.png.

modelica-trac-importer commented 7 years ago

Comment by dhedberg on 3 Jun 2013 20:42 UTC If the only remaining issue, that prevents the updated icons to be part of the MSL 3.2.1 release, is the changed colors of the connectors I am prepared to revert those changes. If we can reach a consensus during tomorrow I could probably have the changes committed to the SVN branch in a few days.

modelica-trac-importer commented 7 years ago

Comment by dietmarw on 3 Jun 2013 21:25 UTC From my point of view the updated icons are fine and I would, given that the colours of the connections are left like they were in the MSL 3.2) give the change my blessing. :-)

modelica-trac-importer commented 7 years ago

Comment by otter on 17 Jun 2013 09:57 UTC Based on a decision at the 79th Modelica Design Meeting, the icons have been introduced in trunk with e596ec2034f55b1bacda70c33f0df6a3b1ee05d5, 16f70e3ab3a48e8cab84a522ed7599ec73534725, b98cd7d2424a661e5da9351c5f6212e6a56d7934, 7a20a07029c71041fb075a39318e9df6bde52640

modelica-trac-importer commented 7 years ago

Comment by ahaumer on 15 Jul 2013 07:05 UTC In Dymola 2014, some packages (e.g. Blocks.Examples) show the ugly and annoying "extends Modelica.Icons.ExamplesPackage;" in the package browser. I thought we got rid of that some time ago ...

modelica-trac-importer commented 7 years ago

Comment by dietmarw on 15 Jul 2013 07:11 UTC Replying to [comment:19 ahaumer]:

In Dymola 2014, some packages (e.g. Blocks.Examples) show the ugly and annoying "extends Modelica.Icons.ExamplesPackage;" in the package browser. I thought we got rid of that some time ago ...

This is an issue of Dymola and how it displays inheritance from packages (see also #1167 why the icons for packages were changed from type class to type package) and is not related with the design of the icons as such. Therefore closing this again.