diff options
author | 2012-06-27 14:52:40 +0900 | |
---|---|---|
committer | 2012-06-27 16:22:39 +0900 | |
commit | efb63246c2e5df29d62416d48f62e2b57b14de7c (patch) | |
tree | 6575aad86ee1caf9159bf45e27c9086c3ba920bb /native/jni/src/proximity_info.cpp | |
parent | a3f5f51ec4aeb438fc4ad408c085b463ed3f8c82 (diff) | |
download | latinime-efb63246c2e5df29d62416d48f62e2b57b14de7c.tar.gz latinime-efb63246c2e5df29d62416d48f62e2b57b14de7c.tar.xz latinime-efb63246c2e5df29d62416d48f62e2b57b14de7c.zip |
Change native functions' interface for gesture
Change-Id: I106a858f0be7452dd89f425805a6f72aa88c3f65
Diffstat (limited to 'native/jni/src/proximity_info.cpp')
-rw-r--r-- | native/jni/src/proximity_info.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/native/jni/src/proximity_info.cpp b/native/jni/src/proximity_info.cpp index 2ba244a7c..a4a641160 100644 --- a/native/jni/src/proximity_info.cpp +++ b/native/jni/src/proximity_info.cpp @@ -15,6 +15,7 @@ */ #include <assert.h> +#include <math.h> #include <stdio.h> #include <string> @@ -210,4 +211,25 @@ int ProximityInfo::getKeyIndex(const int c) const { } return mCodeToKeyIndex[baseLowerC]; } + +// TODO: [Staging] Optimize +void ProximityInfo::getCenters(int *centerXs, int *centerYs, int *codeToKeyIndex, + int *keyToCodeIndex, int *keyCount, int *keyWidth) const { + *keyCount = KEY_COUNT; + *keyWidth = sqrt((float)MOST_COMMON_KEY_WIDTH_SQUARE); + + for (int i = 0; i < KEY_COUNT; ++i) { + const int code = mKeyCharCodes[i]; + const int lowerCode = toBaseLowerCase(code); + centerXs[i] = mKeyXCoordinates[i] + mKeyWidths[i] / 2; + centerYs[i] = mKeyYCoordinates[i] + mKeyHeights[i] / 2; + codeToKeyIndex[code] = i; + if (code != lowerCode && lowerCode >= 0 && lowerCode <= MAX_CHAR_CODE) { + codeToKeyIndex[lowerCode] = i; + keyToCodeIndex[i] = lowerCode; + } else { + keyToCodeIndex[i] = code; + } + } +} } // namespace latinime |