|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 10.01.2007, 23:40 Titel: Lissajous-Figur auf einem virtuellen Oszilloskop |
|
|
Hi,
naja kein Projekt, eigentlich eine nette Spielerei mit den Grafikfunktionen in FB .
Code: | /' Lissajous.bas (3) - by Volta - 10.01.2007
' test mit FB 0.16 und FB 0.17(22.12.2006) unter ME
' Lissajous-Figur auf einem virtuellen Oszilloskop
' http://de.wikipedia.org/wiki/Lissajous-Figur
'/
Const degrad = Atn(1) / 45
Dim As Single v,w,m,n,s
Dim As Integer i,x,y, gruen = &H8fff00, orange=&Hffb000
Dim Ik As String
Screen 15,32,1',1 'mit screen 15 - 20 getestet
'mit screen 17,32,1,1 funktioniert die Maus nicht??
Screenset 1,0
Sub OsziSchirm(px As Integer, py As Integer, br As Integer, xbr As Integer,_
ho As Integer, xho As Integer, fa As Integer, ra As Integer)
Dim As Integer x,y,i,j
Line (px,py)-(px+br-1,py+ho-1),0,BF' cls
Line (px,py)-(px+br-1,py+ho-1),fa,B' Rahmen
' !!! Keine Fehlerprüfung auf <=0
x=br\xbr
y=ho\xho
For i = px To px+br-x Step x ' Vertikal
Line (i,py)-(i,py+ho),fa,,ra
Next
For j = py To py+ho-y Step y ' Horizontal
Line (px,j)-(px+br,j),fa,,ra
Next
End Sub
'-------------------------------
Draw String (140, 200),"<- Taste ->",orange
Draw String (328, 200),"Aus",orange
Draw String (132, 200),"[ ]",gruen
Draw String (220, 200),"[ ]",gruen
Draw String (320, 200),"[ ]",gruen
n=10+180
w=10+90
s=6
Do
s = s -((Rnd-0.49)*.015) ' Unruhe
Getmouse x,y,,i
If i= 1 And y>200 And y<212 Then
If x>136 And x<156 Then s += .03 ' [<-]
If x>224 And x<244 Then s -= .03 ' [->]
If x>324 And x<356 Then Exit Do ' [Aus]
End If
If Multikey(&h4B) Then s += .03 ' <- Taste
If Multikey(&h4D) Then s -= .03 ' -> Taste
OsziSchirm(10,10,360,10,180,6,orange,&H0101)
For i = 0 To 359
v = Sin(i*degrad*s) *85 +100
m = Cos(i*degrad) *175 +190
Line (n,w)-(m,v),gruen
n = m
w = v
Next
Screencopy
Screensync 'weniger flackern bei Mausbewegungen
Sleep 1
Ik = Inkey ' Tastaturabfrage
If Ik = Chr(3) Then Exit Do ' wurde Ctrl+C gedrückt oder
If Ik = Chr(255,107) Then Exit Do ' wurde X (AltGr+F4) gedrückt
Loop Until Ik = Chr(27) ' oder ESC dann raus hier
End |
Kein Beinbruch, aber beim Austesten fiel mir auf, dass im Vollbildmodus mit screen 17 die Maus bei mir nicht funktioniert.
Hatt jemand die gleichen Probleme? _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
SpionAtom
Anmeldungsdatum: 10.01.2005 Beiträge: 338
|
Verfasst am: 11.01.2007, 02:25 Titel: |
|
|
Bin leider nicht so bewandert in FB, beim kompilieren deines Programms meckert der Compiler über diese Zeile:
Code: | Draw String (140, 200),"<- Taste ->",orange |
mit der Meldung: Excepted end of line, found ','
und dann zeigt er böse auf das Komma vor dem ersten Gänsefüßchen. Was hab ich falsch gemacht?
P.S. Hab eine ziemlich frische FB-version _________________ Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht. |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 11.01.2007, 11:49 Titel: |
|
|
SpionAtom hat Folgendes geschrieben: | P.S. Hab eine ziemlich frische FB-version | Wie frisch ist die FB-Version denn?
Ab FB0.16 ist "Draw String" in freeBASIC verfügbar. _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
SpionAtom
Anmeldungsdatum: 10.01.2005 Beiträge: 338
|
Verfasst am: 11.01.2007, 14:00 Titel: |
|
|
Sorry, ganz so frisch war meine Version dann doch nicht. Mit der neuesten 0.16 klappts.
Sieht interessant aus. Hat einen leichten 3d-Effekt. _________________ Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht. |
|
Nach oben |
|
|
General
Anmeldungsdatum: 26.11.2006 Beiträge: 149
|
Verfasst am: 11.01.2007, 18:34 Titel: |
|
|
wo kriege ich die neue Version denn her ?? kann ma ainer nen link schicken |
|
Nach oben |
|
|
Devilkevin aka Kerstin
Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 11.01.2007, 18:40 Titel: |
|
|
General hat Folgendes geschrieben: | wo kriege ich die neue Version denn her ?? kann ma ainer nen link schicken |
www.Freebasic.net - letzte stable-Version als Binary für die Zielplattform ...
... oder den ganz aktuellen Source auf der Sourceforge Projektseite |
|
Nach oben |
|
|
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 11.01.2007, 19:21 Titel: |
|
|
http://drv.nu/r/2
Da gibts die fertig compilierte CVS Version zum Download. _________________
Code: | #include "signatur.bi" |
|
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1875 Wohnort: D59192
|
Verfasst am: 11.01.2007, 19:58 Titel: OpenGL - Lissajous Figur |
|
|
Immer noch aktuell.
Unter Allgemeine Fragen zu FreeBASIC hat jojo die FAQ: Woher bekomme ich die aktuellste FreeBASIC Version? eingestellt.
Immer noch aktuell.
Dort hat terminate dies noch für die CVS Version erweitert.
Unter '2. Fix und fertig kompiliertes CVS Update runterladen' findet man Links zur absolut letzten Version.
Achtung: die letzten (FB0.17) Versionen haben einen erweiterten Sprachumfang und benötigen teilweise anderen (geänderten) Basicquelltext.
EDIT/
(Hier ein Versuch das gleiche Thema in OpenGL zu erstellen http://forum.qbasic.at/viewtopic.php?p=47182#47182 ) _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|