Documente Academic
Documente Profesional
Documente Cultură
public static String SameLine = "este aceeasi linie" un mesaj de eroare daca 2
FunctionLine sunt ale aceleasi linii.
public FunctionLine(float x1, float y1, float x2, float y2) construieste si
initializeaza functia liniei care trece prin punctele de coordonate (x1,y1) si (x2,y2).
public float calc(Point point) calculeaza valoarea functiei pentru punctul point.
Implementeaza o linie poligonala. Daca primul punct este egal cu ultimul atunci linia
poligonala este un poligon.
public boolean isClosed() testeaza daca aceasta linie poligonala este un poligon
(daca este inchisa)
public Point getPoint(int index) –returneaza punctul cu indexul index din aceasta
linie poligonala, daca el exista, null in caz contrar .
public Point getLastPoint() returneaza primul punct din aceasta linie poligonala.,
daca el exista, null in caz contrar .
public Point getFirstPoint() returneaza ultimul punct din aceasta linie poligonala.,
daca el exista, null in caz contrar .
public int getNumberOfPoints() returneaza numarul de puncte ce se afla pe
aceasta linie poligonala.
public int getNumberOfSegments() returneaza numarul de segmente ce se afla pe
aceasta linie poligonala.
public Segment getSegment(int index) returneaza segmentul cu indexul index din
aceasta linie poligonala., daca el exista, null in caz contrar .
public void insertPoint(Point point, Point point1, Point point2) insereaza punctul
point intre punctele point1, point2 in linia poligonala.
public Vector getNotProperPoints(Vector _Points) returneaza un vector ce contine
punctele ce nu sint continute in aceasta linie poligonala dintre punctele _Points.
public boolean equals(Object o) determina daca doua linii poligonale sunt identice
adica daca au puctele cu aceleasi coordonate;
public static double dist(double x1, double y1, double x2, double y2) returneaza
distanta dintre punctele de cooardonate (x1,y1) si respectiv (x2,y2)
private static double dist(Point point, Segment segm) returneaza distanta dintre
punctul point si segmentul segm.
public int hashCode() intoarce valoarea hash code pentru acest obiect . Aceasta
metoda este folosita in tabele de dispersie ca cea implementata in clasa
java.util.Hashtable
public Vector getPoints() returneaza un obiect de tipul Vector care cuprinde toate
punctele din acest obiect.
Clasa MultiPolyLine
public void scale(double alfa) scaleaza toate liniile poligonale ale acestei multimi
cu factorul alfa
public String toString() returneaza o reprezentarea String a acestui obiect
Clasa PolyLineCreater
public LinePoint(int _x, int _y, Point _point) construieste si initializeaza un obiect
de tipul LinePoint de coordonate(_x,_y) poligonala. multipla _point.
public boolean goingDown() testeaza daca punctul extrem este mai jos pe axa Oy
public boolean goingUp( ) testeaza daca punctul extrem este mai sus pe axa Oy
Clasa LinePoints
public Hashtable Points = new Hashtable(); este folosit la retinerea punctelor cit
si a tipului acestora (daca sunt interioare sau pe una din liniile poligonale)
private int minX coordonata maxima pe axa Ox a punctelor aflate in aceasta
structura
private int minY coordonata minima pe axa Oy a punctelor aflate in aceasta
structura.
private int maxX coordonata maxima pe axa Ox a punctelor aflate in aceasta
structura.
private int maxY coordonata maxima pe axa Oy a punctelor aflate in aceasta
structura.
private boolean isNew = true; semnifica daca este true ca obiectul nu contine nici
un punct si false in caz contrar.
public AreaPointType getAreaPoint(Point point) returneaza tipul punctului point
public void updatePoint(Point point)- aduga punctul point.
private boolean isOnBorder(Point point) testeaza daca punctul point este pe
granita.
public void makeBorder() determina punctele de pe granite.
private void updateMinMax(Point point) updateaza minX,minY,maxX,maxY
daca la multime s-a adaugat punctul point
public boolean isInnerPoint(Point point) determina daca punctul point este in
interiorul suprafetei.
public void putYLineSegment(int line, int xstart, int xfinish) adauga punctele
intre punctual de coordinate (xstart,line) si respectiv (ystart,line).
public void putLinePoints(LinePoints linePoints) pune punctele de pe acesta linie
de puncte linePoints.
public void addArea(MultiPolyLine multiPolyLine) aduga punctele de pe
suprafata aflata intre liniile poligonale ale obiectului multiPolyLine.
public boolean isBorderSegment(Segment segment) testeaza daca segmentul
segment se afla pe granite.
Vector segmente = new Vector(); Vector in care se vor depozita temporar toate
segmentele
public boolean hasPointInAxe(Point point) testeaza daca figura are punctul point
ca unul dintre punctele de pe axa de simetrie.
Clasa Nod
public int getLatura() returneaza raza cercului prin care am reprezantat nodul.
static public void resetCounter() reseteaza contorul de indici.
public boolean isThere(int x,int y)- testeaza daca punctual de coordonate x,y se
afla pe reprezentarea grafica a nodului.
public void paint(Graphics g) deseneaza nodul curent .
Clasa Arc
static protected double dist(int x1,int y1,int x2,int y2) return distanta de la punctul
de coordonate (x1,y1)la punctul (x2,y2).
Clasa Arc_Label
public Vector getNoduri() returneaza nodurile acestui graf intr-un obiect de tipul
Vector.
public int getNumberOfNoduri() returneaza numarul de noduri ale acestui graf.
public int getNumberOfArce returneaza numarul de arce ale acestui graf.
public Nod getNod(int index) returneaza nodul avand indexul index in lista de
noduri.
public Arc_Label getArc(int index) returneaza arcul avand indexul index in lista de
arcuri.
String arcStr=arc.toString().substring(arc.getName().length());
for(int i=0;i<Arce.size();i++)
{ Arc_Label auxArc=( Arc_Label) Arce.elementAt(i);
String auxArcStr=auxArc.toString().substring(auxArc.getName().length());
if (arcStr.equals(auxArcStr) )
return true;
}
return false;
}
public String [] getNoduriStr() returneaza numele tuturor nodurilor din acest graf
intr-un obiect de tipul Vector.
public String[] getNoduriWithOut(Nod nod) returneaza numele tuturor nodurilor
din acest graf intr-un obiect de tipul Vector, exceptand nodul nod.
Pachetul Xml
Acest pachet contine clase pentru scrierea si citirea unui graf dintr-un
fisier xml avind un format special.
Clasa GrafSAXHandler
Implementeaza interfata ContentHandler pentru citi informatiile din fisierul xml
Clasa XMLWriter
Implementeaza o clasa care scrie un graf intr-un fisier xml.
protected void writeArce() throws IOException scrie toate arcele grafului Arunca
o exceptie in cazul in care se intampla o eroare la scrierea in fisier.
protected void writeBody() throws IOException Arunca o exceptie in cazul in
care se intampla o eroare la scrierea in fisier.
protected void writeFooter()throws IOException Arunca o exceptie in cazul in
care se intampla o eroare la scrierea in fisier.
public void saveXML() throws IOException Arunca o exceptie in cazul in care se
intampla o eroare la scrierea in fisier.
protected String getTabForArce() returneaza reprezentarea string a alinierii tagului
corespunzator multimii arcelor.
protected String getTabForArc() returneaza reprezentarea string a alinierii tagului
corespunzator unui arc
protected String getTabForNod()returneaza reprezentarea string a alinierii tagului
corespunzator unui nod.
protected String getTabForNoduri()returneaza reprezentarea string a alinierii
tagului multimii nodurilor.
protected String getTabForLabels()returneaza reprezentarea string a alinierii
tagului corespunzator multimii etichetelor unui arc.
protected String getTabForLabel()returneaza reprezentarea string a alinierii tagului
corespunzator unei etichete.
protected String getTabForGraf()returneaza reprezentarea string a alinierii tagului
corespunzator graf-ului..