iCAx开思网

标题: pore精度粗浅认识 [打印本页]

作者: tabwang    时间: 2012-2-9 14:32
标题: pore精度粗浅认识
电脑的计算都是离散的而不是连续的,所以不能无限细分,所以有了精度的概念。
直观一点,一条直线段是由无限个连续点组成的,但是对电脑来说不可能生成无限个点来表达这条直线,而是通过很多距离非常小的点来表达,这个距离是如此的小以致可以忽略,这个就是精度的原始意义。当距离小于电脑设定的某个值时就会认为这个距离是0了,而这个距离值的设定是由精度来确定的。
精度高了,自然模型的精度就高了,包括显示、实际产生的机会都会有更高的精度,但同时也更耗费资源,运算速度会降低。
绝对精度是不依赖于模型的大小的,比如你设绝对精度是0.01,那么不管你模型是多大还是多小,对于小于0.001的距离电脑肯定都会认为是零值(注意不是0.01,通常都会有一个安全系数,所以要比0.01小,但会比0.001大),而对于0.01以上的距离是肯定不会认为是零距离。
相对精度是和模型大小有关系的,它设定的是一个比例值,比如相对精度0.001,如果模型最大尺寸是100,那么就和绝对精度100*0.001=0.1的效果是一样的,而如果模型最大尺寸是1000,那么就和绝对精度1.0是一样的,从这也可以看到当模型很大的时候采用相对精度的话,在模型上创建一些小特征就会导致失败,比如1000的模型,0.001的相对精度如果你要创建0.1的孔,可能就会导致创建好的孔不显示或者失败了。而如果你设为绝对精度0.1的话,那就不会有这个问题


作者: z248369    时间: 2012-2-9 17:58
嗯,不错,确实如此。{:soso_e163:}
作者: 114121096    时间: 2012-2-9 21:14

作者: gdl_heero    时间: 2012-2-10 14:14
有理有理,学习了
作者: zhrlian    时间: 2012-2-10 16:47
确有其事
作者: z248369    时间: 2012-2-10 17:20
于精度在三维绘图软件中的一些浅析。 2011-6-27 23:43阅读(12)下一篇:小诗 |返回日志列表 赞赞赞赞转载分享(2)评论复制地址编辑


许多人都有过导入三维图档会有破面的现象,一般用同种软件保存前为实体时,转换后的图档打开一般不会出现紫色(破面),但如果用其它的软件打开时,则会满屏开花了。网上有许多的方法来解决修复,但如果没有相对的技术熟练程度,则可能感觉无处下手,甚至于重画一个的时间都有了,这也是有些朋友对破面畏之如虎的原因之一。下面我主要讲讲如何通过控制精度来处理破面。

    首先,我们必须了解什么是精度。作为任何一款三维绘图软件,都如我们生活的世界一样,由无数的点、线、面构成。而理论上点和点、线和线、面和面直接是无间隙的,是零接触、零距离的。但由于客观技术的限制,软件只能在某个范围内认为它们是相接触的,如在PROE内的范围值为0.01-0.000001。其中精度又分为相对精度和绝对精度。

相对精度:是Pro/ENGINEER中测量精度的缺省方法,相对精度是通过将模型中允许的最短边除以模型总尺寸计算得出,将模型总尺寸定义为模型边界框的对角线长度.模型的缺省相对精度为0.0012 ,这意味着模型上的最小边与模型尺寸比率不能小于该值。例如,如果模型尺寸为1000毫米,模型最小边可以为1.2毫米,1.2毫米/1000毫米=0.0012 。如果要创建非常小的特征可将精度增加到0.0001 ;如果使用配置选项accuracy_lower_bound 可达到0.000001 。 (注释:增加精度会使再生时间加长,文件变大,只有在您用其它方法无法解决此问题时才可增加精度。)

    绝对精度:通常应尽可能使用缺省的相对精度,这可以使精度适应模型的尺寸改变,但有时需要知道按绝对单位表示的精度为此就要使用绝对精度,绝对精度是按模型的单位设置的。例如,如果将绝对精度设置为0.001英寸,允许的最小边则为0.001英寸。当通过IGES文件或一些其它常用格式输入或输出信息时,主要使用的是绝对精度。例如如果要从另一个软件包传送文件就要将两个系统设置成相同的绝对精度。这将有助于最大程度地减小传送中的错误。请注意,相对精度为一比值,无单位,绝对精度为一实数值,有单位。

