aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkMath.cpp
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@chromium.org>2014-09-30 15:22:06 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-09-30 15:22:06 -0700
commitf6fde175b81db98cd3799ee88714a4c579bb44bd (patch)
tree65c29ef52c8868cdbc19e619722ed7fbdacc55c1 /src/core/SkMath.cpp
parent46616af01b412ea984a516fda1ed8ec08e689f29 (diff)
Archive more dead code.
BUG=skia: R=reed@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/617003004
Diffstat (limited to 'src/core/SkMath.cpp')
-rw-r--r--src/core/SkMath.cpp113
1 files changed, 0 insertions, 113 deletions
diff --git a/src/core/SkMath.cpp b/src/core/SkMath.cpp
index aeacebecd4..e33fe55e01 100644
--- a/src/core/SkMath.cpp
+++ b/src/core/SkMath.cpp
@@ -174,116 +174,3 @@ float SkScalarSinCos(float radians, float* cosValue) {
}
return sinValue;
}
-
-#define INTERP_SINTABLE
-#define BUILD_TABLE_AT_RUNTIMEx
-
-#define kTableSize 256
-
-#ifdef BUILD_TABLE_AT_RUNTIME
- static uint16_t gSkSinTable[kTableSize];
-
- static void build_sintable(uint16_t table[]) {
- for (int i = 0; i < kTableSize; i++) {
- double rad = i * 3.141592653589793 / (2*kTableSize);
- double val = sin(rad);
- int ival = (int)(val * SK_Fixed1);
- table[i] = SkToU16(ival);
- }
- }
-#else
- #include "SkSinTable.h"
-#endif
-
-#define SK_Fract1024SizeOver2PI 0x28BE60 /* floatToFract(1024 / 2PI) */
-
-#ifdef INTERP_SINTABLE
-static SkFixed interp_table(const uint16_t table[], int index, int partial255) {
- SkASSERT((unsigned)index < kTableSize);
- SkASSERT((unsigned)partial255 <= 255);
-
- SkFixed lower = table[index];
- SkFixed upper = (index == kTableSize - 1) ? SK_Fixed1 : table[index + 1];
-
- SkASSERT(lower < upper);
- SkASSERT(lower >= 0);
- SkASSERT(upper <= SK_Fixed1);
-
- partial255 += (partial255 >> 7);
- return lower + ((upper - lower) * partial255 >> 8);
-}
-#endif
-
-SkFixed SkFixedSinCos(SkFixed radians, SkFixed* cosValuePtr) {
- SkASSERT(SK_ARRAY_COUNT(gSkSinTable) == kTableSize);
-
-#ifdef BUILD_TABLE_AT_RUNTIME
- static bool gFirstTime = true;
- if (gFirstTime) {
- build_sintable(gSinTable);
- gFirstTime = false;
- }
-#endif
-
- // make radians positive
- SkFixed sinValue, cosValue;
- int32_t cosSign = 0;
- int32_t sinSign = SkExtractSign(radians);
- radians = SkApplySign(radians, sinSign);
- // scale it to 0...1023 ...
-
-#ifdef INTERP_SINTABLE
- radians = SkMulDiv(radians, 2 * kTableSize * 256, SK_FixedPI);
- int findex = radians & (kTableSize * 256 - 1);
- int index = findex >> 8;
- int partial = findex & 255;
- sinValue = interp_table(gSkSinTable, index, partial);
-
- findex = kTableSize * 256 - findex - 1;
- index = findex >> 8;
- partial = findex & 255;
- cosValue = interp_table(gSkSinTable, index, partial);
-
- int quad = ((unsigned)radians / (kTableSize * 256)) & 3;
-#else
- radians = SkMulDiv(radians, 2 * kTableSize, SK_FixedPI);
- int index = radians & (kTableSize - 1);
-
- if (index == 0) {
- sinValue = 0;
- cosValue = SK_Fixed1;
- } else {
- sinValue = gSkSinTable[index];
- cosValue = gSkSinTable[kTableSize - index];
- }
- int quad = ((unsigned)radians / kTableSize) & 3;
-#endif
-
- if (quad & 1) {
- SkTSwap<SkFixed>(sinValue, cosValue);
- }
- if (quad & 2) {
- sinSign = ~sinSign;
- }
- if (((quad - 1) & 2) == 0) {
- cosSign = ~cosSign;
- }
-
- // restore the sign for negative angles
- sinValue = SkApplySign(sinValue, sinSign);
- cosValue = SkApplySign(cosValue, cosSign);
-
-#ifdef SK_DEBUG
- if (1) {
- SkFixed sin2 = SkFixedMul(sinValue, sinValue);
- SkFixed cos2 = SkFixedMul(cosValue, cosValue);
- int diff = cos2 + sin2 - SK_Fixed1;
- SkASSERT(SkAbs32(diff) <= 7);
- }
-#endif
-
- if (cosValuePtr) {
- *cosValuePtr = cosValue;
- }
- return sinValue;
-}