39#include "ramCanvas.hpp"
43 std::chrono::time_point<std::chrono::system_clock> startTime = std::chrono::system_clock::now();
44 const int IMXSIZ = 7680/2;
45 const int IMYSIZ = 4320/2;
46 const int NUMITR = 100;
47 mjr::ramCanvas1c16b hstRamCanvas(IMXSIZ, IMYSIZ, -4.0, 4.0, -2.25, 2.25);
49 const decltype(hstRamCanvas)::coordIntType spanx = 1;
50 const decltype(hstRamCanvas)::coordIntType spany = 1;
51 const decltype(hstRamCanvas)::coordFltType h = 0.05;
52 const decltype(hstRamCanvas)::coordFltType a = 3.0;
53 const decltype(hstRamCanvas)::coordFltType b = 3.0;
55 for(
decltype(hstRamCanvas)::coordIntType y=0;y<hstRamCanvas.getNumPixY();y+=spany) {
57 std::cout << y << std::endl;
58 for(
decltype(hstRamCanvas)::coordIntType x=0;x<hstRamCanvas.getNumPixX();x+=spanx) {
59 decltype(hstRamCanvas)::coordFltType zx = hstRamCanvas.int2realX(x);
60 decltype(hstRamCanvas)::coordFltType zy = hstRamCanvas.int2realY(y);
61 for(
int i=0; i<NUMITR; i++) {
62 decltype(hstRamCanvas)::coordFltType tmpx = zx - h * std::sin(zy + std::tan(a * zy));
63 decltype(hstRamCanvas)::coordFltType tmpy = zy - h * std::sin(zx + std::tan(b * zx));
66 decltype(hstRamCanvas)::coordIntType ix = hstRamCanvas.real2intX(zx);
67 decltype(hstRamCanvas)::coordIntType iy = hstRamCanvas.real2intY(zy);
68 if (hstRamCanvas.isOnCanvas(ix, iy))
69 hstRamCanvas.getPxColorRefNC(ix, iy).tfrmAdd(1);
73 hstRamCanvas.writeTIFFfile(
"pickoverPopcornCNT.tiff");
75 hstRamCanvas.applyHomoPixTfrm(&
decltype(hstRamCanvas)::colorType::tfrmMultClamp, 10);
76 hstRamCanvas.applyHomoPixTfrm(&
decltype(hstRamCanvas)::colorType::tfrmMin, mjr::color3c8b::csCCfractal0RYBCW::numC-1);
77 hstRamCanvas.autoHistStrech();
80 hstRamCanvas.writeTIFFfile(
"pickoverPopcornCOL.tiff",
81 mjr::ramCanvasPixelFilter::ColorSchemeOnChan<
decltype(hstRamCanvas), mjr::color3c8b, mjr::color3c8b::csCCfractal0RYBCW>(hstRamCanvas));
83 std::chrono::duration<double> runTime = std::chrono::system_clock::now() - startTime;
84 std::cout <<
"Total Runtime " << runTime.count() <<
" sec" << std::endl;
int main(int argc, char *argv[])