struct ToleranceParams { float Epsilon; float CurveTolerance; float CollinearityTolerance; float IntersectionEpsilon; float FillLowerScale; float FillUpperScale; float FillAliasedLowerScale; float FillAliasedUpperScale; float StrokeLowerScale; float StrokeUpperScale; float HintedStrokeLowerScale; float HintedStrokeUpperScale; float Scale9LowerScale; float Scale9UpperScale; float EdgeAAScale; float MorphTolerance; float MinDet3D; float MinScale3D; unsigned CurveRecursionLimit; };
ToleranceParams describe the tolerance values which control how smoothly surfaces/shapes/strokes are tessellated for rendering.
The LowerScale and UpperScale indicates the range of scales (lower and upper) that can be reused in cache.
Eg:
if (ShapeScale >= CachedScale * tolerance.FillLowerScale && ShapeScale <= CachedScale * tolerance.FillUpperScale) { . . . Can use cached mesh }
The same is for strokes.
Data Member |
Description |
Tolerance in screen space, when the curves can be treated as line segments. | |
Tessellation is a recursive process, this is the maximum number of recursions to perform before stopping. This parameter can be used to limit the maximum quality of produced meshes. | |
Curve tolerance in screen space. | |
Additional EdgeAA scale. Normally it is 1.0, but for more consistent look it should be slightly less than 1.0. This value significantly improves thin vector elements in UI-like applications. | |
Horizontal and vertical epsilon in screen space. | |
Scale tolerances for non-EdgeAA. | |
Scale tolerances for non-EdgeAA. | |
Scale tolerances for EdgeAA. | |
Scale tolerance for EdgeAA. | |
Scale tolerances for hinted strokes. | |
Scale tolerances for hinted strokes. | |
Epsilon to calculate intersections in screen space. | |
Determinant value under which a shape's 3D translation/rotation will be removed. | |
Minimum scaling value to clamp to for a shape's 3D matrix. | |
Morphing ratio tolerance. Mostly used to eliminate inequity of floats, when they are essentially equal. | |
Scale tolerances for scale9 (better handling in 3D). | |
Scale tolerances for scale9 (better handling in 3D). | |
Scale tolerances for regular strokes. | |
Scale tolerances for regular strokes. |
Method |
Description |
ToleranceParams constructor. |
Render_ToleranceParams.h