求两张图片pdf合在一起起可以变成3D效果的图

本课程是基于 AutoCAD Map3D,结合测绘行业应用的实际情况,结合制图与入库两方面的需求。提出利用 AutoCAD

Map3D 的 fdo 技术,实现图库一体化的途径,从而达到优化和简化测绘工作的环节,达到集约人力成本的目的。适时的提供一

整套的解决方案。在基础测绘数据生产方面,结合近年国家新标准的出台,例如 2008 年的大比例尺地形图图示等规范的出台,

适时制作图库、线型库、符号库、字库,以满足基础行业的需求,进而按照行业需求定制一些测绘功能,以丰富 AutoCAD

Map3d 的功能,实现其本地化和行业化。

课程类型:技术讲座上传时间:

课件视频为 wrf格式,请下载

webex播放器进行观看!

中铁第四勘察设计院集团有限公司

1999 起就职于中铁第四勘察设计院集

团有限公司,现任职于航空勘察处制

图室主任。有着十年的 Autocad 和

开发经历,长期从事测绘行业,对于

有深刻了解。 内容来自淘豆网转载请标明出处.


由于OpenGLES的进度再度搁浅,所以准备从再次学习3D图形的深层次的知识,这一篇主要讲的是如何使用矩阵表示旋转、缩放、投影、镜像、切变,这些线性变换将会由浅入深,也算是为了后面的仿射变换做铺垫吧!接下来,我们一一看这些线性变换.


日常开发过程中旋转是一种很常见的图形变换,现在我们就对2D环境下和3D环境下的图像变换进行讲解说明.

假设现在物体现在就在原点位置,例如下图.


然后物体旋转角度为θ = 3/π,在旋转当中经常被认为逆时针为正方向,顺时针为负方向,那么对于基向量p,q是怎么变化的呢?如下图所示.这里我直接用绘图工具了,图片粗糙请见谅.

我们从图片中可以看到旋转后的新向量p1,q1的值(当然了,实际上是根据三角函数计计算出来的),然后通过这两个值我们就可以构造出如下通用旋转矩阵.通过下面的矩阵,我们是不是很熟悉呢?有没有仿射变换的赶脚.不要着急,我们慢慢看.

在3D的环境下,我们讨论的不再是绕点旋转,而是绕轴旋转.虽然是绕轴旋转,我们也要定义出正负方向来.在左右坐标系中的情况是有所不同的,什么?不知道左右坐标系如何定义的?那么看下图所示.


那么在我们的坐标系中如何判断出正负方向呢?比如我们在左手坐标系中需要使用的左手法则俩判断正负方向,而在右手坐标系中则正好相反.我们就拿在左手左边系为例,法则示意图如下所示.(左右手法则不过多解释,如果不懂请自行查看高中物理相关知识)

|从哪里看|正方向|负方向|
|从轴的负端点向正端点看|逆时针|顺时针|
|从轴的正端点向负端点看|顺时针|逆时针|

上面我们了解完旋转方向了,接下来我们先看看三种特殊情况,分别绕x,y,z轴进行旋转.

我们还是来看基向量的变化,首先对于3D中的基向量p ,q ,r由于是绕x轴进行旋转的,所以说基向量p是没有任何变化的,变化的只有q ,r两个基向量,假设旋转的角度θ = 3/π,那么如下图所示.

然后如果在2D中通过三角函数公式,我们可以获得以下的旋转变换矩阵.

那么绕y,z轴与之类似,我就不做图了,直接上公式了.

那么上面看完了三种特殊的旋转方式,接下来,我们就看一下在3D中绕任意轴旋转的情况.

如图所示,如果向量v(粉色)绕轴向量n旋转得到向量v'(粉色),我们直接如果直接观察的话是非常困难的.


但是如果我们把向量v和向量v'进行***,然后把旋转的θ放在一个平面中来解决问题,这样,我们的旋转问题就转化为简单的2D问题了.如下图所示.

