Windchill 基本知识 > Windchill 搜索 > 搜索参考 > 数字的搜索范围
  
数字的搜索范围
执行的“条件”搜索包含“实数”“带单位的实数”值时,Windchill 允许搜索结果返回特定范围。
例如,您创建了以下部件:
部件
重量
Bearing-987
8.0377
Bearing-x55
8.0383
Bearing-n7v2
8.0388
根据它们的重量对部件执行高级搜索。提供的条件值为 8.038
Windchill 对搜索应用一个舍入范围。因此,则搜索将返回范围为 8.03758.0385 的权重。
部件
重量
已返回?
Bearing-987
8.0377
Bearing-x55
8.0383
Bearing-n7v2
8.0388
对范围进行舍入时的基本规则是:进行舍入时,范围包含与搜索值输入相等的数字。在上面的示例中,8.0388 的舍入值为 8.039,因此其不会出现在搜索结果中。
* 
如果将显示单位设置为与基本单位不同的单位 (例如,以英寸为单位显示长度,但 Windchill 以厘米为单位存储长度时),将应用基本单位的范围。您所看到的结果将会受到影响。有关详细信息,请参阅搜索范围和基本单位转换
舍入
在另一个示例中,您将搜索具有特定属性值的对象。执行搜索时,输入 1.74 作为属性值搜索条件︰
对象属性值
包括在结果中?
说明
1.7408
1.740 舍入为 1.74。
1.73611
1.736 舍入为 1.74。
1.7308
1.730 舍入为 1.73。
1.74611
1.746 舍入为 1.75。
1.73
满足条件的数字必须介于可舍入范围内,范围的起始值为初始搜索值。这样可以相对于最小有效数字 (搜索值的最后一位数字) 大约增大 0.5 或减少 0.5。
例如,如果您输入 1.74,在进行舍入时,结果的范围将是 1.735 - 1.745。
如果您输入的是 1.740,则进行舍入时,结果的范围将是 1.7395 - 1.7405。
要在同一搜索中返回 1.73 和 1.74,您需要输入 1.7 作为您的搜索条件。舍入时,此搜索结果的范围是 1.65 - 1.75。
* 
舍入范围仅适用于超出搜索输入中最小有效数字一位的情况。因此,如果您搜索 1.4,则对于值为 1.3489 的对象,即使舍入为 1.4 也不会返回该对象。
如果搜索输入为 1.4,则 Windchill 仅会计算至 E-2。在本例中,1.3489 被视为 1.34,后者舍入为 1.3 (不是一个匹配项)。但是,如果您搜索 1.35,则 1.3489 会从 E-3 (1.348) 进行舍入,舍入结果为 1.35 (是一个匹配项)。
舍入范围的此种应用方式,使您能够搜索非常精确的数字,而不必在您的搜索项中使用许多数字。例如,1.28378 会舍入至:
1.2838
1.284
1.28
1.3
因此,如果您想要搜索属性值为 1.28378 的对象,您可以输入上面列出的任意数字。
* 
搜索项为整数的情况例外。如果您要搜索一个整数,会应用一个非常有限的范围。范围为增加并减去 5E 14。
例如,如果搜索 16,则返回的结果范围为 15.99999999999995 - 16.00000000000005。
从 5 开始进行舍入
Windchill 如何计算数字范围的关键是如何处理数字 5。通常情况下,数字会从 5 开始向上舍入。因此,85 舍入为 90,11.5 舍入为 12,如此类推。
但是,Windchill 从 5 进行舍入时采用下列规则:当最小有效数字为 5 时,是向上舍入还是向下舍入,具体取决于前面的数字。
如果前面的数字为偶数,则向下舍入︰
4.125 舍入为 4.12
4.145 舍入为 4.14
4.165 舍入为 4.16
如果前面的数字为奇数,则向上舍入︰
4.115 舍入为 4.12
4.135 舍入为 4.14
4.155 舍入为 4.16
所以,当从 5 进行舍入时,始终会舍入至偶数。
排除与包括
给出以下规则︰
要包括在搜索结果中,舍入后的数字必须在等于搜索输入值的范围内。
从 5 进行舍入时,如果前面的数字是偶数,则该数向下舍入。
返回值的范围会有所不同,具体取决于您的搜索末尾数字是奇数还是偶数。范围可以是包含也可以是排除
应用包含范围时,范围将包括上边界和下边界。如果最小有效数字是偶数,则范围为包含。
例如,假如搜索输入为 3.4,则在舍入时,值的范围将包括所有大于或等于 3.35,且小于或等于 3.45 的所有数字。
应用排除范围时,范围将会排除上边界和下边界。如果最小有效数字是奇数,则范围为排除。
例如,假如搜索输入为 3.3,则在舍入时,值的范围将包括所有大于 3.25,且小于 3.35 的所有数字。
因此,如果您的搜索输入以偶数位结尾,则返回的值的范围会略大。
条件运算符
针对数值执行高级搜索时,可以使用不同的运算符。使用大于和小于运算符时,仍会应用范围。
包含或排除初始范围是否会影响结果。
搜索条件
结果范围
0.48
由于您所输入的值末位为偶数,所以,此为包含范围:
大于或等于 0.475
小于或等于 0.485
0.48
小于 0.475。
0.48
小于或等于 0.485。
0.48
大于 0.485。
0.48
大于或等于 0.475。
搜索条件
结果范围
2.863
由于您所输入的值末位为奇数,所以,此为排除范围:
大于 2.8625
小于 2.8635
2.863
小于或等于 2.8625。
* 
与开始时为包含范围的情况不同,小于和大于搜索将包括上限和下限范围边界。
这是因为搜索 " 2.863" 时,Windchill 不会返回 2.8625。
因此,2.8625 应在“小于”搜索中返回。
2.863
小于 2.8635。
2.863
大于或等于 2.8635。
2.863
大于 2.8625。