Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
14. Mai 2018
Vielleicht noch als Hinweis:
Weder die verknüpfende Baumstruktur, noch die einzelnen Personen-Klassen sollten irgendwelche Methoden haben die was grafisches machen, wie Draw zum Beispiel.
Stattdessen baue dir eine weitere Klasse, z.B. namens TGraphBuilder, der du einen Canvas/Bitmap gibst und dazu die Personenliste, die du darstellen möchtest.
Schon wird vieles klarer und einfacher.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
14. Mai 2018
Ich möchte dir nicht zu Nahe treten, aber vielleicht ist das Vorhaben auch etwas über deinen Möglichkeiten.
Fang mal ganz klein an. Du brauchst eine Datenstruktur, die erstmal Eltern und Kinder aufnehmen kann. Die haben wir gegeben.
Diese füllst du erstmal mit Daten und dann machen wir den allereinfachsten Fall:
Wir haben zwei Elternteile und meinetwegen vier Kinder. Schreibe auf den Canvas...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
14. Mai 2018
Ich betreibe Ahnenforschung seit 2013 und verstehe also das, was du da machen willst.
Mal abgesehen von der Datenstruktur, die mit dem beispielhaften TFamilyTree und TPerson erstmal völlig ausreichend ist (Adoptivkinder und andere Spezialfälle würde ich mir wirklich für später aufsparen), was genau bereitet dir Kopfzerbrechen?
Das reine Zeichnen an und für sich, also Kästchen in der und der...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
5. Aug 2015
Was hast du denn bisher?
Zeig mal Quelltext!
Der Ansatz von Namenloser mit den Layern ist eigentlich ganz knuffig.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by TiGü,
5. Aug 2015
Ich denke auch, dass du da den falschen Ansatz wählst.
Wenn überhaupt, wird ein Teilbereiches des Baumes auf einen Canvas gemalt (ggf. über eine dritte Klasse), aber sollte sich nicht selber zeichnen, indem es von Canvas abgeleitet ist.
Warum eigentlich diese Beschränkung auf 800 x 600 Pixel in der Ausgabe?
Um mir Ideen zu holen, würde ich immer bei den großen Playern schauen, wie die...