PROGRAMOWANIE
WEBMASTER:
 Artyku造
 Kursy
 Skrypty
PHP:
 Artyku造
 Kursy
 Skrypty
VISUAL C/C++:
 Artyku造
 Kursy
 Kody 廝鏚這we
C++ BUILDER:
 Artyku造
 Kursy
 Komponenty
 Kody 廝鏚這we
 FAQ
DELPHI:
 Artyku造
 Kursy
 Komponenty
 Kody 廝鏚這we
 FAQ
JAVA:
 Artyku造
 Kursy
 Aplety
ASP:
 Artyku造
 Kursy
 Skrypty
VISUAL BASIC:
 Artyku造
 Kursy
 Kody 廝鏚這we
PASCAL:
 Artyku造
 Kursy
 Kody 廝鏚這we
ASSEMBLER:
 Artyku造
 Kursy
 Kody 廝鏚這we
O NAS [...]
 Ekipa portalu
 Reklama
REKLAMA

Pascal » Artyku造
Opis modu逝 Graph
Grafika ekranowa zale篡 od rodzaju karty graficznej, w kt鏎� wyposa穎ny jest komputer, oraz od rodzaju monitora. Dobre mo磧iwo軼i (zwi您ane przede wszystkim z liczb� kolor闚 i rozdzielczo軼i� ekranu) daj� szeroko rozpowszechnione w naszym kraju karty VGA, kt鏎a pozwala na prac� w trzech trybach graficznych. Ka盥y program graficzny powinien zawiera� procedur� inicjuj帷� tryb graficzny, kt鏎a dla karty VGA mo瞠 mie� posta�:

procedure VGAinit;

var blad, sterownik,tryb : Integer;

begin

sterownik:=VGA;

tryb:=VGAHi;

InitGraph(sterownik,tryb,'');

blad:=GraphResult;

if blad<>0

then begin

Writeln ('B陰d podczas inicjacji trybu graficznego');

Write ('Kod b喚du: ',blad);

Halt

end

end;

Aby rozpocz望 prac� nad programem graficznym nale篡 zadeklerowa� u篡cie modu逝 Graph (uses graph;)

Nast瘼nie nale篡 zainicjowa� tryb graficzny np. powy窺z� procedur�.

Po inicjacji trybu graficznego mo積a wykorzystywa� procedury i funkcje opisane w dalszej cz窷ci rozdzia逝

Modu� Graph

Modu� zawiera funkcje i procedury obs逝gi grafiki, umo磧iwiaj帷e jej realizacj� na dowolnych kartach graficznych, stosowanych w konfiguracjach sprz皻u typu IBM PC. Nale篡 zaznaczy�, 瞠 program napisany dla jednego typu urz康zenia graficznego mo瞠 by� uruchamiany na innych, pod warunkiem operowania w nim wzgl璠nymi warto軼iami rozdzielczo軼i ekranu i numerami kolor闚, z zastosowaniem odpowiedniego sterownika ekranu. W niniejszym rozdziale zamieszczono definicje typ闚, sta造ch, zmiennych, funkcji i procedur, niezb璠nych przy tworzeniu programu.

Sta貫

kody b喚d闚 graficznych (patrz: Komunikaty b喚d闚)

grOk = 0;

grNolnitGraph = -1;

grNotDetected = -2;

grFileNotFound = -3;

grlnvalidDriver = -4;

grNoLoadMem = -5;

grNoScanMem = -6;

grNoFloodMem = -7;

grFontNotFound = -8;

grNoFontMem = -9;

grlnvalidMode = -10;

grError = -11;

grIOerror = -12;

grlnvalidFont = -13;

grlnvalidFontNum = -14;

definiuj帷e sterowniki ekranu

CurrentDriver = -128;

Detect = 0;

CGA = 1;

MCGA = 2;

EGA = 3;

EGA64 = 4;

EGAMono = 5;

IBM8514 == 6;

HercMono = 7;

ATT400 = 8;

VGA = 9;

PC3270 =10;

definiuj帷e tryby graficzne

CGACO = 0; 320x200, paleta 0: kolor 10,12,14, 1 strona

CGAC1 = 1; 320x200, paleta 1: kolor 11, 13, 15,1 strona

CGAC2 = 2; 320x200, paleta 2: kolor 2, 4, 6, 1 strona

CGAC3 = 3; 320x200, paleta 3: kolor 3, 5, 7, 1 strona

CGAHi = 4; 640x200,1 kolor, 1 strona

