adafruit / adafruit/Adafruit_WebSerial_3DModelViewer
Suggestions: Heading Offset Control and Axes Clarification
- Dominant language
- JavaScript
- Stars
- 15
- Forks
- 33
- PR merge metrics
- No merged PRs in 30d
Description
Hello!
For the Viewer suggestion box:
- Consider adding a "heading offset" user interface control that simply rotates the entire rendered scene around the vertical axis - perhaps a slider that goes from 0 to 360 degrees. Why? When I run the Viewer https://adafruit.github.io/Adafruit_WebSerial_3DModelViewer/ in Quaternion mode, I would like to hold my motion sensor (Adafruit 3463 with Arduino sketch "calibrated_orientation.ino") up near my computer screen and watch the bunny exactly follow my sensor rotations. It almost does that, except the rendered scene is confusingly rotated about 90 degrees because The Viewer doesn't know that my screen faces South. I think it expects my screen to be facing East. A heading offset control would allow adjustment.
- Consider adding some visual elements (arrows?) that clarify the Viewer's and Bunny's axes directions. Identify the orientation convention being used. Which way is +x +y +z? Which way is +pitch +roll +yaw? Also, ensure the scrolling message values are consistent with the axes directions.
- Consider adding an additional selectable 3D model that has familiar pitch/roll/yaw axes, such as an airplane or boat.
I believe those changes would improve the Viewer as an educational tool.
Thanks!
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the Viewer entry point at https://adafruit.github.io/Adafruit_WebSerial_3DModelViewer/ and reproduce Quaternion mode using the calibrated_orientation.ino sketch mentioned in the issue. Review how heading, pitch, roll, yaw, and axis directions are currently presented. Done would require a defined heading adjustment, clear axis conventions and scrolling values, and an additional familiar 3D model.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- computer-graphics, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100