24 namespace FT=fractalTwo;
35 const std::uint32_t maxIters,
37 const std::uint32_t numIters )
40 0.75 * (
static_cast<FT::fltType>(numIters) / static_cast<FT::fltType>(maxIters)) + 0.25 };
43 const std::uint32_t color{
static_cast<std::uint32_t
>(colorMagnitude) };
45 if( std::abs( z + pi ) < 0.1 )
46 return( std::move( std::make_tuple(
47 color, 0x00, color ) ) );
48 if( std::abs( z ) < 0.1 )
49 return( std::move( std::make_tuple(
50 color, color, 0x00 ) ) );
51 if( std::abs( z - twoPi ) < 0.1 )
52 return( std::move( std::make_tuple(
53 color, 0x00, 0x00 ) ) );
54 if( std::abs( z - threePi ) < 0.1 )
55 return( std::move( std::make_tuple(
56 0x00, color, 0x00 ) ) );
57 if( std::abs( z - fourPi ) < 0.1 )
58 return( std::move( std::make_tuple(
59 0x00, 0x00, color ) ) );
60 throw( std::runtime_error(
"Unknown zero..." ) );
66 return( std::sin<FT::fltType>( z ) );
71 return( std::cos<FT::fltType>( z ) );
78 const FT::cmplxType lowerLeft{ (piOverTwo - 0.3), (piOverTwo - 0.65) };
79 const FT::cmplxType upperRight{ (piOverTwo + 0.3), (piOverTwo - 0.05) };
82 const FT::cmplxType lowerLeft{ (piOverTwo - 0.06), (piOverTwo - 0.47) };
83 const FT::cmplxType upperRight{ (piOverTwo + 0.06), (piOverTwo - 0.23) };
88 const std::vector<FT::cmplxType> zeros{
94 const std::uint32_t maxIters{ 50 };
96 const std::shared_ptr<FT::fractalParamsType> fParams{
97 std::make_shared<FT::fractalParamsType>(
std::tuple< std::uint8_t, std::uint8_t, std::uint8_t > colorType
This type is used to declare variables that hold the color of a given pixel in the fractal...
std::complex< fltType > cmplxType
std::shared_ptr< fractalParamsType > getFractalParams(void)