Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Einzelne Polygone editierbar?

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
AndT



Anmeldungsdatum: 02.04.2007
Beiträge: 481

BeitragVerfasst am: 14.12.2007, 23:47    Titel: Einzelne Polygone editierbar? Antworten mit Zitat

Wie könnte man eine Editier funktion einbauen, so das sich z.B die einzelnden Eckpunkte verschieben lassen?
Eckpunkt 1-3 mit den Tasten 1,2,3 Polygon zeichnen mit Leertaste

Code:

' Programmed by AndT
type xycor
    x as integer
    y as integer
end type

dim as xycor res = (800,600)
dim as xycor p1,p2,p3

sub drawpoly (byval p1 as xycor,byval p2 as xycor, byval p3 as xycor,byval col as integer)
line (p1.x,p1.y)-(p2.x,p2.y),col
line (p2.x,p2.y)-(p3.x,p3.y),col
line (p3.x,p3.y)-(p1.x,p1.y),col
end sub

sub kreuz (byval x as integer ,byval y as integer)
    line (x-5,y)-(x+5,y),4
    line (x,y-5)-(x,y+5),4
    end sub
   

dim as integer mx,my,mb
dim as integer polygonpos = 1
dim as string key
screen 18
do
    getmouse mx,my,,mb
    key = inkey
    select case key
    case "1"
        polygonpos = 1
    case "2"
        polygonpos = 2
    case "3"
        polygonpos = 3
    case " "
        drawpoly(p1,p2,p3,15)
    end select
   
       
    select case polygonpos
    case 1
        if mb = 1 then p1.x = mx : p1.y = my : kreuz (mx,my)
    case 2
        if mb = 1 then p2.x = mx : p2.y = my : kreuz (mx,my)
    case 3
        if mb = 1 then p3.x = mx : p3.y = my : kreuz (mx,my)
    case 4
        drawpoly (p1,p2,p3,15)
    end select
    locate 1,1
    print "p1=(";p1.x;",";p1.y;")"
    print "p2=(";p2.x;",";p2.y;")"
    print "p3=(";p3.x;",";p3.y;")"
    print "Eckpunkt=";polygonpos
    sleep 1
loop until multikey(&h01)

_________________
Bis irgendwann... grinsen


Zuletzt bearbeitet von AndT am 15.12.2007, 00:31, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 15.12.2007, 00:25    Titel: Antworten mit Zitat

ich weiß wirklich nicht, was du damit bezwecken willst, aber...

- Alle Punkte in einem Array speichern (wie denn bitte sonst?!)
- Prüfen, ob die angeklickte stelle bereits einen Eckpunkt besitzt
- Falls ja, diesen zum verschieben freigeben, sonst einen neuen punkt setzen.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 15.12.2007, 00:28    Titel: Antworten mit Zitat

Wo wir grad bei Editieren sind:
Der Plural von Polygon ist Polygone
Titel ändern geht mit dem Edit-Button in deinem 1. Post..
..vllt. kriste das ja fertig..
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
AndT



Anmeldungsdatum: 02.04.2007
Beiträge: 481

BeitragVerfasst am: 15.12.2007, 00:33    Titel: Antworten mit Zitat

Jojo hat Folgendes geschrieben:
- Alle Punkte in einem Array speichern (wie denn bitte sonst?!)
- Prüfen, ob die angeklickte stelle bereits einen Eckpunkt besitzt
- Falls ja, diesen zum verschieben freigeben, sonst einen neuen punkt setzen.

So wirds gemacht!
THX!

Das ganze wird erstmal weiter geschieben.
_________________
Bis irgendwann... grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
qbay



Anmeldungsdatum: 08.06.2008
Beiträge: 84

BeitragVerfasst am: 21.11.2008, 19:15    Titel: a pro po Antworten mit Zitat

Wo wir grade bei Polygonen sind
weis jemand wie man Polygone in Freebasic zeichnet
ich brauch nicht unbedingt ein beispiel programm sondern eher
eine anleitung ich wills ja selbst schaffen
wäre nett wenn ihr mir helfen könntet

gruss zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 21.11.2008, 19:21    Titel: Antworten mit Zitat

Ich würde ganz einfach mit LINE mehrere Strecken zeichnen: Von Punkt1 zu Punkt2, von Punkt2 zu Punkt3 ... und am Ende vom letzten Punkt zu Punkt1.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 21.11.2008, 20:09    Titel: Re: a pro po Antworten mit Zitat

qbay hat Folgendes geschrieben:
Wo wir grade bei Polygonen sind

da waren wir vor äh... genau einem jahr? warum hängst du dich an den thread an?

und lass dir eins gesagt haben, 3D ist kein zuckerschlecken...
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 22.11.2008, 01:16    Titel: Antworten mit Zitat

Wieso 3D? Polygone liegen meines Wissens in einer Ebene.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 22.11.2008, 01:24    Titel: Antworten mit Zitat

du kannst dir mit ein bisschen fantasie schon ausmalen, wo die polygone hingehen sollen... zwinkern
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
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.

 Impressum :: Datenschutz