canvasLife

can­vas­Li­fe ist ein Fork von Lan­ce Con­can­non in Java­script imple­men­tier­tes GameO­f­Li­ve-Pro­gramm (via Tuto­ri­al). Sei­ne ver­bes­ser­te Ver­si­on auf JSFidd­le ist die Grund­la­ge für can­vas­Li­fe.

Versionshistorie von canvasLife

DatumName/VersionVer­än­de­rung
13. Novem­ber 2017can­vas­Li­fe-15
  • Funk­ti­on Schrit­te hin­zu­ge­fügt
12. Novem­ber 2017can­vas­Li­fe-14
  • Quell­code-Opti­mie­rung
  • Kurs­pfei­le zu eini­gen Wer­ten in der Sta­tis­tik hin­zu­ge­fügt
7. Novem­ber 2017can­vas­Li­fe-13
  • Hin­zu­fü­gen der Pro­gramm­funk­ti­on Zel­len­in­fu­si­on: Die Funk­ti­on setzt per­ma­nent leben­de Zel­len in das Feld auf der Stel­le, wo sich der Maus­zei­ger befin­det
  • Hin­zu­fü­gen der Pro­gramm­funk­ti­on Aus­lö­schen: Die­se Funk­ti­on löscht alle leben­den Zel­len aus, wäh­rend indes die Simu­la­ti­on wei­ter­läuft
  • Frei­schal­tung der expe­ri­men­tel­len Funk­ti­on Inver­tie­ren
  • ver­bes­ser­te, genaue­re Anzei­ge alle leben­den und ster­ben­den Zel­len in der Sta­tis­tik
6. Novem­ber 2017can­vas­Li­fe-12
  • Anzei­gen der Maus­ko­or­di­na­ten, die sich über der Zei­chen­flä­che (Can­vas) befin­det
5. Novem­ber 2017can­vas­Li­fe-11
  • Ein­füh­rung der Ran­do­mi­sie­rung mit drei fol­gen­den Fak­to­ren: Pan­sper­mie, Pan­zoo­tie und Muta­ti­on. Jeder die­ser Fak­to­ren kann fol­gen­de Raten besit­zen: 0, 0.00001, 0.0001, 0.001, 0.01, 0.1 und 1.
  • Quell­code-Opti­mie­rung
  • expe­ri­men­tel­le Ein­füh­rung der Inver­tie­rung des Simu­la­ti­onfel­des; Aus­füh­rung noch deak­ti­viert
29. Okto­ber 2017can­vas­Li­fe-10
  • Die Web­ap­pli­ka­ti­on hat nun eine neue fes­te Brei­te von 450 Pixel. Die Berei­che Zei­chen­flä­che, Ein­stel­lun­gen und Sta­tis­tik sich nun mit einem Rah­men hin­ter­legt, der sich bei Ankli­cken der Beschrif­tung auf- und zuklap­pen lässt. Äqui­va­len­te Funk­tio­nen besit­zen die bereits exis­tie­ren­den Schalt­flä­chen Zei­chen­flä­che an/aus, Ein­stel­lun­gen an/aus und Sta­tis­tik an/aus.
  • Inte­gra­ti­on eines Favicons
  • Unter­stüt­zung von Open­Graph-Meta­da­ten
  • Die Aus­füh­rung der Web­ap­pli­ka­ti­on wur­de an ver­schie­de­nen Stel­len beschleu­nigt.
  • Die Dar­stel­lung der gewich­te­ten Wahr­schein­lich­keit wur­de ver­bes­sert.
  • Das direk­te Ändern der Sei­ten­grö­ße der Zei­chen­flä­che und der Block­grö­ße wur­de hin­zu­ge­fügt. Die Block­grö­ße bedeu­tet dabei die Grö­ße einer ein­zel­ne Zel­le auch dem Simu­la­ti­ons­feld. Die Block­grö­ße dient dabei in gewis­ser Wei­se als Zoom­fak­tor.
  • Die Aus­füh­rung der Simu­la­ti­on als toro­ida­le Welt ist nun als Stan­dard­ein­stel­lung mög­lich. Das Ändern der Ein­stel­lung geschieht wäh­rend einer Simu­la­ti­on live.
  • Die Zei­chen­flä­che kann durch die Schalt­flä­che Far­ben kolo­riert wer­den. Vor­han­den sind Zei­chen­far­be, Hin­ter­grund­far­be und Rand­far­be. Das Ändern der Ein­stel­lung geschieht wäh­rend einer Simu­la­ti­on live.
  • Es gibt die Mög­lich­keit, die Zei­chen­flä­che mit­tels der Schalt­flä­che Zoom zu ver­grö­ßern oder zu ver­klei­nern. Tech­nisch gesche­hen wird dabei die Block­grö­ße wäh­rend einer Simu­la­ti­on geän­dert. Das Ändern der Ein­stel­lung geschieht wäh­rend einer Simu­la­ti­on live.
  • Die Steue­rung der Simu­la­ti­on wur­de um zwei Schlacht­flä­chen erwei­tert: Initia­li­sie­ren und +1. Die Schalt­flä­che Initia­li­sie­ren bewirkt das Erzeu­gen eines neu­en Simu­la­ti­ons­feld aus den vor­ge­ge­be­nen Ein­stel­lun­gen, ohne einen auto­ma­ti­schen Start der Simu­la­ti­on aus­zu­füh­ren. Die Schalt­flä­che +1 führt die Simu­la­ti­on wäh­rend eines Pau­se­vor­gangs um nur eine Gene­ra­ti­on wei­ter. Zudem wur­de die Funk­ti­on der Schalt­flä­che Restart geän­dert; die­se wür­de nun einen auto­ma­ti­schen Neu­start der Simu­la­ti­on aus.