MCGACO = 0; 320x200, paleta 0: kolor 10, 12, 14, 1 strona

MCGAC1 = 1; 320x200, paleta 1: kolor 11,13,15, 1 strona

MCGAC2 = 2; 320x200, paleta 2: kolor 2, 4, 6, 1 strona

MCGAC3 = 3; 320x200, paleta 3: kolor 3, 5, 7, 1 strona

MCGAMed = 4; 640x200, 1 kolor, 1 strona

MCGAHi = 5; 640x480, 1 strona

EGALo = 0; 640x200,16 kolor闚, 4 strony

EGAHi = 1; 640x350,16 kolor闚, 2 strony

EGA64LO = 0; 640x200,16 kolor闚, 1 strona

EGA64HI = 1; 640x350, 4 kolory, 1 strona

EGAMonoHi = 3; 640x350, karty: 64 K - 1 strona, 256 K-2 strony

HercMonoHi = 0; 720x348, 2 strony

ATT400CO = 0; 320x200, paleta O: kolor 10, 12, 14, 1 strona

ATT400C1 = 1; 320x200, paleta 1: kolor 11,13,15, 1 strona

ATT400C2 = 2 ;320x200, paleta 2: kolor 2, 4, 6, 1 strona

ATT400C3 = 3; 320x200, paleta 3: kolor 3, 5, 7, 1 strona

ATT400Med = 4 ;640x200, 1 strona

ATT400HI = 5 ;640x400, 1 strona

VGALo = 0; 640x200, 16 kolor闚, 4 strony

VGAMed = 1 ;640x350, 16 kolor闚, 2 strony

VGAHi = 2; 640x480, 16 kolor闚, 1 strona

PC3270HI = 0; 720x350, 1 strona

IBM8514LO = 0; 640x480, 256 kolor闚

IBM8514HI = 1 ;1024x768, 256 kolor闚

definiuj帷a maksymaln� liczb� kolor闚

MaxColors =15; 16 kolor闚 (0.. 15)

definiuj帷e kolory

Black = 0; czarny

Blue = 1; niebieski

Black = 0; czarny

Blue = 1; niebieski

Green = 2; zielony

Cyan = 3; turkusowy

Red = 4; czerwony

Magenta = 5; karmazynowy

Brown = 6; br您owy

LightGray = 7; jasnoszary

DarkGray = 8; ciemnoszary

LightBIue = 9; jasnoniebieski

LightGreen = 10; jasnozielony

LightCyan =11; jasnoturkusowy

LightRed =12; jasnoczerwony

LightMagenta =13; jasnokarmazynowy

Yellow = 14; 鄴速y

White = 15; bia造

definiuj帷e kolory karty EGA na karcie IBM8514

EGABIack = 0; EGADarkgray = 56;

EGABIue = 1; EGALightbIue = 57;

EGAGreen = 2; EGALightgreen = 58;

EGACyan = 3; EGALightcyan = 59;

EGARed = 4; EGALightred = 60;

EGAMagenta = 5; EGALightmagenta = 61;

EGABrown = 20; EGAYellow = 62;

EGALightgray = 7; EGAWhite = 63;

definiuj帷e rodzaje linii

SolidLn = 0; ci庵豉

DottedLn = 1; przerywana kropkowana

CenterLn = 2; przerywana (kreska kropka)

DashedLn = 3; przerywana (kreski)

UserBitLn = 4; definiowana przez u篡tkownika

NormWidth = 1; normalnej grubo軼i (jeden punkt)

ThickWidth = 3; pogrubiona (trzy punkty)

definiuj帷e kr鎩 pisma

DefaultFont = 0; standardowe (8x8 punkt闚)

TriplexFont = 1;

SmallFont = 2; pismo techniczne

SansSerifFont = 3; bezszeryfowa

GothicFont = 4; pismo gotyckie

definiuj帷e kierunek wyprowadzania tekstu

HorizDir = 0; od lewej do prawej

VertDir = 1; z do逝 do g鏎y (pionowe - odwr鏂one o 90 stopni w lewo)

definiuj帷e po這瞠nie tekstu (wyr闚nywanie) wzgl璠em pozycji kursora graficznego

LeftText = 0; poziomo, wyr闚nanie od lewej

CenterText = 1; poziomo, wy鈔odkowanie

RightText = 2; poziomo, wyr闚nanie od prawej

BottomText = 0; pionowo, wyr闚nanie od do逝

