-
Notifications
You must be signed in to change notification settings - Fork 359
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
map.cpp - Fix regression for "up" direction, as used by clocks #225
Comments
@jasoncoon -- I can see two simple ways to fix this.
I'm leaning towards the first option. It would entail the following: A. Subtract 64 from the values stored in Which would you prefer? |
I've confirmed the current I should enable the clock patterns for 1628 rings, but they probably don't make any sense for kraken and chamaeleon. |
Ok, I'm fine either way... just wanted to ensure it was a conscious decision, and not an accidental regression. Note that this will change behavior for existing boards that upgrade, by effectively rotating the output 90 degrees. I'll add to the wiki. |
This is to capture the discussion regarding which way is defaulting to "up" on each board. Specifically, as part of PR #213, "up" was defined to use
64u - hour
(etc.). See commit 0702b26, filemap.cpp
.However, IIRC, the original branches used different values for "up" when defining the clock's location for 3/6/9/12. The issue tracks the review of the following two functions, back to the original (per-product) branches:
drawAnalogClock()
drawSpiralAnalogClock()
The branches in question are:
1628-rings
-- Map.h used255 - hour
kraken64
-- Map.h used255 - hour
parallel
-- N/A, map.h did not exist in that branchfibonacci256
-- Map.h used64 - hour
fibonacci512mini
-- Map.h used255 - hour
fibonacci128
-- Map.h used255 - hour
fibonacci64
-- Map.h used255 - hour
fibonacci32mini
-- Map.h used255 - hour
As can be see, every branch calculated "up" as
255 - hour
, with the exception ofFibonacci256
. OnlyFibonacci256
calculated it as the currently-checked-in code does (using64u - hour
). As an aside, it would likely be more correct to use256u - hour
... casting touint8_t
to cause angle to remain in range [0..255] ... for the other products.This leaves only one question:
The text was updated successfully, but these errors were encountered: