next up previous contents
Next: Motivatie Up: Facultatea de Calculatoare Proiect Previous: Cuprins   Cuprins

Introducere

Acest proiect de diploma este format din patru parti:

Cele patru parti pot coopera impreuna, permitand realizarea unor desene pe hartie cu ajutorul calculatorului. Algoritmii care realizeaza unele desene complexe nu sunt implementati, ci este oferit doar suportul (eficient) ce permite implementarea lor ulterioara.

Proiectul poarta denumirea plint, care este o abreviere a sintagmei englezesti Plotter Language INTerpretor, care s-ar traduce: Intepretor pentru un limbaj de plotter. Denumirea s-a ales avand in vederea asemanarea cu verbul print din engleza, care se stie ca inseamna a tipari; deci proiectul are ca rezultat asigurarea unui mod de tiparire vectorial, in unele privinte superior celui rasterizat (al unor imprimante clasice):

WITH THIS TOOL, YOU DON'T JUST PRINT, BUT PLINT !

Dispozitivul mecanic si interfata electronica alcatuiesc impreuna dispozitivul electromecanic numit plotter, care din punctul de vedere al interpretorului este cunoscut ca plotterul plint.

Intre acest dispozitiv si interpretor exista o independenta, in sensul ca interpretorul poate folosi ca ``plotter'' si alt dispozitiv, cum ar fi o fereastra X1.2, si pe de alta parte dispozitivul plint poate fi comandata si fara interpretor.

Driverul este de asemenea dezvoltat independent de interpretor, insa dependent de plotter. Exista insa diferite moduri in care se poate realiza comanda finala pe portul paralel, astfel ca exista mai multe tipuri de drivere pentru acelasi plotter.

Legatura dintre interpretor si plotter se face prin intermediul unor fisiere antet/sursa C, numite primitives.h, respectiv primitives.c. Acestea au rolul de a descrie/implementa colectia de operatii grafice vectoriale primitive, precum si unele de control.
Prin urmare, a crea o implementare primitives.c inseamna a crea un ``plotter'', din punct de vedere al interpretorului.
Se poate deci spune ca dispozitivul ``plotter'' e un caz particular al unui ``plotter'' suportat de interpretor.

Limbajul de programare si interpretorul au fost dezvoltate in paralel, asa incat se confunda, adica se poate spune ca interpretorul determina limbajul. Totusi, limbajul exista ca entitate separata si independenta; se poate descrie formal lexicul, gramatica si semantica acestuia, independent de orice implementare concreta intr-un interpretor/compilator, si oricine poate face un interpretor/compilator pe baza acestor descrieri.
Prin urmare, in continuarea acestei documentatii se va incepe mai intai cu descrierea limbajului, apoi a unei implementari a acestuia, interpretorul plint, si pe urma a unui plotter particular, anume plint.


Subsections
next up previous contents
Next: Motivatie Up: Facultatea de Calculatoare Proiect Previous: Cuprins   Cuprins
Sebastian Glita 2002-06-19