CenterText = 1; pionowo, wycentrowanie

TopText = 2; pionowo, wyr闚nanie od g鏎y

definiuj帷a wielko嗆 znak闚

UserCharSize = 0; wielko嗆 standardowa

definiuj帷e mo磧iwo軼i rysowania poza oknem graficznym

ClipOn=True; obcinanie linii na obrze簑

ClipOff=False; rysowanie poza oknem

definiuj帷e wierzcho貫k s逝pka tr鎩wymiarowego

TopOn = True; zako鎍zony

TopOff = False; niezako鎍zony

definiuj帷e wz鏎 do wype軟iania kontur闚

EmptyFill = 0; kolor t豉, wz鏎 pusty

SolidFill = 1; pe軟e wype軟ienie

LinePill = 2; kreski poziome

LtSIashFill = 3; kreski prawosko郾e

SlashFill = 4; kreski prawosko郾e pogrubione

BkSlashFill = 5; kreski lewosko郾e

LtBkSlashFill = 6; kreski lewosko郾e pogrubione

HatchFill = 7; kratka prosta

XHatchFill = 8; kratka uko郾a

lnterleaveFill = 9; punkty zag瘰zczone

WideDotFill = 10; kropki

CloseDotFill = 11; g瘰te kropki

UserFill = 12; wz鏎 definiowany przez u篡tkownika

definiuj帷e rodzaj operacji na bitach pami璚i ekranu oraz bufora obrazu (Putlmage i SetWriteMode)

NormalPut = 0; MOV

CopyPut = 0; MOV

XORPut = 1; XOR

OrPut = 2; OR

AndPut = 3; AND

NotPut = 4; NOT

typy

charakterystyki palety (najwi瘯sza liczba kolor闚 (Size) - 16, najwi瘯szy numer koloru (MaxColors) - 15)

PaletteType = record

Size: Byte; {liczba kolor闚 w palecie}

Colors: array[0.. MaxColors] of Shortint {kolory}

end;

rodzaju kre郵onej linii

LineSettingsType = record

LineStyle: Word; {rodzaj linii}

Pattern: Word; {zdefiniowany wz鏎}

Thickness: Word {grubo嗆 (1 lub 3 punkty)}

end;

sposobu wyprowadzania tekstu

TextSettingsType = record

Font: Word; {numer kroju pisma}

Direction: Word; {kierunek}

CharSize: Word; {powi瘯szenie pisma}

Horiz: Word; {poziome justowanie}

Vert: Word {pionowe justowanie}

end;

opisu wzoru stosowanego do wype軟iania kontur闚

FilISettingsType = record

Pattem: Word; {numer wzoru}

Color: Word {kolor}

end;

wzoru wype軟iania kontur闚

FilIPatternType = array[1..8] of Byte;

wsp馧rz璠nych punktu

PointType = record

X, Y: Integer

end;

okna graficznego

ViewPortType = record

x1, y1, x2, y2: Integer; {wsp馧rz璠ne rog闚 okna}

Clip: Boolean {obcinanie na brzegach}

end;

wsp馧rz璠nych 逝kowych

ArcCoordsType = record

X, Y: l nteger; {wsp馧rz璠 ne 鈔鏚ka 逝ku }

Xstart, Ystart: Integer; {wsp馧rz璠ne pocz徠ku 逝ku}

Xend, Yend: Integer {wsp馧rz璠ne ko鎍a 逝ku}

end;

GraphResult: Integer-funkcja

wynik: Warto嗆 r闚na zeru, je郵i ostatnia wykonana operacja graficzna by豉 poprawna; warto嗆 ujemna - b陰d (patrz: Kody b喚d闚).

GraphErrorMsg (Kod: Integer): string-funkcja

Kod - numer b喚du

wynik: Komunikat dotycz帷y b喚du o podanym numerze.

DetectGraph (var Ster, Tryb: Integer)-procedura

Ster - numer sterownika ekranu

Tryb - tryb graficzny sterownika

wynik: Sprawdzenie zainstalowanego sterownika ekranu.

GetDriverName: string-funkcja

wynik: Nazwa zainstalowanego sterownika ekranu.

GetMaxMode: Integer-funkcja

wynik: Najwi瘯szy numer trybu graficznego zainstalowanego sterownika ekranu.

GetModeName (Tryb: Integer): string-funkcja

Tryb - numer trybu graficznego

wynik: Nazwa wyr騜nionego trybu graficznego zainstalowanego sterownika ekranu.

