Delphi-PRAXiS
Seite 3 von 5     123 45      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Muss einen Kompass programmieren... (https://www.delphipraxis.net/103629-muss-einen-kompass-programmieren.html)

mkinzler 18. Nov 2007 20:40

Re: Muss einen Kompass programmieren...
 
Ja die Paint-Methode in der du die Grafik zeichnest

volcano57 18. Nov 2007 20:46

Re: Muss einen Kompass programmieren...
 
mkinzler du meinst also ich muss den kreis usw. noch zeichnen ja...? ja davon abgesehen würd das programm so einigermaßen gehen.. ? hab delphi leider nicht installiert.. deswegen will ich sicher sein dass es in der schule auch klappt hoff ich mal... :|

mkinzler 18. Nov 2007 20:48

Re: Muss einen Kompass programmieren...
 
Ja. den die Ermittlung des Mittelpunkt reicht ja wohl noch nicht ganz :stupid:
http://www.dsdt.info/tipps/?id=358

grenzgaenger 18. Nov 2007 20:56

Re: Muss einen Kompass programmieren...
 
Zitat:

Zitat von volcano57
mkinzler du meinst also ich muss den kreis usw. noch zeichnen ja...? ja davon abgesehen würd das programm so einigermaßen gehen.. ? hab delphi leider nicht installiert.. deswegen will ich sicher sein dass es in der schule auch klappt hoff ich mal... :|

kannste denn da deinen lehrkörper nicht fragen, wenn es nicht ganz klappt....? :stupid:

mkinzler 18. Nov 2007 20:58

Re: Muss einen Kompass programmieren...
 
Du könntest dir auch Turbo Delphi Explorer runterladen und dann daheim ausprobieren.
www.turboexplorer.com

Phoenix 18. Nov 2007 20:58

Re: Muss einen Kompass programmieren...
 
Also erstmal: Egal ob hier jemand neu oder schon 5 Jahre dabei ist: wir Schnauzen uns nunmal nicht an. Hier in der Delphi-Praxis legen wir eben nunmal Wert auf einen gepflegten Umgang miteinander. Und wenn dann so ein Urgestein wie mkinzler darauf hinweist, sollte man sich als Jungspund sowas zu Herzen nehmen.

Und ja, im privaten Hausgebrauch benutzt jeder von uns mal den einen oder anderen Kraftausdruck. Nur hier in der DP versuchen wir sowas wo es nur möglich ist zu vermeiden.

Und wir machen niemanden fertig. Nur erwarten wir von Neuen Mitgliedern in der Community etwas Respekt den Älteren gegenüber. Schliesslich willst Du etwas von uns - und da setzen wir einfach voraus, dass das höflich, freundlich und respektvoll erfragt wird und auch gezeigt wird, dass man zumindest versucht aus unseren Posts zu lernen. Wenn man hier unfreundlich auftritt oder gar verlangt, ganze Aufgaben zu lösen, dann rennt man hier sehr schnell gegen eine ziemlich harte Wand.

Noch ein kleiner Hinweis zu den 'Verhaltensregeln' im Forum - wenn Du etwas zu Deinem letzten Post ergänzen willst und noch keinr was dazu geschrieben hast, wäre es geschickt wenn Du Deinen letzten Post ergänzt und nicht gleich noch einen dazu schreibst. Macht die ganze Sache einfach etwas übersichtlicher.

Was das Delphi und Freiwillig angeht: Es gibt nunmal Leute, die damit tatsächlich ihr Geld verdienen ;-) Viele von uns sind hauptberufliche Entwickler - und haben damit logischerweise einen gewissen Wissenvorsprung vor Schülern oder Hobbyisten. Das ist ganz natürlich und nix, wovor man Berührungsängste oder gar Ehrfurcht haben muss. Vielleicht wirst Du ja mal Chirurg oder Physiker. Das wären Sachen, die z.B. ich nie könnte ;-)

Zur Problemstellung:

