00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef OSDL_LINE_H_
00029 #define OSDL_LINE_H_
00030
00031
00032 #include "OSDLTypes.h"
00033 #include "OSDLPixel.h"
00034
00035
00036 #if ! defined(OSDL_USES_SDL) || OSDL_USES_SDL
00037
00038 #include "SDL.h"
00039
00040 #endif // OSDL_USES_SDL
00041
00042
00043
00044 namespace OSDL
00045 {
00046
00047
00048
00049 namespace Video
00050 {
00051
00052
00053
00054
00055 class Surface ;
00056
00057
00058
00059 namespace TwoDimensional
00060 {
00061
00062
00063
00064 class Point2D ;
00065
00066
00067
00082 namespace Line
00083 {
00084
00085
00086
00087
00088
00089
00090
00091
00092
00113 OSDL_DLL bool drawHorizontal( Surface & targetSurface,
00114 Coordinate xStart, Coordinate xStop, Coordinate y,
00115 Pixels::ColorElement red, Pixels::ColorElement green,
00116 Pixels::ColorElement blue,
00117 Pixels::ColorElement alpha = Pixels::AlphaOpaque ) ;
00118
00119
00120
00142 OSDL_DLL bool drawHorizontal( Surface & targetSurface,
00143 Coordinate xStart, Coordinate xStop, Coordinate y,
00144 Pixels::PixelColor actualColor ) ;
00145
00146
00147
00168 OSDL_DLL bool drawHorizontal( Surface & targetSurface,
00169 Coordinate xStart, Coordinate xStop, Coordinate y,
00170 Pixels::ColorDefinition = Pixels::White ) ;
00171
00172
00173
00194 OSDL_DLL bool drawVertical( Surface & targetSurface,
00195 Coordinate x, Coordinate yStart, Coordinate yStop,
00196 Pixels::ColorElement red, Pixels::ColorElement green,
00197 Pixels::ColorElement blue,
00198 Pixels::ColorElement alpha = Pixels::AlphaOpaque ) ;
00199
00200
00201
00222 OSDL_DLL bool drawVertical( Surface & targetSurface,
00223 Coordinate x, Coordinate yStart, Coordinate yStop,
00224 Pixels::ColorDefinition = Pixels::White ) ;
00225
00226
00227
00228
00229
00230
00231
00232
00233
00234
00235
00256 OSDL_DLL bool draw( Surface & targetSurface,
00257 Coordinate xStart, Coordinate yStart,
00258 Coordinate xStop, Coordinate yStop,
00259 Pixels::ColorElement red, Pixels::ColorElement green,
00260 Pixels::ColorElement blue,
00261 Pixels::ColorElement alpha = Pixels::AlphaOpaque ) ;
00262
00263
00264
00285 OSDL_DLL bool draw( Surface & targetSurface,
00286 Coordinate xStart, Coordinate yStart,
00287 Coordinate xStop, Coordinate yStop,
00288 Pixels::ColorDefinition colorDef = Pixels::White ) ;
00289
00290
00291
00312 OSDL_DLL bool draw( Surface & targetSurface,
00313 Point2D & firstPoint, Point2D & secondPoint,
00314 Pixels::ColorElement red, Pixels::ColorElement green,
00315 Pixels::ColorElement blue,
00316 Pixels::ColorElement alpha = Pixels::AlphaOpaque ) ;
00317
00318
00319
00340 OSDL_DLL bool draw( Surface & targetSurface,
00341 Point2D & firstPoint, Point2D & secondPoint,
00342 Pixels::ColorDefinition colorDef = Pixels::White ) ;
00343
00344
00345
00363 OSDL_DLL bool drawCross( Surface & targetSurface,
00364 const Point2D & center,
00365 Pixels::ColorDefinition colorDef = Pixels::White,
00366 Length squareEdge = 5 ) ;
00367
00368
00369
00387 OSDL_DLL bool drawCross( Surface & targetSurface,
00388 Coordinate xCenter, Coordinate yCenter,
00389 Pixels::ColorDefinition colorDef = Pixels::White,
00390 Length squareEdge = 5 ) ;
00391
00392
00393
00394 }
00395
00396 }
00397
00398 }
00399
00400 }
00401
00402
00403
00404 #endif // OSDL_LINE_H_
00405