这里我要对各个向量做一下解释说明,
其中nv在旋转轴上的投影 (假设旋转轴为n',那么n=n'(v·n'));
v'为旋转之后的向量 ;
pv垂直于n的分量(p'同理);
ω为同时垂直于np的向量,长度与p相等.

上面基本我们把所有的向量解释了,现在已经知道的条件是向量v和旋转轴n'以及旋转角度θ要计算的是向量v'.(怎么跟计算题似的?)

整体的思路是这样的,我们可以使用向量n和向量p'表示向量v',v' = n +p';然后n=n'(v·n')以及p'=ωsinθ+ncosθ,这三个向量表示公式来进行表示***.计算过程如下.(说明:由于时间原因,本人就直接用纸写了计算过程了.骚栋的字是夏练三伏 冬练三九,终究还是败了)

首先我们先对p'=ωsinθ+pcosθ进行解析,步骤如下

上面我们已经计算出p'然后带入v' = n +p',计算如下所示

现在我们既然有了转换关系,那么我们就要对三个基向量p ,q ,r进项转换了,我们就拿其中p = [1,0,0]来举例说明.其中旋转轴向量n' = [nx ,ny,nz],那么经过旋转之后的基向量p'是什么情况呢?步骤如下所示.

结果上面的重重计算,我们终于得到了绕任意轴n = [nx ,ny,nz],的旋转矩阵.


相比于旋转而言,缩放比较简单,(缩放的定义我就不过度的解释了),我们就从2D的环境和3D环境以及沿着任意方向缩放三个方面来看缩放这个知识点.

2D的环境和3D环境沿着坐标轴缩放

如果沿着坐标轴进行缩放,那么每一个坐标轴都有缩放因子,所以2D环境下有两个缩放因子Kx和Ky,那么基向量p和q根据缩放因子的影响,我们可以得到下面结论.

然后根据变换,我们就可以得到在2D环境下的缩放矩阵.如下所示.

那么,通过2D环境下的缩放矩阵,我们可以得到3D环境下的缩放矩阵.

上面我们把在2D的环境和3D环境的缩放情况说明了一下,接下来我们看一下沿着任意方向缩放的情况,如图所示.(假设在向量n方向上的缩放因子为k)

在图中n为缩放方向,v为缩放之前的向量,v'为缩放之后的向量,aa'分别为v和v'垂直于缩放方向的分量,bb'分别为v和v'在缩放方向上的投影.

首先v只是在n的方向上进行了缩放,所以缩放前后a是没有任何改变的,也就是说,a = a';

上面是三个具体的条件,我们根据条件用n,v,k来表示v'.具体的计算过程如下.

上面我们已经得到了v' 的表达式,然后我们就需要对各个基向量进行计算了,这里使用的是基向量p = [1,0],具体的计算过程如下所示.

同理,基向量 q与之类似,结果如下所示.

那么,在2D中的缩放矩阵如下所示.

3D因为原理一样就不在推导了,在3D中的缩放矩阵结果如下所示.


一般来说呢,投影就意味着降维操作.这篇博客主要研究的是正交投影.透视投影将在后面的博客中体现,但是我还是要那两张图片给来说明一下正交投影和透视投影的不同.简单点说正交投影原来的点和投影点的直线相互平行,但是透视投影所有的投影线会相交于一点.如下所示.

接下来我们就直接看看2D和3D环境下的正交投影矩阵.

当然了我们也是可以向任意直线或者平面投影,直线或者平面必须通过原点的.然后我们利用缩放的结果,有如下的结果.


镜像是一种变换,其作用就是按照直线或者平面"翻折".如图所示.

镜像和投影都是可以通过缩放矩阵进行变换的,我们只需要把缩放矩阵的缩放因子设置为-1即可,那么在2D和3D情况下的沿着任意轴的镜像矩阵如下所示.


切变是一种坐标系"扭曲"变换,非均匀的拉伸它,切变的时候角度会发生改变,但是面积(2D)或者是体积(3D)不会发生改变.

具体的解释意义如下所示.

那么在3D环境下的是切变的形式又是如何的呢?如下所示.

当然了,其实切变并不常用.?


经过两三天的写作,整理学习,总算是写完了旋转、缩放、投影、镜像、切变的线性变换,学习3D图形更多的是需要一个本子和一支笔,只有不断的演算才能真正的掌握这些.如果你喜欢骚栋,请继续关注,下一篇我将对矩阵的其他知识以及齐次矩阵的相关知识做研究整理.

最后还是要附上<<3D数学基础 图形与游戏开发>>的pdf版的传送门来结束线性变换的相关知识.

没钱买总不能抢,对于像我一样还在攒钱买新 iPhone 的,或是坚定着 Android 信仰的群众,心水 6s 上的 Live Photo 功能也没办法。但软件方面的问题总好解决,万能的开发者也许能让你早日用上更加炫酷的功能。

Fyuse 就是这样一个特别的摄影工具,它能让你拍出炫酷的 3D 版 Live Photo。


▲ 这图没什么意思,我就盯着看了十分钟而已

倾斜手机,让 3D 照片动起来

总觉得《哈利·波特》里的东西在一点一点实现。如果说 Live Photo 是《哈利·波特》里会动的魔法照片,那 Fyuse 一定就是那个巧克力蛙背后的立体巫师卡吧。

利用手机里的重力感应,你可以像拿着一张真实的 3D 照片那样去看 Fyuse 里的照片。只需要微微左右倾斜手机,就可以看到动起来的 3D 照片了。 

你不需要点进一张照片,只在主界面里就可以预览 3D 照片。Fyuse 为照片添加了各种标签,你可以浏览到许多有趣的热门内容。

自己拍一张 3D 照片,并不难

Fyuse 给用户贴心地准备了多种制作教程,你可以很轻松地学会拍摄你的第一张 3D 照片。

对准要拍摄的物体,按住底部的拍摄按键,然后围绕物体外围移动就可以了,完成后松开手指,和拍摄朋友圈小视频也差不太多。

一个小窍门是,让手机沿弧形移动,尽量让被摄物体始终处于屏幕中间位置,并减少抖动,可以获得更好的效果。

打开刚刚拍摄好的照片,经过短暂的渲染,你就可以预览你刚刚拍摄好的 3D 照片了。值得一提的是,在这一步你还可以添加滤镜和调整各种画面效果。唔,这就是「3D 摄影界」的 Instagram 啊。

接下来就是简单的发布和分享,属于你自己的 3D 照片就这么轻松地制作好了。

Fyuse 将 GIF 比作视频和照片的结合,而 Fyuse 则像是照片和全景照片的结合。

我们曾经推荐过的另一款 3D 照片应用  是通过运算为物体建立一个简单的 3D 模型,为照片中的物体带来 3D 效果。而多玩几次 Fyuse 你就会发现,Fyuse 的照片拍摄说起来其实很像是视频录制。将环形的拍摄轨迹与左右倾斜手机的浏览方式结合,就得到了 3D 照片一般的神奇效果。

虽然并非是真正的 3D 照片,你也可以认为这是一种讨巧,但实现之后的效果仍然是十分让人满意的。试想要多角度展现一个物体,无论是自拍,拍风景,还是拍静物,这样的立体感受可比平面上的一张照片有趣多了。

如果你还没有做好下载的准备,不妨先预览一下神奇的 3D 照片吧。

参考资料

 

随机推荐