用钣金件来举例,如拉伸1000mm的板时,则钻0.1mm的孔时则会报错。日常的字体拉伸、倒圆角、曲面的相切及模具的分模之类的一些相关错误,都可以此方法解决。

既然大家对精度已经有了一些初步的了解,那么我就继续讲讲如何通过精度来修复曲面。新建一空PART档,然后在属性里调低精度(就是将精度值改大),导入特征,试试效果如何。但是这样治标不治本,并不能完全解决此种问题。俗话说的好:防范是解决问题最好的手段。在问题没有发生时就解决了问题是最有效的了,当然“亡羊补牢,犹未晚也。”但是这“补”可不好弄啊。用UG和PROE做实验得,用UG转图档到PROE内时出现的破面几率较少,反之则较多。原因分析为UG的精度较PROE的精度高。同规格下PROE默认相对精度是0.0012,  UG是0.0254,可见UG的精度大约是PROE的20倍。由上述结果可得:UG在导出曲面复杂且有多处修改的图档时,如对方用低精度软件时,最好调整公差(即零件导出精度),这样可大大减少对方打开时出现破面的几率。反之,则应该调大导入精度或零件本身精度了。

本文最后对同事啊标的帮助表示感谢,并希望能对大家今后的工作有一些帮助。参考内容来自开思论坛。(附一些高手的观点以供大家参考)

