×

工业设计互动平台

手机短信,快捷登录

微信登录,快人一步

QQ登录

只需一步,快速开始

作者:hadow
来源:rhino3d
=======================================
在大多数人看来,用Rhino做逆向工程,第一反应就是不行,可事实上并非如此,只要掌握方法,用Rhino实现逆向工程还是可以实现的。本例分为两个内容来讲,先讲纯Rhino工具实现逆向操作的方法,另外一个内容是借用插件的方法。
一般扫描出来的模型都是以mesh方式保存的,直接打开即可,如果模型的精度太高,视图旋转就可能会有卡顿现象,所以必须对模型的点数时行一定的精简,至于减多少,没有一个标准,但减面后的模型不能跟原始模型差别太大,要不做出来的东西可能就不太准了。如果你旋转模型,没有卡的现象,当然就没必要去减了。
在Rhino中有一个减面工具:ReduceMesh,可以直接输入需要保留的网格面数,也可以按百分比来让程序自动减少,对话框比较简单,不需要怎么设置。

0010560290yhbjj2hbq2lc.png

先说如何生成曲面
在顶视图画线把这一体的mesh分为几个部分,注意mesh不是直接用split指令,而是用meshsplit,分开的这3个部分就是我们想要做的3个大面。
1514098azl0wr9l8r909g8.jpg
但要记得,尽可能的选择曲率比较平缓的做为大面,像我图中蓝色的面,就不选择切到右侧这部分,因为右侧是曲率比较大的部分,这部分将作为单独的一个面与左边连接,如果一次选择完做一个大面,在曲率大的这里,就会贴不好了。
分割好之后,就建立NURBS曲面。先用plane指令做出一个简单的曲面。从顶视图看,这个面要比蓝色的mesh要大一些,但也不必太大。
151411ww1x99ewwaneje64.jpg
可以看出,左下角的曲面,离mesh比较远,所以需要对曲面进行一定的调整,让它的边界尽可能的与mesh保持一个走势,这样就方便我们保证曲面的质量。当然也可以先画线把这曲面做出来,最终目的是弄出这个曲面。
151755v0iiejyq01dxy3jl.jpg
生成曲面的结构线多少,可以在对话框输入控制,一般来说,并不需要这么密的结构线,因为不方便调整。像这种曲面变化比较平缓,就用简单的1span曲面就可以了,也就是说在UV跨距数都输入1,它就会生成一个3阶的1span曲面了。有人说,那有没有可能生成4阶5阶的曲面,或者2阶的呢?答案是可以的,但不是这里的UV跨距数控制。

有一部分曲面曲面阶数改变一下,可以看到效果上去的时候,距就近似算法,所以你再,又以贴。当然做得越多,就变化越来越小,说明每次它都在计算,直到做到最贴一般情况下,都没必要做每次变化都好大,说明你的参考曲面可能做得不是太好。

虽然曲面已经贴上,但有时候精度可能也不够,需要进行一些细微的调整,如何调整又能保持曲面和mesh的贴合?在这里需要用到contour指令,其作用是在mesh和曲面上生成截面线,看着两条曲线的位置来判断曲面的边界是否合适。选择mesh的时候,最好把全部都选上,这样就容易判断曲面延伸到边界,位置是否合理。因为mesh都是由很多三角面拼起来,所以在上面生成的截面线,都是polyline,而不是3阶的曲线,为了区分,方便可以把这两种线以不同颜色区分,用selpolyline可以选择到mesh上的线。 像下图中,曲面的边界明显不在mesh上,虽然中间的部分看起来还不错,所以必须把这条边再抬起来一些。抬起来最好不要用XYZ直接拖动,用moveUVN沿着法线方向移动。抬高后的曲面,基本就延着mesh走到倒角的位置了。
1732440mhdu0u9qnhz1nnm.jpg

173253c8cbho6gg2znzp8h.jpg

这里可能会有人有疑问,为何不把曲面边界事先画在倒角的附近,让做出来的曲面离倒角的边更近,不是更好控制吗?当然这也是一个方法,但画线可能没这么方便而已。

还有contour指令不支持历史记录,所以调起来挺不方便,但也不是没方法,可以在需要调整的位置选出几条截面线投影到曲面上,这样就带有历史了,因为投影有历史记录,但是一定不能要太多条,两三条就够了,如果你全部选择曲面上的那些截面线投影,调整的时候曲线也会在动,但是它动的时候会很卡,并没单条线操作顺畅,另外太多条线这样操作还有可能宕机。undefined

检测方法
容许角度
如果你的曲面是在mesh范围之内,设置为180的时候,就会把曲面范围之外的mesh顶点也算进去,如果是1,那就是在你的曲面范围之内的点。一般情况下我们都是检测曲面内的点的误差,如果把之外的顶点也算进来,反而会影响到实际结果,所以只需要设置为1即可。当你的曲面范围大于mesh范围,简单理解为曲面包住你的mesh,那么即便设置为180,也是没啥效果的,因为你的所有点都已曲面的范围之内。
指示线缩放比
下面的统计就是被检测的点数量,还有平均距离什么的,这些数据并不是真正的误差值,具体我也不太清楚这组数据有啥意义。主要是设置是在右边这些设置。
忽略,坏点
这个数值就是我们要设置的误差值,比如说你想知道这些顶点到曲面的距离,是不是都在0.5以内,如果在范围内,就会显示为蓝色。如果超过这个范围,就显示水蓝色。
曲面上
这个参数没得设置,就是0,意思就是点真正意义上的在曲面上。

184232nr558p88g958k7wp.jpg
回到我们的例子检测一下,显示有两个不同的颜色,蓝色就表示在1mm范围内的点,水蓝色的就是大于1mm点。每改一个范围,就要点一下套用,颜色显示也会不同。如果想知道最大误差值是多少在哪看呢?这时候要点关闭,再按F2,会在指令历史中看得到。在这里我想吐槽一下,为什么不直接在这界面上显示呢?undefined

好了,第一部分先讲这些,下一内容讲用插件如何实现。插件相对来说,会更方便。

151406b09izccp4iai9hxm.jpg
1514149dytqqqt6trq6qqq.png
151419ztc8u88d6gunn4e8.jpg
155655xa2ltt8rtayl3f3p.jpg
160441y44z51ptz41z57tc.jpg
184230vm7lov58maj5hegq.jpg
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩回复

文明上网理性发言、请文明用语

乌龙 | 设计总监 | 发表于 2016-3-10 10:50:16
围观学习[s:135]
0 回复

举报

yancj88 | 实习生 | 发表于 2016-11-19 21:16:59
围观学习
0 回复

举报

crab333 | 设计助理 | 发表于 2017-12-14 16:52:36
这个插件叫啥?
0 回复

举报

1069119211 | 实习生 | 发表于 2019-8-15 09:12:25
123457777
0 回复

举报

czz1260988433 | 实习生 | 发表于 2020-1-7 13:02:36
没看懂
0 回复

举报

hua13500 | 设计师 | 发表于 2020-1-13 09:41:44
学习了,挺受用的
0 回复

举报

推荐学习