GetModeRange (Ster: Integer; var Nisryb, WysTryb: Integer)-procedura

Ster - numer sterownika ekranu

NisTryb - najmniejsza warto嗆 numeru trybu graficznego

WysTryb - najwi瘯sza warto嗆 numeru trybu graficznego

wynik: Najmniejszy i najwi瘯szy numer trybu graficznego danego sterownika ekranu.

InitGraph (var Ster, Tryb: Integer; Dost瘼: string)-procedura

Ster - numer sterownika ekranu

Tryb - numer trybu graficznego

Dost瘼 - 軼ie磬a dost瘼u do pliku dyskowego sterownika

wynik: Zainicjowanie modu逝 Graph.

SetGraphMode (Tryb: Integer)-procedura

Tryb - numer trybu graficznego

wynik: Przej軼ie do zadanego trybu graficznego. Procedur� t� nale篡 wywo豉� bezpo鈔ednio po wywo豉niu InitGraph. W ten spos鏏 mo積a przej嗆 od trybu znakowego do graficznego lub zmieni� standardowy tryb graficzny.

GetGraphMode: Integer-funkcja

wynik: Numer bie膨cego trybu graficznego.

RestoreCRTMode-procedura

wynik: Prze陰czenie na tryb znakowy, do momentu wywo豉nia procedury SetGraphMode.

CloseGraph-procedura

Wynik: Zako鎍zenie trybu graficznego.

RegisterBGIFont (Znak: Pointer): Integer-funkcja

Znak - wska幡ik obszaru pami璚i zajmowanej przez wzorce pisma

wynik: Warto嗆 r闚na numerowi kroju pisma. Warto嗆 ujemna oznacza b陰d.

RegisterBGIDriver (Ster: Pointer): Integer-funkcja

Ster - wska幡ik obszaru pami璚i zajmowanej przez program sterownika ekranu

wynik: Warto嗆 r闚na numerowi zainstalowanego sterownika ekranu. Warto嗆 ujemna oznacza b陰d.

lnstallUserDriver (SterNaz: string; Wsk: Pointer): Integer-funkcja

SterNaz - nazwa niestandardowego sterownika ekranu

Wsk - zmienna typu wska幡ikowego (adres sterownika)

wynik: Zainstalowanie sterownika ekranu o nazwie Sternaz.

InstallUserFont (ZnNaz: string): Integer-funkcja

ZnNaz - nazwa pliku dyskowego, zawieraj帷ego czcionki o niestandardowym kroju

wynik: Zainstalowanie niestandardowego kroju czcionek w pami璚i komputera. Zwr鏂ony zostaje numer tego kroju. W przypadku wyst徙ienia b喚du - warto嗆 zero.

SetGraphBufSize (BufRoz: Word)-procedura

BufRoz - rozmiar bufora pami璚i

wynik: Zmiana standardowego rozmiaru bufora graficznego u篡wanego przy wype軟ianiu kontur闚 (standardowo 4 KB).

GraphDefaults-procedura

wynik: Odtworzenie standardowych warto軼i parametr闚 wszystkich operacji graficznych.

GetX: Integer-funkcja

wynik: Warto嗆 wsp馧rz璠nej x pozycji kursora graficznego.

GetY: Integer-funkcja

wynik: Warto嗆 wsp馧rz璠nej y pozycji kursora graficznego.

GetMaxX: Integer-funkcja

wynik: Najwi瘯sza warto嗆 wsp馧rz璠nej x ekranu (wsp馧rz璠na x prawego dolnego rogu).

GetMaxY: Integer-funkcja

wynik: Najwi瘯sza warto嗆 wsp馧rz璠nej y ekranu (wsp馧rz璠na y lewego g鏎nego rogu).

ClearDevice-procedura

wynik: Oczyszczenie okna graficznego i przywr鏂enie wszystkich standardowych warto軼i (definicje palet, linii itd.).

SetViewPort (x1, y1, x2, y2: Integer; Clip: Boolean)-procedura

x1, y1 - wsp馧rz璠ne lewego g鏎nego rogu okna

x2, y2 - wsp馧rz璠ne prawego dolnego rogu okna

Clip = True, je郵i rysunki maj� by� obcinane do rozmiar闚 okna; w przeciwnym przypadku - False.

wynik: Uaktywnienie okna graficznego okre郵onego przez wsp馧rz璠ne jego rog闚 i ustawienie kursora graficznego w punkcie (O, 0), czyli (x1, y1), w lewym g鏎nym rogu

