PDA

View Full Version : bsp 4


bimbo
30-11-2002, 16:02
also, eine kleine zusammenfassung meiner erkenntnisse:

1. man brauch NUR die funktionen die schon leer vorgegeben sind implementieren, nicht alle aus dem buch, die sind schon in der CG1EdgeList drinnen.

2. das edges[] aus dem Buch wird eine CG1EdgeList[] array, das active ein einfaches CG1EdgeList.

3. im BuildedgeList braucht man kein yPrev und kein yNext.

4. das wars, den rext einfach ausm buch abschreiben.

12gauge
30-11-2002, 16:08
Zu 2....wird daraus nicht eher ein CG1Edge[] array? Sonst kann man ja in der buildActivelist kein p = edges[scan].next schreiben, da diese Varaible ja nur in der CG1Edge vorhanden ist

tschurlo
30-11-2002, 16:59
Wieso braucht man kein yPrev und yNext??

bimbo
30-11-2002, 17:26
@12gauge

kannst du schon machen, aber die ganzen funktionen wie insert edge und update musst dann auch selber machen.

das macht man so: p = edgeList[scan].getHead();

@tschurlo

kann ich auch net genau sagen ich hab den code mal ohne dem komischen makeEdgeRec und yNext geschrieben und so gets auch:

if (v1[1] != v2[1])
{
if (v1[1] < v2[1])
{
edgeList[v1[1]].insert(v2[1] - 1,(double)v1[0], (double)(v2[0] - v1[0])/(double)(v2[1] - v1[1]));
...

DancingComet
30-11-2002, 17:26
muss man das inserten der edge mit einer schleife zwischen dem untersten und obersten y machen? wenn ich das nicht mache, funktionierts bei mir nicht...

bimbo
02-12-2002, 12:08
ich weis zwar net genau was du meinst, aber ich hab den code EXAKT uas dem buch abgeschrieben, bis auf das kleine stückchen, ohne dem yprev, wenn ich das richtig seh, werden die edges durch die CG1Eddgelist schon auf die richtige Art und weise eingefügt, ahb mir aber, da es so bei mir funkt am wochenend net des kopferl zerbrochen, warum des geht.