zoukankan      html  css  js  c++  java
  • 全景图转水晶球视图原理详解

    前一篇博客中讲到怎么由全景图转到小行星,这次换一种投影方式说下由全景图转到水晶球模式。

    首先,还是要有一副全景图,风景秀丽是不是:

    1. 将其按照经纬展开法,贴到单位球面上。图像第一行聚集在一起成为球体的北极点;图像的最后一行像素聚集在一起成为球的南极点。

    2. 设定投影平面为与南极点相切的平面,观察者视点可以视为在无穷远处,我们要做的就是讲下半球面垂直投影到该平面上。

    3. 根据球面坐标(theta, fi),根据球面坐标theta值可以判断像素点是不是在需要投影的南半球面,而根据fi值可以解算出球面坐标系下的(x,y)坐标。

    4. 将符合南半球面的像素点(x,y)坐标转换到具体的图像坐标系,得到图像坐标(u,v)。

    当然,具体球面坐标系三个轴的朝向可以根据自己的习惯设定,符合右手坐标系准则即可。

    同理,当你转动球体的时候,球面不同位置半球的像素点将会投影到图像平面上,从而实现仿佛在转动水晶球的效果。

     下图是不同视角下观看到的水晶球效果图:

    我向右拨动水晶球,gif效果如下:

  • 相关阅读:
    [HDU]1086You can Solve a Geometry Problem too
    [HDU]2161Primes
    [HDU]2098分拆素数和
    [HDU]1431素数回文
    [HDU]1527取石子游戏
    [HDU]2092整数解
    [HDU]1405The Last Practice
    [HDU]2565放大的X
    [HDU]1723Distribute Message
    [HDU]1208Pascal's Travels
  • 原文地址:https://www.cnblogs.com/riddick/p/9979085.html
Copyright © 2011-2022 走看看