![]() |
Hilfe! Rechtecke im Imagefenster
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo
Hoffe, schreibe hier nicht in den falschen zweig... Vielleicht kann mir jemand von euch helfen. Ich kenne mich nicht so gut mit delphi aus, muss aber bis nächsten Montag folgendes programmieren: In einem leeren image-fenster soll auf einen buttonklick das hier entstehen: (siehe Anhang) vier rechecke ineinander... wo jeweils das innere mit den ecken, dieseiten des äußeren halbiert, aber trotzdem innerhalb bleibt, also kleiner ist... kann das jemand von euch? Lg Chic |
Re: Hilfe!!! Kann mir jemand helfen?!
Herzlich willkommen in der dp :dp:
Könntest du deinem Beitrag bitte einen aussagekräftigen Titel geben? (Einfach http://www.delphipraxis.net/template.../icon_edit.gif benutzen) |
Re: Hilfe!!! Kann mir jemand helfen?!
Zitat:
Und du solltest es auch können. Zeichnen kannst du mit den Zeichenfunktionen von TCanvas und der Rest ist ja nur Mathematik |
DP-Maintenance
Dieses Thema wurde von "SirThornberry" von "Sonstige Fragen zu Delphi" nach "VCL / WinForms / Controls" verschoben.
|
Re: Hilfe!!! Kann mir jemand helfen?!
Hi,
so könnte man es machen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Size, HalfSize, iLeft, iTop: integer; procedure Draw2Rect; begin Image1.Canvas.Polyline([Point(0, 0), Point(Size, 0), Point(Size, Size), Point(0, Size), Point(0, 0)]); Image1.Canvas.Polyline([Point(HalfSize, 0), Point(Size, HalfSize), Point(HalfSize, Size), Point(0, HalfSize), Point(HalfSize, 0)]); end; begin Size := 100; iLeft := (Image1.Width - Size) div 2; iTop := (Image1.Height - Size) div 2; HalfSize := Size div 2; SetViewportOrgEx(Image1.Canvas.Handle,iLeft, iTop, nil); Draw2Rect; Size := HalfSize; HalfSize := Size div 2; SetViewportOrgEx(Image1.Canvas.Handle,iLeft + HalfSize, iTop + HalfSize, nil); Draw2Rect; SetViewportOrgEx(Image1.Canvas.Handle, 0, 0, nil); end; |
Re: Hilfe!!! Kann mir jemand helfen?!
Das klingt mir verdächtig nach Hausaufgabenerledigungsmaschiene .. :warn:
|
Re: Hilfe!!! Kann mir jemand helfen?!
Ja ist mir schon klar, aber ich hatte gerade Lust dazu.
|
Re: Hilfe!!! Kann mir jemand helfen?!
Oder einfach mal rekursiv (die Aufgabe schreit ja geradezu danach):
Delphi-Quellcode:
Selbst wenn man das abtippt, hat man noch Einiges zu tun. Und vor allen Dingen dann, wenn der Lehrer wissen will, wie es funktioniert...
Procedure RechteckImRechteck (P1,P2,P3,P4 : TPoint; Ebene : Cardinal);
Begin If Ebene = 1 Then ZeichneReckeck (P1,P2,P3,P4) // Das muss man selbst programmieren Else RechtEckImRechteck ( Point ((P1.x+P2.x)/2, (P1.y+P2.y)/2), Point ((P2.x+P3.x)/2, (P2.y+P3.y)/2), Point ((P3.x+P4.x)/2, (P3.y+P4.y)/2), Point ((P4.x+P1.x)/2, (P4.y+P1.y)/2) Ebene - 1); End; ... RechtEckImRechtEck (P1,P2,P3,P4,4); // Zeichnet 4 ineinander verschachtelte Rechtecke ... |
Re: Hilfe!!! Kann mir jemand helfen?!
Zitat:
|
Re: Hilfe!!! Kann mir jemand helfen?!
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz