AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Hilfe! Rechtecke im Imagefenster

Ein Thema von ChicBrennan · begonnen am 28. Mär 2007 · letzter Beitrag vom 29. Mär 2007
Antwort Antwort
Seite 1 von 2  1 2      
ChicBrennan

Registriert seit: 28. Mär 2007
2 Beiträge
 
#1

Hilfe! Rechtecke im Imagefenster

  Alt 28. Mär 2007, 20:41
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
Angehängte Grafiken
Dateityp: jpg delphi2_177.jpg (50,1 KB, 84x aufgerufen)
Dateityp: jpg delphi2_451.jpg (50,1 KB, 8x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Hilfe!!! Kann mir jemand helfen?!

  Alt 28. Mär 2007, 20:43
Herzlich willkommen in der dp
Könntest du deinem Beitrag bitte einen aussagekräftigen Titel geben? (Einfach benutzen)
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Hilfe!!! Kann mir jemand helfen?!

  Alt 28. Mär 2007, 20:44
Zitat:
kann das jemand von euch?
Ja.
Und du solltest es auch können.
Zeichnen kannst du mit den Zeichenfunktionen von TCanvas und der Rest ist ja nur Mathematik
Markus Kinzler
  Mit Zitat antworten Zitat
28. Mär 2007, 20:45
Dieses Thema wurde von "SirThornberry" von "Sonstige Fragen zu Delphi" nach "VCL / WinForms / Controls" verschoben.
Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Hilfe!!! Kann mir jemand helfen?!

  Alt 28. Mär 2007, 22:34
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;
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
Benutzerbild von TKC
TKC

Registriert seit: 21. Apr 2004
Ort: Tuningen
367 Beiträge
 
Delphi XE2 Enterprise
 
#6

Re: Hilfe!!! Kann mir jemand helfen?!

  Alt 28. Mär 2007, 22:38
Das klingt mir verdächtig nach Hausaufgabenerledigungsmaschiene ..
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Hilfe!!! Kann mir jemand helfen?!

  Alt 28. Mär 2007, 22:42
Ja ist mir schon klar, aber ich hatte gerade Lust dazu.
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#8

Re: Hilfe!!! Kann mir jemand helfen?!

  Alt 29. Mär 2007, 08:01
Oder einfach mal rekursiv (die Aufgabe schreit ja geradezu danach):
Delphi-Quellcode:
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
...
Selbst wenn man das abtippt, hat man noch Einiges zu tun. Und vor allen Dingen dann, wenn der Lehrer wissen will, wie es funktioniert...
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Hilfe!!! Kann mir jemand helfen?!

  Alt 29. Mär 2007, 08:03
Zitat:
Selbst wenn man das abtippt, hat man noch Einiges zu tun. Und vor allen Dingen dann, wenn der Lehrer wissen will, wie es funktioniert...
Spätestens dann wünscht man sich man hätte es selber gemacht.
Markus Kinzler
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#10

Re: Hilfe!!! Kann mir jemand helfen?!

  Alt 29. Mär 2007, 08:28
Zitat von ACE-ppc:
Das klingt mir verdächtig nach Hausaufgabenerledigungsmaschiene ..
Man kann nur hoffen das die Lehrer den Schüler mal Fragen wie das Programm was die geschrieben (Copy Paste ) funktioniert
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz