# crt

### Funkce

Časové zobrazení funkce dvou proměnných f(x,y) vyjádřených pomocí numerických výrazů x a y do jednoho grafu ("osciloskop").

### Syntax

      crt crt_name;
        rem = string;
        bubble = string;
        timer = timer_name;
        owner = owner_name;
        position = integer, integer, integer, integer;
        win_disable = [ identifier, . . .];
        win_title = string;
        history = integer;
        x = real_expression;
        y = real_expression;
        clear = boolean_expression;
        rect = integer, integer, integer, integer;
        x_axis = boolean;
        y_axis = boolean;
        range_x1 = real;
        range_y1 = real;
        range_x2 = real;
        range_y2 = real;
        xdisp_position = integer, integer;
        xdisp_dec_places = integer;
        xdisp_label = string;
        ydisp_position = integer, integer;
        ydisp_dec_places = integer;
        ydisp_label = string;
        colors
          f_color = color;
          b_color = color;
          top_shadow = color;
          bottom_shadow = color;
          frame_f_color = color;
          frame_b_color = color;
          frame_text_color = color;
        end_colors;
      end_crt;

### Specifické parametry přístroje

- history
  Udává počet zobrazených bodů v grafu. Musí být celočíselný v intervalu 2 až 4096.
- x, y
  Jsou dva parametry, jejichž obsahem jsou numerické výrazy, které udávají pozici právě vykreslovaného bodu na obrazovce.
- x_axis a y_axis
  Jsou-li přítomny, zobrazí se popis os x, y.
- range_x1, range_y1 a range_x2, range_y2
  Jsou parametry udávající rozsah přístroje ve směru osy x a ve směru osy y. Vloží–li se do přístroje hodnota menší než range_1, nebo hodnota přesahující range_2, přístroj je nezobrazí. Hodnoty jsou numerické.
- xdisp_position a ydisp_position
  Jsou pozice (x, y) displeje s číselnou hodnotou zobrazované veličiny ve směru os. Obsah parametrů musí být celočíselný.
- xdisp_dec_places a ydisp_dec_places
  Je počet zobrazovaných desetinných míst. Parametr by měl být celočíselný.
- xdisp_label a ydisp_label
  Jsou parametry obsahující text, který se vypíše před displejem s aktuální číselnou hodnotou vykreslovaného bodu ve směru x, y.
- colors
  Seznam prvků přístroje, kterým lze měnit nastavení barvy:
  - f_color - aktuální hodnota v grafu
  - b_color - podklad grafu
  - top_shadow - horní stíny
  - bottom_shadow - dolní stíny
  - frame_f_color - popis os
  - frame_b_color - podklad přístroje crt
  - frame_text_color - všechny zobrazované znaky

Implicitně jsou nastaveny parametry:

      position = 0, 0, 100, 100;
      history = 2;
      rect = 0, 0, 0, 0;
      x_axis = false;
      y_axis = false;
      range_x1 = 0;
      range_y1 = 0;
      range_x2 = 100;
      range_y2 = 100;
      xdisp_position = -1, -1;
      ydisp_position = -1, -1;
      xdisp_dec_places = 2;
      ydisp_dec_places = 2;

### Nativní procedury přístroje

    Clear()

Procedura vymaže historii přístroje a překreslí přístroj v podobě, v jaké byl při startu aplikace.

    Set( x, y : real )

Volání Set( x, y ) způsobí zapsání další hodnoty do historie přístroje stejně jako jeho aktivace. Pokud je přístroj crt časován, volání této procedury způsobí neizochronnost grafického zobrazení.

### Událostní procedury přístroje

Přístroj může volat standardní událostní procedury:

    OnActivate()
    OnMouseDown( MouseX, MouseY : integer; LeftButton, MiddleButton, RightButton : boolean )
    OnMouseDoubleClick( MouseX, MouseY : integer; LeftButton, MiddleButton, RightButton : boolean )
    OnMouseUp( MouseX, MouseY : integer; LeftButton, MiddleButton, RightButton : boolean )
    OnMouseMove( MouseX, MouseY : integer; LeftButton, MiddleButton, RightButton : boolean )
    OnKeyDown( Character : cardinal )
    OnKeyRepeat( Character : cardinal )
    OnKeyUp( Character : cardinal )
    OnSelect()
    OnDeselect()
    OnShow()
    OnHide()
    OnNewPosition( RectX, RectY, RectW, RectD : integer )
    OnWindowMinimize()
    OnWindowMaximize()
    OnWindowRestore( WasMinimized, WasMaximized : boolean )
    OnWindowClose()

Podrobnější informace k těmto procedurám lze nalézt v kapitole Programování a procedury.

### Specifické událostní procedury přístroje

Přístroj nevolá specifické událostní procedury.