GetViewSettings (var Okno: ViewPortType)-procedura

Okno - rekord okna graficznego

wynik: Parametry bie膨cego okna graficznego.

ClearViewPort-procedura wynik: Oczyszczenie bie膨cego okna graficznego.

SetVisualPage (Strona: Word)-procedura

Strona - numer strony wy鈍ietlanej przez sterownik

wynik: Zmiana strony graficznej na ekranie.

SetActivePage (Strona: Word)-procedura

Strona - numer strony graficznej, na kt鏎ej odbywa si� rysowanie.

wynik: Wykonywanie wszystkich operacji graficznych na stronie o podanym numerze.

PutPixel (x, y: Integer; Kol: Word)-procedura

x, y - wsp馧rz璠ne punktu

Kol - numer koloru

wynik: Wy鈍ietlanie (rysowanie) w zadanym kolorze punktu o okre郵onych wsp馧rz璠nych.

GetPixel (x, y: Integer): Word-funkcja

x, y - wsp馧rz璠ne punktu

wynik: Numer koloru punktu o okre郵onych wsp馧rz璠nych. Warto嗆 zero oznacza kolor t豉.

SetWriteMode (Tryb: Integer)-procedura

Tryb - rodzaj operacji na bitach

wynik: Wyb鏎 rodzaju operacji na bitach pami璚i ekranu (patrz: Sta貫).

LineTo (x, y: Integer)-procedura

x, y - wsp馧rz璠ne punktu b璠帷ego ko鎍em rysowanego odcinka

wynik: Rysowanie odcinka od pozycji kursora graficznego do punktu okre郵onego wsp馧rz璠nymi.

LineRel (dx, dy: Integer)-procedura

dx, dy - przesuni璚ie we wsp馧rz璠nych ekranu

wynik: Rysowanie odcinka od pozycji kursora graficznego do punktu odleg貫go od niego o dx w kierunku poziomym i dy w kierunku pionowym.

MoveTo (x, y: Integer)-procedura

x, y - wsp馧rz璠ne punktu okna

wynik: Przemieszczenie kursora graficznego do punktu o podanych wsp馧rz璠nych (rysunek na ekranie nie ulega zmianie).

MoveRel (dx, dy: Integer)-procedura

dx, dy - przesuni璚ie we wsp馧rz璠nych ekranu

wynik: Przemieszczenie kursora graficznego do punktu odleg貫go od jego pozycji wyj軼iowej o dx w kierunku poziomym i dy w kierunku pionowym.

Line (x1, y1, x2, y2: Integer)-procedura

x1, y1, x2, y2 - wsp馧rz璠ne pocz徠ku i ko鎍a odcinka

wynik: Rysowanie odcinka 陰cz帷ego punkty o podanych wsp馧rz璠nych.

GetLineSettings (Info: LineSettingsType)-procedura

Info - rekord kre郵onych linii

wynik: Rekord okre郵aj帷y rodzaj rysowanej linii.

SetLineStyle (Rodz, Wz鏎, Grub: Word)-procedura

Rodz- rodzaj linii (0-4)

Wz鏎 - wz鏎 linii definiowanej przez u篡tkownika

Grub - grubo嗆 rysowanej linii (1 lub 3)

wynik: Wyb鏎 linii do rysowania

Rectangle (x1, y1, x2, y2: Integer)-procedura

x1, y1 - wsp馧rz璠ne lewego g鏎nego rogu

x2, y2 - wsp馧rz璠ne prawego dolnego rogu

wynik: Rysowanie prostok徠a, kt鏎ego przeciwleg貫 wierzcho趾i to punkty o podanych wsp馧rz璠nych.

Bar (x1, y1, x2, y2: Integer)-procedura

x1, y1 - wsp馧rz璠ne lewego g鏎nego rogu

x2, y2 - wsp馧rz璠ne prawego dolnego rogu

wynik: Wype軟ianie prostok徠a, kt鏎ego przeciwleg貫 wierzcho趾i maj� zadane wsp馧rz璠ne. Kontury prostok徠a nie s� rysowane.

Bar3D (x1, y1. x2, y2: Integer; G�, Szczyt: Boolean)-procedura x1, y1 - wsp馧rz璠ne lewego g鏎nego rogu przedniej 軼iany prostopad這軼ianu

x2, y2 - wsp馧rz璠ne prawego dolnego rogu przedniej 軼iany prostopad這軼ianu

