Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

idontknow

unregistriert

71

05.12.2009, 16:44

Alles Trivial, aber aus eigener Neugierde war ich mal so nett:

C-/C++-Quelltext

1
2
3
4
5
6
void DrawLine(int x, int y, int width, int length)
{
    ::HDC myDC = ::GetDC(::GetConsoleWindow());
    ::Rectangle(myDC, x, y, x+length, y+width);
    ::DeleteDC(myDC);
}


Hättest du dir aus der anderen Funktion aber auch denken können!
Minimal komplizierter wirt es wenn du deine Primitiven nicht ausfüllen willst!

mfg

72

05.12.2009, 16:49

hät ich wirklich selber drauf kommen können :roll:
Metal ist keine Musik sondern eine Religion.

babelfish

Alter Hase

Beiträge: 1 222

Wohnort: Schweiz

Beruf: Informatiker

  • Private Nachricht senden

73

05.12.2009, 17:55

Da die Bibliothek ja myLib heisst... Wieviel % davon hast du selbst nachgeforscht / gecodet? :o

Wenn du schon ein paar Funktionen zusammensuchst, würde ich auch irgendwie machen dass man die Engine leicht bedienen kann, und alles schön zusammenarbeitet.

74

05.12.2009, 19:49

wie im Beispiel mit einem Funktionsaufruf kannst du mitlerweile z.B schon Punkte und eine Linien skalieren und irgendwo hin setzen Die Vector Klasse (nur als beispiel) kommt komplett aus meiner Feder
Metal ist keine Musik sondern eine Religion.

75

05.12.2009, 20:28

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <windows.h>
#include <iostream>
#include <KonsolenRendererAllIncludes.h>

using namespace std;

#pragma comment(lib,"KonsolenRenderer.lib")

int main()
{
    PointRenderer* g_pPR = NULL;
    
    CKonsoleVector vk = CKonsoleVector(7,6);
    CKonsoleVector kv = CKonsoleVector(7,1);

    int Points = 20;

    for(int i = 0;i < Points;i++)
    {
        g_pPR->RenderPoint(vk,7);
        g_pPR->RenderPoint(vk - kv,7);
        
        vk.x += 7;
        vk.y += 7;
    }
    for(int i = 20;i > Points; Points++)
    {
        g_pPR->RenderPoint(vk,7);
        g_pPR->RenderPoint(vk + kv,7);
        
        vk.x += 7;
        vk.y -= 7;
    }

    cin.get();
    return 0;
}


Wenn das nicht vereinfacht sein soll weiß ich auch nicht :?
Metal ist keine Musik sondern eine Religion.

Stazer

Alter Hase

Beiträge: 468

Wohnort: Berlin

Beruf: Student

  • Private Nachricht senden

76

05.12.2009, 21:26

bitte nicht using namespace verwenden ;)
es läuft immer die gefahr das es eine funktion 2 mal gibt

idontknow

unregistriert

77

05.12.2009, 21:32

Zitat von »"Fabian Kock"«

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <windows.h>
#include <iostream>
#include <KonsolenRendererAllIncludes.h>

using namespace std;

#pragma comment(lib,"KonsolenRenderer.lib")

int main()
{
    PointRenderer* g_pPR = NULL;
    
    CKonsoleVector vk = CKonsoleVector(7,6);
    CKonsoleVector kv = CKonsoleVector(7,1);

    int Points = 20;

    for(int i = 0;i < Points;i++)
    {
        g_pPR->RenderPoint(vk,7);
        g_pPR->RenderPoint(vk - kv,7);
        
        vk.x += 7;
        vk.y += 7;
    }
    for(int i = 20;i > Points; Points++)
    {
        g_pPR->RenderPoint(vk,7);
        g_pPR->RenderPoint(vk + kv,7);
        
        vk.x += 7;
        vk.y -= 7;
    }

    cin.get();
    return 0;
}


Wenn das nicht vereinfacht sein soll weiß ich auch nicht :?


Nur dass es nicht funktioniert!

78

05.12.2009, 22:28

Ja die 2. For Schleife war auch nur ein Test

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <windows.h> 
#include <iostream> 
#include <KonsolenRendererAllIncludes.h> 

#pragma comment(lib,"KonsolenRenderer.lib") 

int main() 
{ 
    PointRenderer* g_pPR = NULL; 
    
    CKonsoleVector vk = CKonsoleVector(7,6); 
    CKonsoleVector kv = CKonsoleVector(7,1); 

    int Points = 20; 

    for(int i = 0;i < Points;i++) 
    { 
        g_pPR->RenderPoint(vk,7); 
        g_pPR->RenderPoint(vk - kv,7); 
        
        vk.x += 7; 
        vk.y += 7; 
    } 

    cin.get(); 
    return 0; 
}


So gehts hab ich auch getestet.
Dann kommen da zwei reihen von Punkten nebeneinander angeordnet
Metal ist keine Musik sondern eine Religion.

Stazer

Alter Hase

Beiträge: 468

Wohnort: Berlin

Beruf: Student

  • Private Nachricht senden

79

05.12.2009, 22:38

ich weis immernohc nicht wozu das dienen soll

idontknow

unregistriert

80

05.12.2009, 22:49

Ich versteh nicht wie das gehen soll, dein PointRenderer ist ein NULL-Pointer, der auf kein Objekt zeigt, das müsste einen Crash geben und du rufst auch keine statischen Methoden auf von daher, sicher dass du genau DIESEN code getestet hast?

Werbeanzeige