Neuere

Reale und nicht reale Leute
von Veria am 08.01.2014 - 10:09 in Projekt FantasticFamilyTree

Neues Feature: Echte Leute und mythologische Leute können verwandt sein. Selbstverständlich allerdings kann es sich bei so einer Verbindung nur um eine fiktive Verwandtschaft handeln, also alles ausser genetisch.
Falls jemand reale Götter hat, dann fallen sie in diesem Sinne eben nicht unter mythologisch, sondern sind eben echt.

Attributismus
von Veria am 05.12.2013 - 15:43 in Projekt FantasticFamilyTree

Okay, das ging schnell.
Es gibt drei verschiedene Attributtypen:
~ Personenattribute (z.B. Wohnort)
~ Relationsattribute (z.B. Hochzeitsdatum)
~ Attribute, die sowohl zu einer Person, als auch zu einer Relation gehören (z.B. Adoptionsdatum)
Das funktioniert auch alles schon - und natürlich können die Attributtypen ganz frei definiert werden.

Alles grün!
von Veria am 04.12.2013 - 13:34 in Projekt FantasticFamilyTree

Tut das gut, wenn JUnit einen grünen Balken produziert und keinen roten.
Die verschiedensten Cardinality-Werte werden jetzt berücksichtigt, man kann Relationen definieren, wie man lustig ist und bei der tatsächlichen Verwendung einer Relation wird alles überprüft, was da an Abhängigkeit gegeben ist.

Damit kann ich mich vorerst mal von den Relationen ab- und den Attributen zuwenden. Bisher funktionieren ja nur die Spezialattribute Geschlecht und Spezies, sowie das Anfangs- und das Enddatum der Person. Und mit dem Anfangsdatum ist hier nicht zwangsläufig das Geburts- oder Schlupfdatum gemeint, da kann auch (aus meiner Sicht sogar bevorzugt) das Zeugungsdatum rein - aber das weiss man halt nicht immer.

Also dann, auf zu den Attributen - natürlich frei definierbar, ist ja klar.

XML-Definitionen und so
von Veria am 29.11.2013 - 09:06 in Projekt FantasticFamilyTree

Verschiedene Welten haben verschiedene Familienstrukturen, durchaus auch dahingehend, dass es nicht zwei Eltern gibt oder ganz andere Geschlechter.
Das lässt sich jetzt vom Benutzer definieren, und zwar mit XML.

Hier mal als Beispiel die Definitionen für unsere Welt:

<species>
<species name="Mensch">
<sex id="weiblich" pregduration="280" sdev="10" minchildpp="1" maxchildpp="5"/>
<sex id="männlich"/>
</species>
</species>
<sexes>
<sex id="weiblich">
<species id="Mensch" lifeexpectancy="30295" sdev="2555"/>
</sex>
<sex id="männlich">
<species id="Mensch" lifeexpectancy="28470" sdev="2555"/>
</sex>
</sexes>
<relations>
<relation name="Kind-Eltern" genetic="true" identical="false" related="true" direction="vertical_up" cardinalitysecondnode="1"/>
<relation name="Kind-Eltern adoptiert" genetic="false" identical="false" related="true" direction="vertical_up"/>
<relation name="Ehepartner" genetic="false" identical="false" related="true" direction="horizontal"/>
<relation name="Zwilling" genetic="true" identical="true" related="true" direction="none"/>
</relations>
<relationnodetypes>
<relationnodetype relation="Kind-Eltern" node="1">
<group>
<subnode sex="männlich" cardinality="1">
<subnode sex="weiblich" cardinality="1">
</group>
</relationnodetype>
<relationnodetype relation="Kind-Eltern adoptiert" node="1">
<group>
<subnode sex="männlich" cardinality="1">
<subnode sex="weiblich" cardinality="1">
</group>
<group>
<subnode sex="männlich" cardinality="2">
</group>
<group>
<subnode sex="weiblich" cardinality="2">
</group>
</relationnodetype>
</relationnodetypes>

Wie möglicherweise gleich auffällt sind hier Schwangerschaftsdauer und Lebenserwartung samt Standardabweichung angegeben. Im Endeffekt stimmt das aber nicht wirklich mit der Standardabweichung, ich schneide den Bereich der generierten Gauss-Zufallszahlen nämlich einfach ab - nach oben bei Erwartungswert+Standardabweichung, nach unten bei Erwartungswert-2*Standardabweichung.
Falls jemand eine bessere und trotzdem praktikable Variante kennt, bitte sagen.

Es lebt noch/wieder
von Veria am 07.07.2012 - 21:41 in Projekt FantasticFamilyTree

Namen lassen sich jetzt ändern, nach einer fürchterlichen Odyssee durch LayoutManager, Ausrichtungen, Panels und Components, die der Meinung sind, selber zu wissen, wie gross sie sein sollen. Dadurch, dass es nämlich mehrere Sets an Namen gibt, hat auch die GUI einen Haufen zu tun, um das so darzustellen, dass ich die geänderten Daten nachher wieder herausfitzeln kann.
Java hat so seine Inpraktikabilitäten ... in so manch anderer Sprache wäre dieser Teil des Programms sehr viel schneller erledigt gewesen.

Ältere