G� - d逝go嗆 prostopad這軼ianu (g喚boko嗆 rzutu)

Szczyt = True oznacza, 瞠 g鏎na 軼iana prostopad這軼ianu nie b璠zie rysowana

wynik: Rysowanie prostopad這軼ianu, kt鏎ego przednia 軼iana jest okre郵ona wsp馧rz璠nymi przeciwleg造ch rog闚. G喚boko嗆 rzutu jest liczona w punktach ekranu. Ostatni parametr okre郵a, czy g鏎na 軼iana prostopad這軼ianu ma by� widoczna czy te� nie.

DrawPoly (IIPkt: Word; var TabPkt)-procedura

IIPkt - liczba punkt闚 wyznaczaj帷ych 豉man�

TabPkt - tablica rekord闚 wsp馧rz璠nych punkt闚

wynik: Rysowanie 豉manej okre郵onej przez kolejne punkty o podanych wsp馧rz璠nych.

FilIPoly (lIPkt: Word; var TabPkt)-procedura

IIPkt - liczba wierzcho趾闚 wieloboku

TabPkt - tablica rekord闚 wsp馧rz璠nych wierzcho趾闚

wynik: Rysowanie wieloboku okre郵onego przez kolejne punkty o podanych wsp馧rz璠nych i wype軟ienie go wzorem do wype軟iania kontur闚.

GetFillSettings (var Wypinfo: FilISettingsType)-procedura

Wypinfo - rekord opisu wzoru stosowanego do wype軟iania kontur闚

wynik: Rekord okre郵aj帷y u篡wany wz鏎 wype軟iania kontur闚 (wz鏎 i kolor).

GetFillPattern (var Wyp: FilIPatternType)-procedura

Wyp - rekord wzoru wype軟iania kontur闚

wynik: Bie膨cy, zdefiniowany przez u篡tkownika, wz鏎 wype軟iania kontur闚.

SetFillStyle (Num, Kol: Word)-procedura

Num - numer wzoru (patrz: Sta貫)

Kol - numer koloru (patrz: Sta貫)

wynik: Wyb鏎 danego wzoru i koloru do wype軟iania kontur闚.

SetFillPattern (Wyp: FilIPatternType; Kol: Word)-procedura

Wyp - tablica wzoru wype軟iania kontur闚

Kol - numer koloru (patrz: Sta貫)

wynik: Zdefiniowanie wzoru wype軟iania kontur闚 wg wymaga� u篡tkownika. Wz鏎 jest zdefiniowany w zmiennej typu FilIPatternType, b璠帷ej o鄉ioelementow� tablic� typu Byte. Ka盥y z element闚 tablicy, zapisany w postaci dw鎩kowej, okre郵a istnienie b康� brak 鈍iec帷ego punktu na ekranie. Cyfra 1 odpowiada punktowi 鈍iec帷emu, O - wygaszonemu.

FloodFill (x, y: Integer; Ob: Word)-procedura

x, y - wsp馧rz璠ne punktu znajduj帷ego si� w danym obszarze

Ob - numer koloru konturu

wynik: Wype軟ienie (bie膨cym wzorem) obszaru zawieraj帷ego punkt o podanych wsp馧rz璠nych i ograniczenie go konturem w podanym kolorze.

Arc xy, y: Integer; AlfaP, AlfaK, r: Word)-procedura

x, y - wsp馧rz璠ne 鈔odka 逝ku okr璕u

AlfaP, AlfaK - k徠y (wierzcho貫k w punkcie (x, y)) okre郵aj帷e pocz徠ek i koniec 逝ku (w stopniach)

r - promie� 逝ku

wynik: Rysowanie 逝ku okr璕u o 鈔odku w punkcie o podanych wsp馧rz璠nych i promieniu r, wyznaczonego przez zadane k徠y.

GetArcCoords (var Info: ArcCoordsType)-procedura

Info - rekord wsp馧rz璠nych 逝kowych

wynik: Wsp馧rz璠ne 逝ku narysowanego w wyniku ostatniego wywo豉nia procedury Arc (鈔odek, pocz徠ek, koniec).

Circle (x, y: Integer; r: Word)-procedura

x, y - wsp馧rz璠ne 鈔odka okr璕u

r - promie� okr璕u

wynik: Rysowanie okr璕u o 鈔odku w punkcie o podanych wsp馧rz璠nych i danym promieniu.

Ellipse (x, y: tnteger; AlfaP, AlfaK, xr, yr: Word)-procedura

