Halo outline rendering: Difference between revisions

From Maria GDK Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 5: Line 5:
This can be enabled through styling:
This can be enabled through styling:


<source lang="xml">
<syntaxhighlight lang="xml">
       <compositeitem name="Line">
       <compositeitem name="Line">
         <valueitem name="DrawHaloOutline" value="true" />
         <valueitem name="DrawHaloOutline" value="true" />
       </compositeitem>
       </compositeitem>
</source>
</syntaxhighlight>


or through the '''DrawHaloOutline''' data field.
or through the '''DrawHaloOutline''' data field.
Line 15: Line 15:
The color and thickness of this outline is controlled by the following properties in the IMariaDrawObjectLayer interface:
The color and thickness of this outline is controlled by the following properties in the IMariaDrawObjectLayer interface:


<source lang="c#">
<syntaxhighlight lang="c#">
         /// <summary>
         /// <summary>
         /// Shared outline color used for draw objects whose Line.DrawHaloOutline styling is enabled.
         /// Shared outline color used for draw objects whose Line.DrawHaloOutline styling is enabled.
Line 26: Line 26:
         /// </summary>
         /// </summary>
         double HaloOutlineThickness { get; set; }
         double HaloOutlineThickness { get; set; }
</source>
</syntaxhighlight>


The purpose of this feature is mainly to improve visibility and readability of tactical graphics. For styling of individual objects, see the Outline styling options of the [[Styling visual appearance for draw objects (GDK5)#Line|Line Styling]] documentation.
The purpose of this feature is mainly to improve visibility and readability of tactical graphics. For styling of individual objects, see the Outline styling options of the [[Styling visual appearance for draw objects (GDK5)#Line|Line Styling]] documentation.

Revision as of 16:38, 22 September 2026

In addition to the Outline styling options that are available for all generic draw objects, you can enable a global "halo outline" which will be rendered around all included draw objects, including tactical graphics with advanced line textures.

DrawHaloOutline.png

This can be enabled through styling:

      <compositeitem name="Line">
        <valueitem name="DrawHaloOutline" value="true" />
      </compositeitem>

or through the DrawHaloOutline data field.

The color and thickness of this outline is controlled by the following properties in the IMariaDrawObjectLayer interface:

        /// <summary>
        /// Shared outline color used for draw objects whose Line.DrawHaloOutline styling is enabled.
        /// </summary>
        Color HaloOutlineColor { get; set; }

        /// <summary>
        /// Shared outline thickness in logical pixels. Note that high values here
        /// might cause performance issues. Default: 3.0
        /// </summary>
        double HaloOutlineThickness { get; set; }

The purpose of this feature is mainly to improve visibility and readability of tactical graphics. For styling of individual objects, see the Outline styling options of the Line Styling documentation.