2016-04-25 99 views
0

我有一個簡單的SDL2窗口,我試圖繪製一條路徑。SDL_RenderDrawLines與鬼線

我可以點擊十次並繪製出了一條符合本規範

if (button == SDL_BUTTON_LEFT) 
{ 
    if (Path.size() == Clicks) return; 
    // Clicks is set by the initializer 
    // Path is a vector of SDL_Points 
    SDL_Point p; 
    p.x = x; 
    p.y = y; 
    Path.push_back(p); 
} 
SDL_Point *points = new SDL_Point[Clicks]; 
for (int i = 0; i < Path.size(); i++) 
{ 
    if (i == Clicks) break; 
    points[i] = Path[i]; 
} 
SDL_RenderClear(ren); 
SDL_SetRenderDrawColor(ren, 0, 255, 0, 255); 
SDL_RenderDrawLines(ren, points, Clicks); 

的正常工作,它允許但我畫的路徑沒有問題,它會創建一種鬼線的是擁有關閉屏幕的頂部。

Here's a picture of the line.

有什麼我可以做,以擺脫這一行,並使用SDL_RenderDrawLines?如果不是我應該使用什麼電話?

回答

0

對我來說,它看起來更像是與參數有問題的SDL_RenderDrawLines()

你檢查的points的大小和Clicks價值?

+0

是的,點擊煽動每次我點擊一個和點擊保持它的大小爲10,我在初始化課程期間設置。 – rudes

+0

馬丁,謝謝你,我開始修補它,發現通過將RenderDrawLines中的Clicks更改爲vector.size(),它完全修復了它! – rudes