x, y - wsp馧rz璠ne 鈔odka 逝ku elipsy

AlfaP, AlfaK - k徠y (wierzcho貫k w punkcie (x, y)) okre郵aj帷e pocz徠ek i koniec 逝ku (w stopniach)

xr, yr - po堯wki d逝go軼i osi wielkiej i ma貫j

wynik: Rysowanie 逝ku elipsy o 鈔odku w punkcie o podanych wsp馧rz璠nych i po堯wkach osi xr i yr, wyznaczonego przez podane k徠y.

FillEllipse (x, y: Integer; xr, yr: Word)-procedura

x, y - wsp馧rz璠ne 鈔odka elipsy

xr, yr- po堯wki d逝go軼i osi wielkiej i ma貫j

wynik: Rysowanie wype軟ionej elipsy o zadanym 鈔odku i po堯wkach osi.

GetAspectRatio (var Xasp, Yasp: Word)-procedura

Xasp, Yasp - rozdzielczo嗆 ekranu w kierunku x i y

wynik: Bie膨ca rozdzielczo嗆 ekranu.

SetAspectRatio (Xasp, Yasp: Word)-procedura

Xasp, Yasp - rozdzielczo嗆 ekranu w kierunku x i y

wynik: Zmiana rozdzielczo軼i ekranu w kierunku poziomym i pionowym.

PieSlice (x, y: Integer; AlfaP, AlfaK, r: Word)-procedura

x, y - wsp馧rz璠ne 鈔odka 逝ku okr璕u

AlfaP, AlfaK - k徠y (wierzcho貫k w punkcie (x, y)) okre郵aj帷e pocz徠ek i koniec 逝ku (w stopniach)

r - promie� 逝ku

wynik: Rysowanie i wype軟ianie wycinka ko豉 o 鈔odku w danym punkcie i promieniu r, wyznaczonym przez zadane k徠y (patrz: Arc).

Sector (x, y: Integer; AlfaP, AlfaK, xr, yr: Word)-procedura

x, y - wsp馧rz璠ne 鈔odka 逝ku elipsy

AlfaP, AlfaK - k徠y (wierzcho貫k w punkcie (x, y)) okre郵aj帷e pocz徠ek i koniec 逝ku (w stopniach)

xr, yr - po堯wki d逝go軼i wielkiej i ma貫j osi elipsy

wynik: Rysowanie wype軟ionego wycinka elipsy o 鈔odku w danym punkcie i danych po堯wkach osi, wyznaczonego przez zadane k徠y.

SetBkColor (Kol: Word)-procedura

Kol - numer koloru t豉

wynik: Zmiana bie膨cego numeru koloru t豉 na zapami皻any pod numerem kol.

SetColor (Kol: Word)-procedura

Kol - numer koloru kursora graficznego

wynik: Zmiana bie膨cego numeru koloru kursora graficznego na zapami皻any pod numerem kol.

GetBkColor: Word-funkcja

wynik: Numer bie膨cego koloru t豉.

GetColor: Word-funkcja

wynik: Numer bie膨cego koloru kursora graficznego.

SetAllPalette (var Paleta: PaletteType)-procedura

Paleta - tablica kolor闚 w palecie

wynik: Zmiana kolor闚 w palecie wed逝g tablicy (liczba i kolejno嗆 kolor闚).

SetPalette (KolNum: word; Kol: Shortint)-procedura

KolNum - pozycja koloru w palecie

Kol - numer koloru

wynik: Zmiana koloru na danej pozycji w palecie na kolor o numerze kol.

GetPalette (var Paleta: PaletteType)-procedura

Paleta - tablica kolor闚 w palecie

wynik: Stosowana paleta kolor闚.

GetPaletteSize: Integer-funkcja

wynik: Liczba kolor闚 bie膨cej palety.

GetDefaultPalette(var Palette: PaletteType)-procedura

wynik: Dane dotycz帷e standardowej palety kolor闚.

GetMaxColor: Word-funkcja

wynik: Najwi瘯szy numer koloru dost瘼ny w danym trybie graficznym.

SetRGBPalette (KNum, Czer, Ziel, Nieb: Integer)-procedura

KNum - pozycja koloru w palecie sterownika IBM8514

Czer, Ziel, Nieb - sk豉dowe: czerwona, zielona i niebieska danego koloru

wynik: Zmiana koloru w palecie sterownika IBM9514 na kolor okre郵ony 陰cznie przez Czer, Ziel, Nieb.

