ZS die Zweite !

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Mogon

Betreff: ZS die Zweite !

BeitragMi, März 02, 2005 16:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Offenbar treibt sich im Code-Archiv nicht so viel Volk herum wie hier. Doch auch euch will ich mein Programm zum Erstellen von Zentrischen Streckungen *BlickinsMathebuchwerf* nicht vorenthalten.

Verbesserungvorschläge, Erweiterungen, Kritik und Briefbombem erwünscht!

Anleitung: Benutzt die Maus und A,B,C und Z, um die Eckpunkte des Dreiecks und das Streckzentrum Z zu setzen.
Mit f12 könnt ihr einen Screenshot machen.

Code: [AUSKLAPPEN]
k = Input("Bitte geben Sie den Streckfaktor k ein: ")

MoveMouse 400,300

Graphics 1024,768

Repeat
   SetBuffer BackBuffer()
   ClsColor 255,255,255
   Cls
      
      Color 0,0,0
      
      Line MouseX()-5,MouseY(),MouseX()+5,MouseY()
      Line MouseX(),MouseY()-5,MouseX(),MouseY()+5
      
      If ax > 0 And bx > 0 And cx > 0 Then
         Line ax,ay,bx,by
         Line bx,by,cx,cy
         Line cx,cy,ax,ay
      EndIf
      
      Plot ax,ay
      Plot bx,by
      Plot cx,cy
      
      Line zx-2,zy,zx+2,zy
      Line zx,zy-2,zx,zy+2
      Plot zx,zy
      
      Text 0,0,"k = " +k
      Text 0,15,"a = "+ax+", " +ay
      Text 0,30,"b = "+bx+", " +by
      Text 0,45,"c = "+cx+", " +cy
      Text 0,60,"z = "+zx+", " +zy
      Text 0,75,"a' = " + asx+", "+asy
      Text 0,100,"Bild speichern: F12"
      
      Text ax-15,ay-15,"A"
      Text bx-15,by-15,"B"
      Text cx-15,cy-15,"C"
      Text zx-15,zy-15,"Z"
      
      Text asx-15,asy-15,"A'"
      Text bsx-15,bsy-15,"B'"
      Text csx-15,csy-15,"C'"
      
      asx = (ax - zx) *k +zx
      asy = (ay - zy) *k +zy
      
      bsx = (bx - zx) *k +zx
      bsy = (by - zy) *k +zy
      
      csx = (cx - zx) *k +zx
      csy = (cy - zy) *k +zy
      
      If asx > 0 And bsx > 0 And csx > 0 Then
         Line asx,asy,bsx,bsy
         Line bsx,bsy,csx,csy
         Line csx,csy,asx,asy
      EndIf
      
      Color 255,0,0
      
      Line ax,ay,asx,asy
      Line bx,by,bsx,bsy
      Line cx,cy,csx,csy      
      
      If asx > 0 And bsx > 0 And csx > 0 Then
         Line zx,zy,ax,ay
         Line zx,zy,bx,by
         Line zx,zy,cx,cy
      EndIf

      If KeyHit(30) Then
         ax = MouseX()
         ay = MouseY()
      EndIf
      If KeyHit(48) Then
         bx = MouseX()
         by = MouseY()
      EndIf
      If KeyHit(46) Then
         cx = MouseX()
         cy = MouseY()
      EndIf
      If KeyHit(21) Then
         zx = MouseX()
         zy = MouseY()
      EndIf
      If KeyHit(88) Then SaveBuffer FrontBuffer(), "zentrischestreckung.bmp"
      
   Flip
Until KeyHit(1)

Artemis

BeitragMi, März 02, 2005 16:33
Antworten mit Zitat
Benutzer-Profile anzeigen
COOL!!! Very Happy

supermann

BeitragMi, März 02, 2005 16:45
Antworten mit Zitat
Benutzer-Profile anzeigen
mach keydown() ist besser als keyhit() hab,s ausprobiert . Und schreib nach der Schleife ein End damit nicht immer" Programm has ended" da steht.
Und du kannst danach noch schreibren:
text x,y,"Made by mogon"
delay ??????? Wink :

supermann

BeitragMi, März 02, 2005 16:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Aber sonst ist es sehr sehr sehr gut.

Christian

BeitragMi, März 02, 2005 16:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Tag!

Sehr gut!
Ich kenne mich damit zwar nicht aus, aber sieht gut aus.
Für Leute die damit zu tun haben, bestimmt interresant.
Weiter so!

Gruß
Christian

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group