06/09/2017

--User changes
 -dark.qss is now per-OS.
 -Properly set/reload palette when coming from the palette editor. The latter must be done if they've modified the current palette even if they've clicked cancel.

--Bug fixes
 -Make the following variations safer by using Zeps(): conic, bipolar, edisc, whorl, tan, csc, cot, tanh, sech, csch, coth, auger, bwraps, hypertile3d, hypertile3d1, ortho, poincare, rational3, barycentroid, sschecks, cscq, cschq, scry_3D, splitbrdr, hexcrop, nblur, crob.
 -Fix bug enabling/disabling overwrite button in palette editor.
 -Small optimization for gdoffs, use precalcAtanYX.
 -Properly propagate z through circlesplit, cylinder2 and tile_log variations.
 -Some values in truchet_fill could've been NaN.

--Code changes
 -Make most installation files read only.
 -Qualify many calls with std:: to ensure they're not colliding with glm::
 -Use auto in more places.
This commit is contained in:
Person
2017-06-09 19:38:06 -07:00
parent 11ca4f9000
commit c4e891b18c
30 changed files with 2453 additions and 978 deletions

View File

@ -128,7 +128,7 @@ double DEOpenCLKernelCreator::SolveMaxDERad(double desiredFilterSize, double ss)
return desiredFilterSize;
//The final size doesn't fit, so scale the original down until it fits.
return floor((MaxDEFilterSize() - (ss - 1.0)) / ss);
return std::floor((MaxDEFilterSize() - (ss - 1.0)) / ss);
}
/// <summary>
@ -139,7 +139,7 @@ double DEOpenCLKernelCreator::SolveMaxDERad(double desiredFilterSize, double ss)
/// <returns>The maximum filter box size allowed</returns>
uint DEOpenCLKernelCreator::SolveMaxBoxSize(uint localMem)
{
return uint(floor(std::sqrt(floor(localMem / 16.0))));//Divide by 16 because each element is float4.
return uint(std::floor(std::sqrt(Floor(localMem / 16.0))));//Divide by 16 because each element is float4.
}
/// <summary>

View File

@ -389,4 +389,14 @@ const string* FunctionMapper::GetGlobalFunc(const string& func)
else
return nullptr;
}
/// <summary>
/// Get a copy of the function map.
/// This is useful only for debugging/testing.
/// </summary>
/// <returns>A copy of the function map</returns>
const std::unordered_map<string, string> FunctionMapper::GetGlobalMapCopy()
{
return s_GlobalMap;
}
}

View File

@ -14,6 +14,7 @@ class EMBERCL_API FunctionMapper
public:
FunctionMapper();
static const string* GetGlobalFunc(const string& func);
static const std::unordered_map<string, string> GetGlobalMapCopy();
private:
static std::unordered_map<string, string> s_GlobalMap;