P4 - triangle löschen

vuthanhdong
Erstie
Erstie
Beiträge: 19
Registriert: 4. Okt 2010 00:46
Kontaktdaten:

P4 - triangle löschen

Beitrag von vuthanhdong »

Wie kann man Referenz zu einem Dreieck löschen wenn Klasse Triangle nur get-Methode hat ?

Auch bei Triangulation braucht man so eine Methode wie setOppositeTriangle (in Triangle-Klasse) um die Verbindung zwischen Dreiecken zu herstellen oder ?

Gruß

hat sich erledigt, das macht man per Edge ??

Benutzeravatar
Bug
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 161
Registriert: 12. Okt 2011 10:28

Re: P4 - triangle löschen

Beitrag von Bug »

Genau, die Referenzen gehören immer zu einer Edge. Und über diese können sie dann (mit setT1 und setT2) bearbeitet werden.

Zudem ist es in einem Triangle auch möglich, mit setEdges neue Kanten zu setzen.
Ophasen-Leitung Winter 2014/15, Sommer 2015, Sommer 2016 & Winter 2016/17
TGdI Tutor WiSe 14/15, 13/14 und 12/13
GdI II Betreuung Praktika SoSe 13
CMS Tutor SoSe 13

Schnell
Nichts ist wie es scheint
Beiträge: 23
Registriert: 11. Feb 2010 22:27

Re: P4 - triangle löschen

Beitrag von Schnell »

Laut der Aufgabe reicht es ja nur die referenzen von edges auf triangles zu nullen die gelöscht werden sollen. Das mache ich, raus kommt dann aber:
edges before: 6
[Edge((1.0, 1.0) - (4.0, 1.0) T1: 1183978228 T2: null), Edge((1.0, 1.0) - (2.0, 3.0) T1: 1183978228 T2: 688881353), Edge((1.0, 1.0) - (2.0, 5.0) T1: 688881353 T2: null), Edge((2.0, 3.0) - (2.0, 5.0) T1: 688881353 T2: 944558894), Edge((4.0, 1.0) - (2.0, 5.0) T1: 944558894 T2: null), Edge((2.0, 3.0) - (4.0, 1.0) T1: 1183978228 T2: 944558894)]
edges afterwards: 3
[Edge((1.0, 1.0) - (4.0, 1.0) T1: 1183978228 T2: null), Edge((1.0, 1.0) - (2.0, 3.0) T1: null T2: null), Edge((2.0, 3.0) - (4.0, 1.0) T1: null T2: null)]

Es verschwinden also edges die ich eigtl nicht anfasse und edges bei denen ich die triangles nulle bleiben?

Benutzeravatar
Bug
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 161
Registriert: 12. Okt 2011 10:28

Re: P4 - triangle löschen

Beitrag von Bug »

Ich glaube du löscht falsche Referenzen. Dadurch sind die benachbarten Dreiecke nicht mehr erreichbar, es bleibt nur das Startdreieck (3 Kanten), auch wenn dort die Kanten fehlerhafte Referenzen (keine Referenz auf das beinhaltende Dreieck) enthalten.

Edges, die zu den benachbarten Dreiecken gehören, sind natürlich nicht mehr in der Liste, weil ja kein Pfad zu ihnen gefunden werden kann. Das gilt auch dann, wenn die Edges nicht geändert wurden.

Da du aber über root eine Referenz auf dieses Dreieck hast und dieses Dreieck ja eine Liste mit Kanten enthält, bleiben (genau) diese trotzdem in der Liste.
Ophasen-Leitung Winter 2014/15, Sommer 2015, Sommer 2016 & Winter 2016/17
TGdI Tutor WiSe 14/15, 13/14 und 12/13
GdI II Betreuung Praktika SoSe 13
CMS Tutor SoSe 13

tmuecksch
BASIC-Programmierer
BASIC-Programmierer
Beiträge: 123
Registriert: 19. Apr 2013 10:51

Re: P4 - triangle löschen

Beitrag von tmuecksch »

Schnell hat geschrieben:Es verschwinden also edges die ich eigtl nicht anfasse und edges bei denen ich die triangles nulle bleiben?
Ich habe das Selbe Problem im Moment (und ich bin bin 1000%ig sicher die korrekten Referenzen zu löschen). Hast Du Deinen Fehler gefunden? Vielleicht mache ich ja den Selben Fehler...

Antworten

Zurück zu „Archiv“