Hatch drawing definition

From wiki.fine.cz
Jump to navigation Jump to search

Used to store hatch definition. Hatch contains serie (one or more) of fills. There are three types of fills - StandardFill, LineFill, CompositeFill.

Data XML definition

Property XML Description Default
Type [A] Type Type of hatch, possible values StandardFill, LineFill or CompositeFill (empty)

StandardFill


Area filled with solid color.

Property XML Description Default
Color [A] Color Color of fill clDefault

Example of Data XML

<Fill Type="StandardFill" Color="clFill">

LineFill


Area filled with sequence of lines separated by distance. All lines are oriented in one direction.

Property XML Description Default
Line direction [A] Direction Direction of line [rad] (empty)
Line origin [E] Origin Point defining origin of the line [mm] 0, 0
Line distance [A] Distance Distance of parallel lines [mm] (empty)
Line shift [A] Shift Shift of next line (in direction of line) [mm] (empty)
Line definition [E] Line Definition of the line, if there is more than 1 line definition, lines are drawn in sequence Line1->Distance->Line2->Distance->...->Line1->... (empty)
Color [A] Color Color of fill clDefault

Example of Data XML

<Fill Direction="0" Distance="2" Shift="4">

  <Line Type="ElemLine">

    <Elem Kind="Line" DX="2" DY="0" />

    <Elem Kind="Move" DX="-1" DY="1" />

    <Elem Kind="Line" DX="0" DY="-2" />

    <Elem Kind="Move" DX="7" DY="0" />

  </Line>

</Fill>

CompositeFill


This type is aggregate for drawing multiple fill in same area.

Property XML Description Default
Fill [E] Fill Definition of child hatch. May contain one or more fills. (empty)

Example of Data XML - Multiple line hatch

<Fill Type="CompositeFill">

  <Fill Type="StandardFill" />

  <Fill Type="CompositeFill">

    <Fill Type="LineFill" Direction="0" Distance="9" Color="clFill">

      <Line Type="ElemLine">

        <Elem Kind="Move" DX="1.5" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="0" />

          <Pt X="-0.75" Y="1.25" />

          <Pt X="-0.75" Y="2.25" />

          <Pt X="-0.25" Y="2.5" />

          <Pt X="1.75" Y="2.25" />

          <Pt X="2" Y="1" />

          <Pt X="2.25" Y="0.75" />

          <Pt X="1.5" Y="0" />

        </Elem>

        <Elem Kind="Move" DX="3.75" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="0.25" />

          <Pt X="-0.25" Y="1.25" />

          <Pt X="0.5" Y="1.5" />

          <Pt X="0.75" Y="1.25" />

          <Pt X="0.75" Y="0.5" />

          <Pt X="0.5" Y="0.25" />

        </Elem>

        <Elem Kind="Move" DX="1.25" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="2" />

          <Pt X="0.25" Y="2.75" />

          <Pt X="1" Y="3" />

          <Pt X="1.75" Y="2.75" />

          <Pt X="2.25" Y="2" />

          <Pt X="2.25" Y="1.25" />

          <Pt X="1.5" Y="0.75" />

          <Pt X="1" Y="0.75" />

          <Pt X="0.25" Y="1.25" />

        </Elem>

        <Elem Kind="Move" DX="2.5" DY="0" />

      </Line>

    </Fill>

    <Fill Type="LineFill" Direction="0" Distance="9" Color="clFill">

      <Origin X="0" Y="3.25" />

      <Line Type="ElemLine">

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="0.25" />

          <Pt X="0" Y="1.75" />

          <Pt X="1" Y="1.25" />

          <Pt X="1.25" Y="0.5" />

          <Pt X="0.5" Y="0" />

        </Elem>

        <Elem Kind="Move" DX="1.5" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="2.75" />

          <Pt X="0" Y="3.5" />

          <Pt X="1" Y="4" />

          <Pt X="1.75" Y="3.75" />

          <Pt X="2.5" Y="3.75" />

          <Pt X="4" Y="3" />

          <Pt X="4.5" Y="2.25" />

          <Pt X="4" Y="1.5" />

          <Pt X="2.5" Y="1" />

          <Pt X="1.75" Y="1.25" />

          <Pt X="1.5" Y="1.75" />

          <Pt X="0.5" Y="2.25" />

        </Elem>

        <Elem Kind="Move" DX="4" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="0.25" />

          <Pt X="0.125" Y="1" />

          <Pt X="1.25" Y="1.25" />

          <Pt X="1.75" Y="0.75" />

          <Pt X="1.25" Y="0.375" />

          <Pt X="0.75" Y="0" />

        </Elem>

        <Elem Kind="Move" DX="3.5" DY="0" />

      </Line>

    </Fill>

    <Fill Type="LineFill" Direction="0" Distance="9" Color="clFill">

      <Origin X="0" Y="6.25" />

      <Line Type="ElemLine">

        <Elem Kind="Move" DX="0.25" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="2" />

          <Pt X="0.25" Y="2.5" />

          <Pt X="1" Y="2" />

          <Pt X="1" Y="1.75" />

          <Pt X="0.625" Y="1.5" />

          <Pt X="0.25" Y="1.75" />

        </Elem>

        <Elem Kind="Move" DX="3.75" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="2" />

          <Pt X="0.25" Y="2.25" />

          <Pt X="0.75" Y="2" />

          <Pt X="0.75" Y="1.5" />

          <Pt X="0.25" Y="1.5" />

        </Elem>

        <Elem Kind="Move" DX="1.25" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="1" />

          <Pt X="0" Y="1.5" />

          <Pt X="0.25" Y="1.75" />

          <Pt X="0.75" Y="1.75" />

          <Pt X="0.75" Y="1.25" />

          <Pt X="0.75" Y="1" />

          <Pt X="0.375" Y="0.75" />

        </Elem>

        <Elem Kind="Move" DX="1.75" DY="0" />

        <Elem Kind="Polygon" ShapeFilled="true">

          <Pt X="0" Y="0.5" />

          <Pt X="0" Y="2.5" />

          <Pt X="0.5" Y="3" />

          <Pt X="1.5" Y="2.75" />

          <Pt X="1.75" Y="1.5" />

          <Pt X="2.25" Y="1" />

          <Pt X="1.75" Y="0.25" />

          <Pt X="1" Y="0" />

          <Pt X="0.5" Y="0.25" />

        </Elem>

        <Elem Kind="Move" DX="2" DY="0" />

      </Line>

    </Fill>

  </Fill>

</Fill>