ImageSize (x1, y1, x2, y2: Integer): Word-funkcja

x1, y1 - wsp馧rz璠ne lewego g鏎nego rogu prostok徠nego obszaru ekranu

x2, y2 - wsp馧rz璠ne prawego dolnego rogu prostok徠nego obszaru ekranu

wynik: Liczba bajt闚 potrzebnych do przechowania obrazu znajduj帷ego si� w obszarze okre郵onym danymi wsp馧rz璠nymi

. Getlmage(x1, y1, x2, y2: Integer; var Mapa)-procedura

x1, y1 - wsp馧rz璠ne lewego g鏎nego rogu prostok徠nego obszaru ekranu

x2, y2 - wsp馧rz璠ne prawego dolnego rogu prostok徠nego obszaru ekranu

Mapa - dowolna zmienna

wynik: Przekazanie do kom鏎ek pami璚i, zajmowanych przez warto嗆 zmiennej mapa, obrazu znajduj帷ego si� w obszarze okre郵onym danymi wsp馧rz璠nymi.

Putlmage (x, y: Integer; var Mapa; Tryb: Word)-procedura

x, y - wsp馧rz璠ne lewego g鏎nego rogu prostok徠nego obszaru ekranu

Mapa - dowolna zmienna

Tryb - rodzaj operacji na bitach pami璚i ekranu

wynik: Przekazanie na ekran obrazu zapami皻anego za pomoc� Getlmage (lewy g鏎ny r鏬 ekranu b璠zie si� pokrywa� z zadanym punktem). Obraz zostanie odtworzony w spos鏏 okre郵ony przez parametr tryb.

SetTextJustify (Hor, Ver: Word)-procedura

Hor, Ver - po這瞠nie tekstu w kierunku poziomym i pionowym, wzgl璠em pozycji kursora graficznego

wynik: Ustalenie sposobu wyr闚nywania tekstu w poziomie (na podstawie Hor} i w pionie (na podstawie Ver).

SetTextStyle (Znak, Kier, Roz: Word)-procedura

Znak - numer kroju pisma

Kier - kierunek wyprowadzania tekstu

Roz - rozmiar znak闚

wynik: Tekst wyprowadzony zgodnie z zadanymi parametrami.

GetTextSettings (var Info: TextSettingsType)-procedura

Info - rekord sposobu wyprowadzania tekstu

wynik: Rekord z bie膨cymi parametrami okre郵aj帷ymi kr鎩 pisma i spos鏏 wyprowadzania tekstu.

OutText(Tekst: string)-procedura

Tekst - ci庵 znak闚 (napis)

wynik: Rysowanie danego ci庵u znak闚 w spos鏏 okre郵ony za pomoc� procedury SetTextJustify.

OutTextXY (x, y: Integer; Tekst: string)-procedura

x, y - wsp馧rz璠ne punktu, wzgl璠em kt鏎ego odbywa si� justowanie

Tekst - ci庵 znak闚 (napis)

wynik: Rysowanie danego ci庵u znak闚 z uwzgl璠nieniem justowania wzgl璠em punktu (x, y).

SetUserCharSize (MultX, DivX, MultY, DivY: Word)-procedura

MultX, DivX - licznik i mianownik wsp馧czynnika zmiany szeroko軼i znaku (MultX/DivX)

MultY, DA/Y - licznik i mianownik wsp馧czynnika zmiany wysoko軼i znaku (MultY/DivY)

wynik: Zmiana szeroko軼i i wysoko軼i znak闚 w stosunku do przyjmowanych w procedurze SetTextStyle.

TextHeight (Tekst: string): Word-funkcja

Tekst - ci庵 znak闚 (napis)

wynik: Wysoko嗆 wyprowadzanego ci庵u znak闚, podana w punktach ekranu, z uwzgl璠nieniem bie膨cego sposobu wyprowadzania tekst闚.

TextWidth (Tekst: string): Word-funkcja

Tekst - ci庵 znak闚 (napis)

wynik: Szeroko嗆 wyprowadzanego ci庵u znak闚, podana w punktach ekranu, z uwzgl璠nieniem bie膨cego sposobu wyprowadzania tekst闚.


Adam 鑿ik豉
NEWSLETTER
Chcesz by� zawsze na bie膨co?
Zapisz si�!
WP.PL
LITERATURA
INNE [?]
Katalog WWW
Sponsor
On-Line: 5
stat4u
Wszystkie prawa zastrze穎ne © 2001-2002 Programik.com