Du hast ja jetzt das Formular initialisiert und Dir den Mittelpunkt gemerkt.
In der MouseMove-Routine hast Du Dir die Mauskoordinaten gemerkt.

Jetzt musst Du die Paint-Methode des Formulars überschreiben und dort eben mit den genannten Methoden a) einen Kreis um den Mittelpunkt zeichnen und b) den Winkel vom Mittelpunkt zur Mauskoordinate berechnen. Mit dem Winkel kannst Du dann Start- und Endpunkt einer Linie durch den Mittelpunkt berechnen, die dann die Pfeilrichtung angibt.

Das ist einfache Mathe und sollte nicht so schwierig sein. Stell mal die Formeln dafür auf und dann versuche, diese Formeln in Code zu packen. Weil wenn Du das hast, bist Du fast schon fertig.

volcano57 18. Nov 2007 21:06

Re: Muss einen Kompass programmieren...
 
:hi: OK Danke Phoenix

Hast mich ja jetzt ziemlich gedisst. Da bleibt echt nicht mehr viel zu sagen.

Vielen dank für die ganzen Antworten, seid schon korrekt.

Ich werd mal sehen, wie ich das morgen in der schule hinbekomme.

static_cast 19. Nov 2007 00:42

Re: Muss einen Kompass programmieren...
 
Zwar nicht unbedingt ein Kompass aber nunja, aber mir war langweilig gerade :D

Code:
void __fastcall TForm1::FormMouseMove(TObject *Sender, TShiftState Shift, int X, int Y)
{
   TPoint p = Image1->ScreenToClient(Mouse->CursorPos);

   Image1->Canvas->Brush->Color = Form1->Color;
   Image1->Canvas->Rectangle(0,0,Image1->Width,Image1->Height);

   Image1->Canvas->Brush->Color = clGreen;
   Image1->Canvas->Ellipse(0,0,Image1->Width,Image1->Height);
   Image1->Canvas->MoveTo(Image1->Width / 2,Image1->Height / 2);
   Image1->Canvas->LineTo(p.x,p.y);
}
//Edit: Ach huch das war ja ein BCB-Projekt, habs nimma gemerkt :wall: Naja hat er noch etwas zu tun :???:

[edit=Phoenix]Delphi- in C-Codes geändert. Dann liest es sich besser. Mfg, Phoenix[/edit]

volcano57 20. Nov 2007 18:04

Re: Muss einen Kompass programmieren...
 
hm..vom letzten beitrag hab ich eigtl nur bahnhof verstanden... aber schon faszinierend was du so aus langeweile machst...

echt.. ich weiß nich.. aber so langsam geb ich die hoffnung mit delphi wirklich auf.. bin echt ne niete darin..... :cry:

naja... das leben ist hart und unfair.. kann man wojhl nix machen, gel...

MCXSC 20. Nov 2007 18:44

Re: Muss einen Kompass programmieren...
 
Delphi-Quellcode:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
   p: TPoint;
begin
   p := Image1.ScreenToClient(Mouse.CursorPos);
   Image1.Canvas.Brush.Color := Form1.Color;
   Image1.Canvas.Rectangle(0, 0, Image1.Width, Image1.Height);
   Image1.Canvas.Brush.Color := clGreen;
   Image1.Canvas.Ellipse(0, 0, Image1.Width, Image1.Height);
   Image1.Canvas.MoveTo(Round(Image1.Width / 2), Round(Image1.Height / 2));
   Image1.Canvas.LineTo(p.x, p.y);
end;
So.^^

Was du jetzt noch auf das Form klatschen musst, solltest selbst erkennen, sonst gibt es echt keine Hoffnung *sry*

Was für eine Programmiersprache kannst du denn? So wie du dich hier anstellst eher gar keine... Und Informatik gewählt, bei dem logischen Denkvermögen, was du hier an den Tag legst? cO *Sorry*

//Edit: Rechtschreibfehler wtf... cO xD
//Edit 2: Round eingefügt


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:17 Uhr.
Seite 3 von 5     123 45      

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