(孤峰醉酒 wrote:在 Pro/ENGINEER 里可以使用 Accuracy 命令来修改零件或组件的精度。零件的精度是一个与零件大小的相对值,有效值范围为 0.01 到 0.0001,缺省值是 0.0012。注意当你提高零件精度(减少相对精度的数值)后,零件在生的时间也会加长。你可以修改配置文件选项 “accuracy_lower_bound”来修改相对精度值的下限,有效的下限值为1.0000e-6 ~ 1.0000e-4。 零件精度值要小于零件上的最短边与包容零件的长方体的最长边的比值。除非有必要,一般情况下使用缺省的精度设置即可。在以下情况下,你可能需要改变零件的精度: 在一个很大的零件上添加一个非常小的特征。  用两个零件使用相交法(融合或切割)来生成新零件时。两个源零件要兼容,它们就必须具有相同的绝对精度。要使用相同的绝对精度,可以估计两个零件的尺寸并分别乘于各自的相对精度值,如果结果不一样,可以改变零件的相对精度值直到结果相同为止。例如,小零件的尺寸是100,相对精度值是0.01,乘积(绝对精度)就是1;大零件的尺寸是1000,相对精度值也是0.01,乘积(绝对精度)就是10,要使两个零件的绝对精度值相同,可将大零件的相对精度值该为0.001。修改零件的相对精度可选择 Setup > Accuracy。修改精度值后整个零件将自动再生。
绝对精度和相对精度:
绝对精度使 Pro/ENGINEER 可以辨认的最小尺寸(使用当前的系统单位)。
要使绝对精度功能可用,可将系统配置文件选项“enable_absolute_accuracy”设置为“yes”。绝对精度功能可使不同尺寸的零件或不同精度设置的零件(例如从其他系统导入的零件)可以良好地配合在一起。在17.0版之前,所有的零件都采用相对精度,因此当你从另一个不同大小的零件复制或融合几何的时候,你需要使用不同的绝对精度工作。通常情况下,对于大多数零件你应该继续使用相对精度。在以下情况下才需要考虑使用绝对精度:在某些操作,例如 Merge 和 Cutout 等,这些操作从其他零件复制了几何模型。  为制造和模具设计准备设计模型。要使导入的几何(Geometry)和目标零件相适合。你可以通过以下两个办法来使一组零件的精度相适合:  给它们设置相同的绝对精度。 以其中一个零件(通常是最小的零件)为准,将它的绝对精度值赋予其他所有零件。  你可以通过 ACCURACY 菜单来设置零件的绝对精度(或叫分辨率)。若系统配置文件选项“enable_absolute_accuracy”已经设置为“yes”,则系统出现以下选项:
Relative--设置相对精度  

Absolute--设置绝对精度  
缺省的情况下系统采用相对精度。用系统配置文件选项“default_abs_accuracy”可设置系统缺省的绝对精度值。绝对精度值将持续有效,直到你下次修改它的值为止。修改绝对精度值时,可使用 Select Part 选项从当前 Session 里选择零件,使当前零件使用该零件的绝对精度值。
在Pro/e裡的相對精度 Relative Accuracy 內訂值為0.0012,其範圍為 0.01到0.0001  
可以在Config.pro內增加一參數”accuracy_lower_bound 0.0001 ”(其範圍為1.0000e-6 ~ 1.0000e-4)  
其零件精度值要小於零件上的最短邊與包容零件的長方體的最長邊的比值。一般情況下使用內訂值即可。  但是在一個很大的零件上添加一個非常小的特徵或用兩個零件使用Merge OR Cut 來產生成新零件時。你可能需要改變零件的精度,兩個零件要Merge OR Cut,它們就必須具有相同的絕對精度。可以估計兩個零件是否使用相同的絕對精度,可將兩個零件的尺寸並分別乘於各自的相對精度值,如果結果不一樣,可以改變零件的相對精度值直到結果相同為止。 如: 小零件的尺寸是100,相對精度值是0.01,其絕對精度就等於是1(100*0.01=1)  
大零件的尺寸是1000,相對精度值也是0.01,其絕對精度就等於是10(1000*0.01=10)  
要使兩個零件的絕對精度值相同,可將大零件的相對精度值該為0.001。絕對精度的設定:  
可以使用當中一個零件(通常都是找最小的零件)絕對精度值為基準,其他所有零件皆設定相同的絕對精度值。絕對精度可使不同尺寸的零件或不同精度設置的零件可以良好地配合在一起。因系統內定值,所有的零件都採用相對精度,因此當你從另一個不同大小的零件做Merge OR Cut時,可能就需要使用不同的絕對精度。但是一般情況下可以使用內訂的相對精度即可。何時需要使用到絕對精度呢?  
1.兩個零件使用Merge OR Cut 來產生成新零件。  
2.為製造和模具設計所產生的零件。  
3.為了要使輸入的零件幾何(Geometry)和目標零件相同。  
提高精度值(給一個較小的Accuracy數值)  雖然可以解決在模具設計時產生的mold Volume不能夠分割和在實體建模時會有Geom Check的特征等等問題 但是精度越高,Regeneration零件的時間也會越長。

ganxuesong:精度设置对导入数据的影响:
1、导入期间所使用的设置可能会影响结果,精度设置在导入几何的质量方面起重要作用。
2、导入期间使用相对精度比使用公司规定的精度值能产生更高质量的导入几何。
3、导入期间Pro/ENGINEER可将精度与某些格式的第三方文件的精度相匹配,精度匹配通常能提供更好的结果。
4、尝试以不同精度设置进行导入,并选择质量更高的模型。
5、如果希望使用不同的精度值,可在导入之后更改精度。

https://v.icax.org/2329p1p1



作者: z248369    时间: 2012-2-10 17:21
以上是我自己写的一篇文章,写了一些自己的看法,还请大家批评指正。{:soso_e181:}
作者: tabwang    时间: 2012-2-11 09:32
抛砖引玉啊
作者: cadfu    时间: 2012-2-12 08:45
表达通俗易懂
作者: api163    时间: 2012-2-12 11:13
写得不错
作者: nimo26    时间: 2012-2-13 14:18
无私的奉献!顶楼主!




欢迎光临 iCAx开思网 (https://www.icax.org/) Powered by Discuz! X3.3