diff options
author | Eugene Sandulenko | 2011-12-26 17:32:59 +0000 |
---|---|---|
committer | Strangerke | 2012-04-06 08:18:14 +0200 |
commit | e6a0c23d2c57461305906cb4c62b2b6962915264 (patch) | |
tree | e3300420f52afca4ec48c54a6d3b83b6b6a67697 /engines/mortevielle/droite.cpp | |
parent | 9b6a4264dcaa26d87fa099c0a0dadbb8e37a6241 (diff) | |
download | scummvm-rg350-e6a0c23d2c57461305906cb4c62b2b6962915264.tar.gz scummvm-rg350-e6a0c23d2c57461305906cb4c62b2b6962915264.tar.bz2 scummvm-rg350-e6a0c23d2c57461305906cb4c62b2b6962915264.zip |
MORTEVIELLE: Rename *.h -> *.cpp where they really belong
Diffstat (limited to 'engines/mortevielle/droite.cpp')
-rw-r--r-- | engines/mortevielle/droite.cpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/engines/mortevielle/droite.cpp b/engines/mortevielle/droite.cpp new file mode 100644 index 0000000000..8d254a4afc --- /dev/null +++ b/engines/mortevielle/droite.cpp @@ -0,0 +1,34 @@ +void droite(integer x, integer y, integer xx, integer yy, integer coul) { + integer step, i; + real a, b; + real xr, yr, xro, yro; + + xr = x; + yr = y; + xro = xx; + yro = yy; + /*writeln(le_file,'(',x:4,',',y:4,') ==> (',xx:4,',',yy:4,')');*/ + if (abs(y - yy) > abs(x - xx)) { + a = (real)((x - xx)) / (y - yy); + b = (yr * xro - yro * xr) / (y - yy); + i = y; + if (y > yy) step = -1; + else step = 1; + do { + putpix(gd, trunc(a * i + b), i, coul); + i = i + step; + } while (!(i == yy)); + /*writeln(le_file,'X == ',a:3:3,' * Y + ',b:3:3);*/ + } else { + a = (real)((y - yy)) / (x - xx); + b = ((yro * xr) - (yr * xro)) / (x - xx); + i = x; + if (x > xx) step = -1; + else step = 1; + do { + putpix(gd, i, trunc(a * i + b), coul); + i = i + step; + } while (!(i == xx)); + /*writeln(le_file,'Y == ',a:3:3,' * X + ',b:3:3);*/ + } +}
\ No newline at end of file |