Revit二次开发—赋值问题(单位转化)

简介: Revit二次开发—赋值问题(单位转化)

通过二次开发设置参数值,存在单位转化问题

原因:Revit内部基本单位是英尺(foot),如果要获取或设置构件参数数值需要进行单位转换


20181114084228434.png

20181114084006225.png

 1英尺 = 304.7999995367 mm = 304.8 mm

可以使用RevitAPI内置的转换函数进行目标单位的转换

使用UnitUtils函数的


public static double Convert(double value,DisplayUnitType currentDisplayUnit,
DisplayUnitType desiredDisplayUnit)

可以判断参数是以何种单位显示在界面上的。如:Parameter.DisplayUnitType属性,然后根据DisplayUnitType枚举找到想要转换的单位类型

          //英尺到米
          double d = UnitUtils.Convert(value, DisplayUnitType.DUT_DECIMAL_FEET, DisplayUnitType.DUT_METERS);
          //英尺到毫米
          double d = UnitUtils.Convert(value,DisplayUnitType.DUT_DECIMAL_FEET,DisplayUnitType.DUT_MILLIMETERS);
          //平方英尺到平方米
          double d = UnitUtils.Convert(value, DisplayUnitType.DUT_SQUARE_FEET, DisplayUnitType.DUT_SQUARE_METERS);
          //立方英尺到立方米
          double d = UnitUtils.Convert(value, DisplayUnitType.DUT_CUBIC_FEET, DisplayUnitType.DUT_CUBIC_METERS);

DisplayUnitType枚举内含有大量的单位类型 读者可以根据所需单位进行查找。

1. //获取参数值
2.  param.AsValueString()
3. //设置参数值
4.  param.Set(100/304.8) //100为英尺

相关文章
|
3月前
|
BI Python
python报表自动化系列 - 获取某月日历并以列表形式返回(公历)
python报表自动化系列 - 获取某月日历并以列表形式返回(公历)
31 1
|
3月前
|
存储 安全 Unix
C#.Net筑基-类型系统②常见类型--日期和时间的故事
在System命名空间中,有几种表示日期时间的不可变结构体(Struct):DateTime、DateTimeOffset、TimeSpan、DateOnly和TimeOnly。DateTime包含当前本地或UTC时间,以及最小和最大值;DateTimeOffset增加了时区偏移信息,适合跨时区操作。UTC是世界标准时间,而格林尼治标准时间(GMT)不稳定,已被更精确的UTC取代。DateTimeOffset和DateTime提供了转换为UTC和本地时间的方法,以及各种解析和格式化函数。
|
3月前
【突破常规:让函数规范成为注目的亮点】(下)
【突破常规:让函数规范成为注目的亮点】
|
3月前
【突破常规:让函数规范成为注目的亮点】(上)
【突破常规:让函数规范成为注目的亮点】
|
11月前
|
XML 监控 中间件
SAP 产品线中写法很接近,容易混淆的几个名称
SAP 产品线中写法很接近,容易混淆的几个名称
Revit二次开发—内建类别BuiltInCategory枚举(中英文对照)
Revit二次开发—内建类别BuiltInCategory枚举(中英文对照)
|
机器学习/深度学习 XML Java
6. 抹平差异,统一类型转换服务ConversionService(下)
6. 抹平差异,统一类型转换服务ConversionService(下)
6. 抹平差异,统一类型转换服务ConversionService(下)
|
存储 机器学习/深度学习 缓存
6. 抹平差异,统一类型转换服务ConversionService(上)
6. 抹平差异,统一类型转换服务ConversionService(上)
6. 抹平差异,统一类型转换服务ConversionService(上)
【SAP技术】SAP MM 如何看一个自定义移动类型是复制哪个标准移动类型而创建的?
【SAP技术】SAP MM 如何看一个自定义移动类型是复制哪个标准移动类型而创建的?
【SAP技术】SAP MM 如何看一个自定义移动类型是复制哪个标准移动类型而创建的?
|
SQL 监控 Java
SLS新增单位转换函数——消除数据转换烦恼
在日常工作中,经常会遇到数据单位或时间单位不一致的情况,当处理或分析此类数据时,往往费事费力,非常麻烦。 现在,SLS新增了单位转换函数,可以实现在不同单位之间轻松地进行转换、统一单位、格式化为可读文本,为用户减少不必要的数据转换工作,提升分析效率。
555 0