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
Enhancement: view mode for 360-degree panorama photo #79
Conversation
- Implement 360 degree panorama photo viewer mode - Shows a photo image as following data flow; `image` -(projection mapping)-> `offscreenImage` buffer -> screen instead of normal mode; `image` -> screen - Closes issue #56 - Limitations - Disables a zoom feature - Use `if(is360)` conditionals. It is better to separate two mode as individual classes in future. - Fixes `visibleRect`, which control zoom,as same as `offscreenImage` size. that is also keep as same as screen size. - Disables a drag feature - No indication the view direction on the edit pain. - No OpenGL accelaration, it may be very slow or consume many CPU cycles. - Recognize as 360 degree photo which thum image is same or larger than 2048px width and 2:1 ratio. - It do not see EXIF/MXP property because thums don't have it. - There are no button to toggle 360 degree photo mode and a normal mode. Signed-off-by: Hiroshi Miura <miurahr@linux.com>
Codecov Report
@@ Coverage Diff @@
## master #79 +/- ##
============================================
+ Coverage 39.94% 41.67% +1.73%
- Complexity 536 582 +46
============================================
Files 89 92 +3
Lines 4126 4302 +176
Branches 549 573 +24
============================================
+ Hits 1648 1793 +145
- Misses 2346 2367 +21
- Partials 132 142 +10
Continue to review full report at Codecov.
|
@miurahr Thank you very much for this pull request, I'll definitely look into this. About the detection of 360° images: We can get this info from the API, there's a |
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
Now we see Even it got Also fixes bug that it ignore |
- Move panorama related classes to new package 'panorama' - Add unit test for CameraPlane class. Signed-off-by: Hiroshi Miura <miurahr@linux.com>
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
- Change view vector with right button dragging. - Zoom drag with left button. - Right click change view vector where is center. - Middle button to reset zoom level to 1:1. - Calculate new view rotation when mouse is released Signed-off-by: Hiroshi Miura <miurahr@linux.com>
I believe it becomes good enough features to merge. |
I've built a plugin for here and placed on https://bintray.com/osmfj/JOSM/Mapillary |
@miurahr very exciting. I have got it working successfully. It's slow but seems to work! Some suggestions:
Great progress on this! Sharing with the team now. |
I'll merge this pull request today, currently working on some additions before doing the merge:
edit: I'm postponing this until tomorrow. |
Good point @floscher. Let me draw attention to this. |
@eneerhut Could you open new issues for these points? I'd like to follow up and propose improvements one by one from where I can. |
image
-(projection mapping)->offscreenImage
buffer -> screeninstead of normal mode;
image
-> screenif(is360)
conditionals. It is better toseparate two mode as individual classes in future.
visibleRect
, which control zoom,as same asoffscreenImage
size.that is also keep as same as screen size.
cycles.
width and 2:1 ratio.
Signed-off-by: Hiroshi Miura miurahr@linux.com