Kreuzberechnung in c++

02/20/2010 17:39 Waynee#1
So eine Sache hätte ich erstmal noch...

Ihr müsst euch ein großes TickTackToe Feld vorstellen, in dem ein schön dickes Kreuz gesetzt werden kann...

C++ kann ja nur bis zu einer bestimmten Strichstärke die Linien zeichnen...aber da es dick sein soll kommt man ja ohne Mathe nicht weiter ^.^

Ich würde mich freuen, wenn Ihr mir verschiedene Lösungsansätze sagen würdet, damit ich das ganze nachvollziehen und selber anwenden kann.

dankeschön =)
02/20/2010 17:46 HardCore.1337#2
arbeitet C++ mit dem Canvas Objekt?
02/20/2010 20:08 Waynee#3
weiß ich ehrlichgesagt nicht ^.^
ich kenn mich in der Richtung nicht so gut aus...

Haben das in der Schule schonmal mithilfe unseres Lehrers geschafft...
aber ich hab die Rechnung von vorne bis hinten nicht verstanden, da der meinte, das er uns das innerhalb von 5 Minuten kurz erklären kann ^.^
02/20/2010 21:42 HardCore.1337#4
omg. in 5min :D

Frag deinen Lehrer einfach nochmal
02/20/2010 21:59 Waynee#5
der typ is unter uns gesagt unfähig sowas zu erklären ^.^

der großteil aus unserer Klasse ist froh, das sie seine Implementation abschreiben konnten und die funktioniert...aber mir reicht das nicht ^^

Ich will das verstehen und dann vllt sogar anders schreiben können...
ich hack nich gerne fertigen quelltext in den Compeiler :P
02/20/2010 22:06 ^darkwing#6
Quote:
C++ kann ja nur bis zu einer bestimmten Strichstärke die Linien zeichnen
Könntest du näher erklären, was du meinst?
02/20/2010 22:19 HardCore.1337#7
du arbeitest mit einer GUI (blöde Frage, musst du ja wenn du ein TikTakTo Spiel machst)?
Dann müsstest du ja auf dein Formulat zeichen können. In Delphi geht das über Canvas. Müsste eigentlich auch in C++ gehen
02/20/2010 22:41 ^darkwing#8
Quote:
du arbeitest mit einer GUI (blöde Frage, musst du ja wenn du ein TikTakTo Spiel machst)?
Eben nicht! Man könnte es genauso auf der Konsole machen. Man könnte sogar verschiedene Bibliotheken für die GUI verwenden. Man könnte Schnittstellen vom Betriebssytem nutzen.

Mir ist nicht ersichtlich welcher Weg er eingeschlagen hat und deswegen die Frage.
02/20/2010 22:51 Waynee#9
Gib mal in c++ mit dem draw befehl ein, das eine Linie gezeichnet werden soll...
Dann bekommst du in dem Grafikfenster eine hauchdünne Linie ausgegeben...

Wie machst du jetzt ein Kreuz?

Genau... du nimmst 2 Linien und Kreuzt sie...
Die Linien sind aber immer noch Hauchdünn..
du erhällst also ein extrem kleines Kreuz oder fals du die Linien sehr lang machst,
ein Kreuz, das extrem dünn ist.

Jetzt kannst du natürlich ganz viele Linien statisch nebeneinander zeichnen um eine dicke Linie zu erhalten.
Dann währe das komplette Kreuz aber statisch und somit nicht mehr in der größe veränderbar.

Damit das aber in der Größe veränderbar ist muss man ja mit Variablen arbeiten
und genau die Rechnung, damit ich aus vielen dünnen Linien eine Dicke Linie bekomme
krieg ich nicht hin.

Ich hoffe, das es jetzt verständlicher geworden ist.
02/20/2010 23:10 ^darkwing#10
Quote:
Gib mal in c++ mit dem draw befehl ein, das eine Linie gezeichnet werden soll...
Dann bekommst du in dem Grafikfenster eine hauchdünne Linie ausgegeben...

Wie machst du jetzt ein Kreuz?

Genau... du nimmst 2 Linien und Kreuzt sie...
Ich lasse das einfach mal so stehen...

Du arbeitest vermutlich mit GDI bzw. nutzt Funktionen des Betriebssystems.
Wie wärs wenn du statt Linien, Rechtecke zeichnen lässt?
02/21/2010 00:49 Waynee#11
Ich kann dir nur so viel sagen, wie das ich dafür die graphics.h Datei einbinden musste ^.^
uns wird die Objekt Orientierte Programmierung beigebracht und ich kann nichtma solche allgemeinen Fragen beantworten <.<

Daran kannste schon sehen, wie toll wir geschult werden...

Das mit den Kästchen kann ich mal ausprobieren, wenn ich an dem Programm weiterarbeiten kann...vielen Dank schonma für die Anregung.
02/21/2010 08:48 HardCore.1337#12
Poste bitte mal den Code (aber bitte mit Code Tags) ;)
Dann können wir dir sicher mehr helfen
02/22/2010 11:50 Waynee#13
okay danke erstmal ^^

Ich werde mich jetzt erstmal nochma durch die Einsteigertutorials durchkämpfen, bis ich es erneut bis zur Objektorientierten Programmierung geschafft habe.

Wenn ich soweit bin, mach ich nochmal einen extra Treath auf, in dem ich mein Klassendiagramm zur Verfügung stelle und dann auch auf Hilfe hoffe.

Ich könnte mich wie gesagt mit dem bestehenden Code zufriedengeben, den wir im Plenum erstellt hatten, aber versteh ich davon leider nicht mehr viel.

Alles nochmal neu durchzuarbeiten hilft mir bestimmt sehr viel.

mfg waynee