Revit 内部比较数据的公差: 1e-9

    技术2025-04-11  26

     

    在二次开发时,常常需要比较两个数是否一样大。众所周知,浮点数不能之间用等号或Equal来比较是否相等。通常用这两个数的差的绝对值小于一个公差来判断两个数是否相同。 Revit 内部的认为两个double型数据是否相等的公差是1e-9.

     

    比如 第一层层底=0.0, 层顶高是Height1=18.0英尺,第二层层高为36.0英尺

    如果我们在高度为BeamZ上创建水平梁:

    如果 BeamZ = 17.999999999, 与第二层层底差的绝对值是1e-9 Revit会认为这个梁在第二层上。偏移值为0

    如果BeamZ =   17.999999998,与第二层层底高差绝对值是2e-9,大于Revit公差值, Revit会认为这个梁在第一层上,偏移值为17.99  

     

    从外观看没有什么差别。但是属性不同。

     

    最新回复(0)