Mercurial > sdl-ios-xcode
comparison test/testintersections.c @ 3536:0267b8b1595c
Added interfaces for batch drawing of points, lines and rects:
SDL_DrawPoints()
SDL_BlendPoints()
SDL_BlendLines()
SDL_DrawLines()
SDL_FillRects()
SDL_BlendRects()
SDL_RenderPoints()
SDL_RenderLines()
SDL_RenderRects()
Renamed SDL_RenderFill() to SDL_RenderRect()
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Wed, 09 Dec 2009 15:56:56 +0000 |
parents | 438ba87e9578 |
children | f638ded38b8a |
comparison
equal
deleted
inserted
replaced
3535:b403f790df65 | 3536:0267b8b1595c |
---|---|
148 SDL_GetWindowSize(window, &window_w, &window_h); | 148 SDL_GetWindowSize(window, &window_w, &window_h); |
149 | 149 |
150 SDL_SetRenderDrawBlendMode(SDL_BLENDMODE_NONE); | 150 SDL_SetRenderDrawBlendMode(SDL_BLENDMODE_NONE); |
151 for (i = 0; i < num_rects; ++i) { | 151 for (i = 0; i < num_rects; ++i) { |
152 SDL_SetRenderDrawColor(255, 127, 0, 255); | 152 SDL_SetRenderDrawColor(255, 127, 0, 255); |
153 SDL_RenderFill(&rects[i]); | 153 SDL_RenderRect(&rects[i]); |
154 } | 154 } |
155 SDL_SetRenderDrawBlendMode(SDL_BLENDMODE_NONE); | 155 SDL_SetRenderDrawBlendMode(SDL_BLENDMODE_NONE); |
156 } | 156 } |
157 | 157 |
158 static void | 158 static void |
195 for (i = 0; i < num_rects; i++) | 195 for (i = 0; i < num_rects; i++) |
196 for (j = i + 1; j < num_rects; j++) { | 196 for (j = i + 1; j < num_rects; j++) { |
197 SDL_Rect r; | 197 SDL_Rect r; |
198 if (SDL_IntersectRect(&rects[i], &rects[j], &r)) { | 198 if (SDL_IntersectRect(&rects[i], &rects[j], &r)) { |
199 SDL_SetRenderDrawColor(255, 200, 0, 255); | 199 SDL_SetRenderDrawColor(255, 200, 0, 255); |
200 SDL_RenderFill(&r); | 200 SDL_RenderRect(&r); |
201 } | 201 } |
202 } | 202 } |
203 | 203 |
204 SDL_SetRenderDrawBlendMode(SDL_BLENDMODE_NONE); | 204 SDL_SetRenderDrawBlendMode(SDL_BLENDMODE_NONE); |
205 } | 205 } |
270 | 270 |
271 /* Create the windows and initialize the renderers */ | 271 /* Create the windows and initialize the renderers */ |
272 for (i = 0; i < state->num_windows; ++i) { | 272 for (i = 0; i < state->num_windows; ++i) { |
273 SDL_SelectRenderer(state->windows[i]); | 273 SDL_SelectRenderer(state->windows[i]); |
274 SDL_SetRenderDrawColor(0xA0, 0xA0, 0xA0, 0xFF); | 274 SDL_SetRenderDrawColor(0xA0, 0xA0, 0xA0, 0xFF); |
275 SDL_RenderFill(NULL); | 275 SDL_RenderRect(NULL); |
276 } | 276 } |
277 | 277 |
278 srand(time(NULL)); | 278 srand(time(NULL)); |
279 | 279 |
280 /* Main render loop */ | 280 /* Main render loop */ |
324 case SDL_WINDOWEVENT: | 324 case SDL_WINDOWEVENT: |
325 switch (event.window.event) { | 325 switch (event.window.event) { |
326 case SDL_WINDOWEVENT_EXPOSED: | 326 case SDL_WINDOWEVENT_EXPOSED: |
327 SDL_SelectRenderer(event.window.windowID); | 327 SDL_SelectRenderer(event.window.windowID); |
328 SDL_SetRenderDrawColor(0xA0, 0xA0, 0xA0, 0xFF); | 328 SDL_SetRenderDrawColor(0xA0, 0xA0, 0xA0, 0xFF); |
329 SDL_RenderFill(NULL); | 329 SDL_RenderRect(NULL); |
330 break; | 330 break; |
331 } | 331 } |
332 break; | 332 break; |
333 default: | 333 default: |
334 break; | 334 break; |
335 } | 335 } |
336 } | 336 } |
337 for (i = 0; i < state->num_windows; ++i) { | 337 for (i = 0; i < state->num_windows; ++i) { |
338 SDL_SelectRenderer(state->windows[i]); | 338 SDL_SelectRenderer(state->windows[i]); |
339 SDL_SetRenderDrawColor(0xA0, 0xA0, 0xA0, 0xFF); | 339 SDL_SetRenderDrawColor(0xA0, 0xA0, 0xA0, 0xFF); |
340 SDL_RenderFill(NULL); | 340 SDL_RenderRect(NULL); |
341 | 341 |
342 DrawRects(state->windows[i]); | 342 DrawRects(state->windows[i]); |
343 DrawPoints(state->windows[i]); | 343 DrawPoints(state->windows[i]); |
344 DrawRectRectIntersections(state->windows[i]); | 344 DrawRectRectIntersections(state->windows[i]); |
345 DrawLines(state->windows[i]); | 345 DrawLines(state->windows[i]); |