25. Okto­ber 2017can­vas­Li­fe-9
  • Die kom­plet­te Web­ap­pli­ka­ti­on wur­de hori­zon­tal zen­trisch aus­ge­rich­tet.
  • Die Stan­dard­grö­ße des Simu­la­ti­ons­felds wur­de von 400x400px auf 300x300px ver­rin­gert.
  • Die Schalt­flä­che für das Erzeu­gen eines neu­en Bilds des Simu­la­ti­ons­fel­des wur­de ent­fernt, da eine äqui­va­len­te Funk­ti­on durch den Web­brow­ser bzw. durch das jewei­li­ge OS bereit­ge­stellt wird.
  • Die Sta­tis­tik des Simu­la­ti­ons­fel­des wur­de in ihrer Aus­ga­be in eine Tabel­le umge­wan­delt und kom­pak­ter dar­ge­stellt
  • In die Sta­tis­tik sind fol­gen­de neue Anga­ben auf­ge­nom­men wor­den: tota­le leben­de Zel­len, tota­le ster­ben­de Zel­len, Ver­hält­nis tota­ler leben­der und ster­ben­der Zel­len, Lauf­zeit in Mil­li­se­kun­den, ver­ar­bei­te­te Gene­ra­tio­nen pro Sekun­de
  • Die Stop-und-Go-Schalt­flä­che wer­den im Betrieb nun wech­sel­sei­tig akti­viert und deak­ti­viert. Außer­dem für ein Restart kei­nen eigent­li­chen Neu­start des Simu­la­ti­ons­fel­des mehr durch, son­dern initia­li­siert nur neue Wer­te für das Simu­la­ti­ons­feld.
  • Alle bis­he­ri­gen Icons vor­han­de­ner Schalt­flä­che wur­den von 22px auf nun 16px her­ab­ge­setzt.
  • Es gibt drei neue Schalt­flä­chen für Anzeige/Nichtanzeige der Appli­ka­ti­ons­teil­be­rei­che: Zei­chen­flä­che an/aus, Bedien­ele­men­te an/aus, Sta­tis­tik an/aus Jeder die­ser Schalt­flä­chen kann auch durch einen Para­me­ter in der URL alter­na­tiv auf­ge­ru­fen wer­den: showcanvas, showcontrols, showstatistic. Eine Ver­wen­dung im Auf­ruf die­ser Para­me­ter beweist eine Nicht­an­zei­ge des jewei­li­gen Teil­be­reichs der Web­ap­pli­ka­ti­on.
    Als Wer­te gel­ten fol­gen­de, die zuein­an­der jedoch gleich­wer­tig sind: 0, no, false, disabled. Ande­re Wer­te sind ungül­tig und wer­den igno­riert. Einen Wert für das expli­zi­te Anzei­gen eines Teil­be­reichs wird nicht ver­wen­det und ist eben­falls ungül­tig, da die Ver­wen­dung nicht sinn­voll erscheint, weil die Anzei­ge der jewei­li­gen Teil­be­rei­che bereits grund­le­gend akti­viert ist.
20. Okto­ber 2017can­vas­Li­fe-8
  • In die­ser Ver­si­on wur­de eine Feh­ler in der Steue­rung der Text­an­zei­ge durch den Schie­be­reg­ler für die gewich­te­te Wahr­schein­lich­keit kor­ri­giert, der in can­vas­Li­fe-7 auf­ge­taucht ist.
  • Wei­ter­hin wur­de auch der Meta-Tag <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> für die kom­men­de Desk­top-Appli­ka­ti­on canvasLife.NET ein­ge­fügt, der für einer kor­rek­te Ver­wen­dung der aktu­el­len Engi­ne des Edge-Brow­sers zustän­dig ist.
26. Febru­ar 2017can­vas­Li­fe-7
  • grund­le­gen­de Ein­stel­lun­gen kön­nen nun direkt als Para­me­ter in der URL ver­wen­det wer­den: width für die Brei­te, height für die Höhe, probability für die gewich­te­te Wahr­schein­lich­keit, color für die Vor­der­grund­far­be und backgroundcolor für die Hin­ter­grund­far­be
23. Febru­ar 2017can­vas­Li­fe-6
  • 1px-Schutz­rand ent­fernt, da er nicht mehr not­wen­dig ist; Zel­len gelan­gen nun direkt Rad des Simu­la­ti­ons­fel­des
23. Febru­ar 2017can­vas­Li­fe-5
  • Code-Opti­mie­run­gen in der Aus­ga­be der Sta­tis­tik
  • Bug aus dem Pro­to­typ für die Aus­ga­be des Fel­des besei­tigt
21. Febru­ar 2017can­vas­Li­fe-4
  • Mög­lich­keit, von der aktu­el­len Zei­chen­ober­flä­che ein neu­es Bild in einem neu­en Fens­ter bzw. Tab zu erzeu­gen
19. Febru­ar 2017can­vas­Li­fe-3
  • Schie­be­reg­ler für eine gewich­te­te Wahr­schein­lich beim initia­len Set­zen einer Zel­le im Feld hin­zu­ge­fügt
19. Febru­ar 2017can­vas­Li­fe-2
  • Schalt­flä­chen zum simp­len Steue­rungs­ab­lauf erstellt (Restart, Stop, Go)
  • etwas sta­tis­ti­sche Infor­ma­tio­nen hin­zu­ge­fügt
18. Febru­ar 2017can­vas­Li­fe-1
  • auto­ma­ti­sche Grö­ßen­an­pas­sung am Can­vas
  • neue Farb­ge­bung
18. Febru­ar 2017can­vas­Li­fe-0
  • Pro­to­typ wur­de erstellt
Die­se Tabel­le zeigt die Ver­si­ons­his­to­rie von can­vas­Li­fe.