Bug 1090 - Sign of whisk mount angles are backwards
Summary: Sign of whisk mount angles are backwards
Status: RESOLVED FIXED
Alias: None
Product: DIRSIG4
Classification: Unclassified
Component: Platform (show other bugs)
Version: 4.5.3-release
Hardware: All All
: P5 major
Assignee: Scott D. Brown
URL:
Depends on:
Blocks:
 
Reported: 2014-02-06 12:13 EST by Scott D. Brown
Modified: 2014-02-10 16:26 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Scott D. Brown 2014-02-06 12:13:24 EST
The platform is supposed to be a right-handed coordinate system.  Therefore, the start and stop angles on the whisk mount should be such that a negative angle would steer an attached camera to look "to the right" and a negative angle would be "to the left" of the platform.  This makes more sense when we think about biasing a scan window to account for an off-nadir area.  If I want to have a scan window that is "off to the left" of my platform rather than nadir, then I should add a POSITIVE angle bias to my +/- start/stop angles.  However, when we recently tried this, we found we needed to add a NEGATIVE bias.

Upon further inspection, we found that the mount rotation angle computed in the whisk mount was negated before creating the rotation transform.  This explains the observations made by RIT and other users.
Comment 1 Scott D. Brown 2014-02-10 15:37:20 EST
The ultimate goal here is to have these angles be consistent with the right-hand rule convention.  If we simply remove the angle negation of the computed angle, then existing .platform files will behave different.  Therefore, we need to implement a change that fixes the problem if the user does an open/save cycle in the GUI.  The following is proposed.
* The angle negation will be removed in the transform calculation.
* A new attribute will be added to the whisk mount XML called "anglemethod" that will be assigned either "righthanded" (for right-hand rule) or "lefthanded" (for left-hand rule)
* If the attribute is missing or is set to "lefthanded", the sign of the angles will be flipped.
* When a file is written, it will always be written "righthanded"

This approach allows the code to be switched from a left-handed convention and assures that the current left-handed angles will be converted to right-handed during an open/save cycle.
Comment 2 Scott D. Brown 2014-02-10 16:26:25 EST
Verified a fix in the trunk (4.6 dev) and 4.5.4 release tag.