This is part of the HicEst documentation

DeCoRation: Geometrical Shapes for Screen or Print

Decoration patterns are most useful in the WINDOW(Panel) function to separate numbers, texts, graphics.

⇾Home ⇾Contents ⇾more Input_Output ⇾ Examples

⇾background_color ⇾bezier ⇾clear_screen_to_a_specified_pattern ⇾color_style_type ⇾ellipse ⇾foreground_color ⇾output_margins ⇾page_feeds ⇾polygon ⇾polyline ⇾real_time_flowsheet_data ⇾rectangle ⇾suppress_page_scroll ⇾what_you_see_is_what_you_get

Optional keywords:
(Syntax of optional keywords)
sub options type _and_ are fitted to the dimensions given in in L, R, T, B, H, W
RA num
  • RectAngle is coded as FORECOLOR.STYLE|WIDTH.
  • The fill color or pattern is set by BackColor.
  • Use this technique to
    • WRITE(dcr='BC=1 RA=4.09') ! blue screen, red border, fills window area
WRITE output can be decorated by rectangles etc.:
  • WRITE(WIN=wh, Align="C", DeCoRation="L= 0/15 W=4/15 BC=1.00 RA=4.09") "|BC=1.00|RA=4.09"
  • WRITE(WIN=wh, Align="C", DeCoRation="L= 5/15 W=4/15 BC=1.24 RA=4.05") "|BC=1.24|RA=4.05"
  • WRITE(WIN=wh, Align="C", DeCoRation="L=10/15 W=4/15 BC=6.04 RA=4.11") "|BC=6.04|RA=4.11"
  • Decoration-rectangles.png
  • RA=4.09 RectAngle outline color=4, solid line=0, lineWidth=9
  • BC=1 fill color=1=blue
EL num ELlipse,'width (fill with BC)
  • Sub options A1 and A2 set the arc/chord delimiters (0 = South, 90 = W, 180 = N, 270 = E)
  • A1 = Angle1 ( num=0...360 for arc or chord, default=0)
  • A2 = Angle2 ( num=0...360 for arc or chord, default=0
  • WRITE(WIN=wh, decor = "EL= 3.04 A1=225 A2=45, BCol=11") ! top left arc
  • WRITE(WIN=wh, decor = "EL=13.04 A1=45 A2=225, BCol=3") ! bottom right arc
  • WRITE(WIN=wh, Align="Cent Vert", PoinT=24, Bcol=-1) "Hic Est" ! -1: transparent
  • Decoration-ellipse_arcs.png
  • EL=3.04 Ellipse with border color = 3 (see Colors), border width 4
  • A1 and A2 angles to start/end arc
  • BC=11 fill color (backcolor) 11
  • size and location are set with any combination of the H, W, L, R, T, B options
  • The coordinates given in vec (x1,y1, x2,y2, x3,y3, ...) will be adjusted to fit the decoration output area,
  • if either of the strings CHA or PXL is present in the DeCoRation-argument the dimension is in absolute character units or pixels resp.
  • Arguments are separated by blanks, commas, semicolon in the DeCoRation-string. Order is arbitrary.
PO vec
  • polygon, nodes at x1,y1 x2,y2 .. xn,yn (integers)
  • can be filled by BackColor)
    • WRITE(WIN=wh, BC=-1, Align="CentVert", DeCoRation="PO=0,0 2,0 1,2 ^0,1 2,1 1,-1 FC=2.09 BC=12.04") "POlygon"
LI vec
  • WRITE(WIN=wh, PoinT=10, Align="Top Center", DCR="LI=0,8 8,0 ^8,8 0,0 ^2,4 6,4 ^4.2 4,6 ") "draw lines"
BE vec Bezier, vec=x1 y1 x2 y2 .. xn yn ( n >= 4 ).
set of decoration area:
= 0...1 relative screen dimension
> 1 character units
< 1 pixels
  • WRITE(DeCoRation="L=1/4, T=1/4, R=1/4, B=1/4")
  • ! A rectangle of 1/2 linear window size becomes centered output area
L num set Left output margin
T num set Top output margin
B num set Bottom output margin
R num set Right output margin
H num set Height of output area, may be combined with T or B
W num set Width of output area, may be combined with L or R.
BC num is coded as Color.StyleHatch, e.g.
BC=3.21 means Color=3=cyan, Style=2=hatched, Hatch=1=vertical
  • Color
    0 black
    1 Blue
    2 Green
    3 Cyan
    4 Red
    5 Magenta
    6 Brown
    7 White
    8 Gray
    9 Bright Blue
    10 Bright Green
    11 Bright Cyan
    12 Bright Red
    13 Bright Magenta
    14 Yellow
    15 Bright White
  • Style
    0 solid
    1 transparent
  • Hatch
    0 no shade by drawing fine parallel or crossed lines
    1 vertical lines
    2 \\ diagonal lines
    3 // diagonal lines
    4 # crossed lines
    5 diagonally crossed lines
FC num is coded as Color.StyleWidth, e.g.
FC=1.23 means Color=1=blue, Style=2=dotted, Width=3=3 pixels
  • Color
  • Style
    <0 invisible
    0 solid line
    1 dashed line
    2 dotted line
    3 dash-dotted line
    4 dash-dot-dot line
NOUP --- no update, postpone repainting to avoid flicker until a WRITE without this option is met.
WYS --- To print, try ._In_particular,__or_ with DCR="WYS"

Support HicEst   ⇾ Impressum
©2000-2019 Georg Petrich, HicEst Instant Prototype Computing. All rights reserved.