ana.words, programmieren für einsteigerInnen

ana.words, programmieren für einsteigerInnen
26. Januar 2007 mahal
In ana.bildwords
lieber neuer anwender

vor einiger zeit habe ich erfahren, dass du gerne mal
dem komputer zeigst was er zu tun hat. nämlich ihn zu
programmieren. hier habe ich was nettes gefunden mit
dem du bestimmt einigen spass haben wirst.

als erstes die programmierumgebung herunterladen und
installieren und starten:
windoefs: http://www.contextfreeart.org/download/ContextFreeInstall2.0.exe
mac os x: http://www.contextfreeart.org/download/ContextFree2.0.dmg

wenn du noch nie ein programm vom internet geladen und
installiert hast, fragst du am besten dein mami oder
deinen manager.

alles weitere ab hier kannst du alleine:

die programmierumgebung "Context Free" ermöglicht dir
mit einer einfachen sprache dem computer befehle zu
geben. diese befehle sind im fenster links als text
eingegeben. der computer führt dann mit der taste
"render" die befehle aus und zeichnet das resultat im
rechten teil des fensters.

für dein erstes programm öffnest du ein neues fenster:
im menü file: new... anwählen. es erscheint ein leeres
fenster.

die sprache ist ganz einfach, es gibt einige eingebaute
zeichnungsbefehle. am anfang steht immer startshape und
der titel meines programmes, hier DOOR. danach wird ein
kreis (CIRCLE) und ein quadrat (SQUARE) gezeichnet.

links im leeren fenster kopierst du folgenden text ein:


startshape DOOR 

rule DOOR {

CIRCLE { b 0.5 y 0.5 }

SQUARE { }

}



--- dies nicht mehr. und taste render klicken! schön
ist das, der komputer hat deine befehle
entgegengenommen und gezeichnet.

für jeden befehl, so auch für CIRCLE, gibt es
sogenannte parameter. diese sind in den geschweiften {
} klammern angegeben. die parameter sagen dem kompi,
wie genau der kreis aussehen soll:

x ist die position des kreises auf der unsichtbaren linie von links nach rechts
y ist die position des kreises auf der unsichtbaren linie von unten nach oben 
b ist farbe, 1= schwarz, 0 = weiss

wird ein parameter nicht angegeben, wie beim SQUARE, ist sein wert = 1

nochmals im menü file: new... und weiter geht es mit folgendem programm:


startshape DOOR 

rule DOOR {

CIRCLE { b 0.5 y 0.5 }

SQUARE { }
SQUARE { b 0 size 0.9}


}




--> nun ist das bild schon ein kleines haus ;-)


und endlich der trick mit rekursion, das wird dich umhauen:

die tür zeichnet sich selber nochmals mit halber grösse
size 0.5 und mit y -0.25. die tür zeichnet sich so lange
selber, bis sie so klein ist, um nicht mehr wahrgenommen
zu werden. dann stoppt das programm. der aufruf des
befehls innerhalb des befehls nennt sich rekursion.

und das sieht im programmcode so aus:


startshape DOOR 

rule DOOR {

CIRCLE { b 0.5 y 0.5 }

SQUARE { }
SQUARE { b 1 size 0.9 }

DOOR { y -0.25 size 0.5 }
}




falls du es bis hierhin geschafft hast, hast du den
computer programmiert. mit deinem programm-code hat der
computer verstanden, was du von ihm willst und er führt
es für dich aus.

um die sprache zu vertiefen und schöne grafiken zu sehen,
kannst du im menü help: lession und lession2 die
sogenannten tutorials durchsehen. diese sind ähnlich wie
dieses mail aufgebaut und zeigen dir auf englisch noch
mehr tricks mit dem "Context Free".


noch toller die beispiele (examples). dadurch dass diese
auch in einem fenster in deiner programmierumgebung
erscheinen, kannst du diese nach lust und laune
verändern.

im internet gibt es noch mehr beispiele in der galerie
und lesenswertes zu den befehlen und parametern :-)
http://www.contextfreeart.org/gallery/

wenn du fragen hast, dann schreib mir doch zurück und ich
probier dir zu helfen.

viel vergnügen

mahal



-- = --    -- = --    -- = --     

a n a . w o r d s
      aus dem hellblauen salon

words@ana.ch
http://ana.ch/words/
ana.txt seite 444

      reicht ana.words weiter!


                               _____________
                         ________________________
                      ______________________________
                   ____________________________________
                 ________________________________________
               _____________________     __________________
              ____________________        ___________________
            ______________________         ___________________
           ______________________          _____________________
          ____________________               ____________________
        ______________________               __      _____________
       ____________                                         _______
      _________                                          ___________
      _______                                          ______________
     ______                                         _________________
    ______    ________                            ____________________
    _____________________                        ______________________
   ____________________     ___                ________________________
  ____________________    ______                ________________________
  __________________     _______           __    _______________________
  __________________     ________          ___   ________________________
 ____________________      ______           _    ________________________
 ______________________      ____              __________________________
 _________________________     __             ____________________________
 _____________________________                ____________________________
_______________________________               ____________________________
_______________________________               ____________________________
_______________________________                ___________________________
_______________________________                ___________________________
_______________________________                ___________________________
______________________________                 ___________________________
 _____________________________                 ___________________________
 ____________________________                 ____________________________
 ____________________________         _       ___________________________
 ____________________________        __       ___________________________
  ___________________________       ____      ___________________________
  ___________________________      _____     ___________________________
  __________________________      _______    ___________________________
   _________________________      ______     __________________________
   ________________________     ________     __________________________
    ______________________ __ __________   ___________________________
     ______________________  _ _________ __  ________________________
      ___________________      ___________   ________________________
      ___________________     ___________     ______________________
       __________________    _____________    _____________________
        _________________    _____________    ____________________
          ______________    ______________    ___________________
           _____________   _______________    __________________
            ____________   ________________   ________________
              __________    ______________      _____________
               ________     ______________        _________
                 _______    _____________________    ____
                   ______  ____________________________
                      _______________________________
                         ________________________
                              ______________

best viewed in a fixed-width font such as monaco or courier