33#include "ramCanvas.hpp"
36mjr::point2d<double> funny(
double x,
double y) {
37 double d = 0.3*std::sin(std::hypot(x, y) / 100);
38 return mjr::point2d<double>(std::cos(d)*x+std::sin(d)*y, -std::sin(d)*x+std::cos(d)*y);
42int main(
int argc,
char *argv[]) {
43 std::chrono::time_point<std::chrono::system_clock> startTime = std::chrono::system_clock::now();
44 mjr::ramCanvas3c8b dRamCanvas;
47 fprintf(stderr,
"ERROR argument required!\n");
52 if((rRet=dRamCanvas.readTIFFfile(argv[1]))) {
53 fprintf(stderr,
"ERROR(%d) reading file %s\n", rRet, argv[1]);
57 double Xo = dRamCanvas.getNumPixX() / 2.0;
58 double Yo = dRamCanvas.getNumPixY() / 2.0;
61 mjr::ramCanvas3c8b uRamCanvas = dRamCanvas.geomTfrmRevArb(funny, Xo, Yo, s);
63 uRamCanvas.writeTIFFfile(
"geomTfrm_Arb.tiff");
65 std::chrono::duration<double> runTime = std::chrono::system_clock::now() - startTime;
66 std::cout <<
"Total Runtime " << runTime.count() <<
" sec" << std::endl;
int main(int argc, char *argv[])