|
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 25.04.2005, 16:05 Titel: [WinAPI] LineTo |
|
|
tja, leider schlägt LineTo fehl. Das hDC wird 2 mal weitergeben bis es zum rendern kommt, funktioneirt aber, da in ner anderen Funktion der das auch übergeben wird alles funktioneit. Die Koordinaten zu denen gezeichnet wird stimmen auch, aber ich sehe trotzdem nix.
CPP: | hDC=BeginPaint(hWnd, NULL);
gpGeometrie->Render(hDC, GetWndMatrix(nWnd), m_WndParams[nWnd].eView, this);
if(m_bAuswahl)
{
DrawSelect(hWnd, nWnd);
}
EndPaint(hWnd, NULL); |
CPP: | for(m_FaceIt=m_Facemap.begin(); m_FaceIt!=m_Facemap.end(); m_FaceIt++)
{
m_FaceIt->second->Render(hDC, mTranslation, View, pWorkWindow);
}
|
CPP: | MoveToEx(hDC, Position[0].x, Position[0].y, NULL);
if(!LineTo(hDC, static_cast<int>(Position[1].x), static_cast<int>(Position[1].y)))
{
Log << LOGE("Linie konnte net gezeichnet werden");
}
LineTo(hDC, Position[2].x, Position[2].y);
LineTo(hDC, Position[0].x, Position[0].y);
|
So, das ist quasi der gesamte code...
hat jemand ne Ahnung, was ich tun soll? _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 25.04.2005, 19:03 Titel: |
|
|
Hast du mal GetLastError() aufgerufen?
C. |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 26.04.2005, 16:07 Titel: |
|
|
Code: | 6 The handle is invalid. ERROR_INVALID_HANDLE |
Das passierte bei einem MoveTo aufruf, mit garantiert korrekten Positionen.
Hm, also ist das HDC kaput? Okey, ich werde das nochmal genau nachprüfen, thx. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 26.04.2005, 16:13 Titel: |
|
|
ok, ich habe es mal nachgetestet, das Handle funktionierte wohl überhaupt net, jetzt habe ich unter dem BegiPaint nochmal ein GetDC gemacht, jetzt geht es... Obwohl das von BeginPaint doch auch gehen müsste? _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
Verfasst am: 26.04.2005, 16:19 Titel: |
|
|
Ja, aber nur bei WM_PAINT. _________________ http://www.sieder25.org/ (Siedler 2 - Remake) |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 26.04.2005, 17:15 Titel: |
|
|
CPP: | hDC=BeginPaint(hWnd, NULL);
if(m_WndParams[nWnd].eView!=PERSPEKTIVE)
{
hDC=GetDC(hWnd);//eigentlich seltsam, das man das neu holen muss, müsste ich nochmal bei gucken
DrawGrid(hWnd, m_WndParams[nWnd].WndScroll, m_WndParams[nWnd].fZoom);
gpGeometrie->Render(hDC, GetWndMatrix(nWnd), m_WndParams[nWnd].eView, this);
if(m_bAuswahl)
{
DrawSelect(hWnd, nWnd);
}
ReleaseDC(hWnd, hDC);
}
EndPaint(hWnd, NULL);
break;
| Jo, hab ich ja bie Wm_PAINT, hätte ich vielleihct doch noch dazu schreiben sollen...
Also, ohne das GetDC() ging es irgendwie net... _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|