ERLEDIGT
JA
JA
ANTWORTEN
7
7
ZUGRIFFE
643
643
EMPFEHLEN
-
Hallo,
ich bin grad dabei ein kleines Spiel zu proggen und hab da ein Problem: Ich habe ein Spielfeld in einer Picturebox gezeichnet, nun möchte ich gerne Shape-Objekte in dieses Spielfeld legen, jedoch wenn ich versuche aus der Werkzeugleiste ein Shape-Objekt auf die Picturebox zu ziehen, verschwindet es gleich in den Hintergrund. Meine Frage: Wie kriege ich das Shape-Objekt in den Vordergrund der Picturebox, also quasi in die Picturebox hinein?
Gruß
cesupa
-
Hallo cesupa,
das versteh ich jetzt nicht ganz. Wenn du im Designer eine PictureBox auf die Form zeichnest und dann in der Toolbox das ShapeObjekt auswählst un in der PictureBox aufspannst, ist die PBox ja ein ganz normal Container für das Shape und es wird ja auch im Vordergrund angezeigt.
Mit Doppelklick auf der Toolbox gehts nicht, aber Shape auswählen und auf PBox aufspannen funktioniert eigentlich einwand frei.Signatur wird geladen...
-
Ahh, ja da lag das Problem, ich hab das Shape-Objekt über Doppelklick eingebunden.
Danke für deine Antwort.
Gruß
cesupa
-
Hi, ich hätt da noch ne Frage:
Unzwar hab ich jetzt in meiner Picturebox 2 Punkte die Diagonal zueinander liegen, diese habe ich mit einer Linie verbunden, nun möchte ich, dass das Shape-Objekt dieser Linie vom Punkt A nach Punkt B folgt, ich habs bereits mit dem Satz des Pytagoras versucht, jedoch ohne großen Erfolg, vielleicht hab ichs auch falsch angegangen? Gibt es irgendeine einfache Möglichkeit, das Shape Diagonal der Linie nach zu bewegen?
Gruß
cesupa
-
Wenn du die Positionen der zwei Punkte genau kennst kannst du dir die einzelnen 'Zwischenstücke' ausrechnen.
Ich würde das mit Vektoren machen, klingt dann zwar kompliziert ist aber ziemlich einfach.
Ein Beispiel:
Code :1 2 3 4 5
A |__ |__ |__ B
Jedes |__ ist ein 'Zwischenstück', oder die schöne mathematische Bezeichnung 'Richtungsvektor'. Wenn du also die Punkte weisst, kennst du auch die Kooridinaten und den Vektor....
Jetzt hast du den Richtungsvektor und den Vektor der Gerade. Somit kannst du mit einem Timer das Objekt 'Stückchenweise' entlang fahren lassen.
Was ich damit sagen wollte:
Rechne dir die Koordinaten der zwei Punkte aus (Scale Mode), zähl sie zusammen, rechne durch z.B.: 10 und lass das Objekt diesen X|Y Wert entlang fahren.Signatur wird geladen...
-
Hab ich jetzt nicht so ganz verstanden, also wenn Punkt A die Koordinate 10,10 hat un der Punkt B 1000,1000, wie soll ich das dann genau machen?
-
Also:
Am einfachsten ist es du setzt den ScaleMode auf eine sinnvolle eigenschaft. z.B. 1000, 1000.
Es gibt da so eine nette Halbierungspunkt-Formel:
H =1/2 x (A+B)
hier kann man die Punkte einsetzen. 1/2 ergibt die Hälfte des Vektors AB.
H ergibt die Hälfte des Vektors.
A(5|5)
B(10|10)
H=(7,5|7,5) ... ich hoffe das stimmt jetzt.
Die neue Position des Shapes ist: Left=7,5 | Top=7,5.
So kannst du dir beliebig viel Punkte ausrechnen. Je nachdem wieviel du brauchst für eine ruhige Bewegung.Signatur wird geladen...
-
Gut, danke jetzt hab ichs verstanden. Funktioniert einwandfrei, vielen dank für deine Antwort.
Gruß
cesupa
Ähnliche Themen
-
Unterschied zwischen draw(shape) und fill(shape)
Von Matze im Forum JavaAntworten: 2Letzter Beitrag: 22.07.08, 09:11 -
pictureBox auf PictureBox oder Label
Von shn im Forum .NET Windows FormsAntworten: 1Letzter Beitrag: 31.08.05, 16:37 -
PictureBox über PictureBox
Von JK_net im Forum .NET ArchivAntworten: 1Letzter Beitrag: 14.03.05, 09:03 -
Shape?
Von vodka im Forum Cinema 4DAntworten: 1Letzter Beitrag: 14.12.03, 14:48 -
Shape mit Mesh-Smooth ----> Shape geht Kaputt
Von Grafik-Bewunderer im Forum 3D Studio MaxAntworten: 5Letzter Beitrag: 05.05.02, 17:14





Zitieren
Login





