Revit个版本API变化
Revit2019 API 变化
至少使用.NET4.7
删除的API
改变的API
新增的API
TextNotes增加了垂直方向的属性
textnoteOptions.VerticalAlignment = VerticalTextAlignment.Middle;//18没有
Revit2020 API 变化
删除的API
改变的API
新增的API
Revit2020.1 API 变化
删除的API
改变的API
1、 枚举类型
新增的API
Revit2021.1 API 变化
至少使用.net4.8
删除的API
改变的API
枚举类型DisplayUnitType, UnitSymbolType, UnitType 在之后的版本中都不能用了
用一下类替代
Autodesk.Revit.DB.UnitTypeId
Autodesk.Revit.DB.SymbolTypeId
Autodesk.Revit.DB.SpecTypeId
例子
DisplayUnitType displayUnits = document.GetUnits().GetFormatOptions(UnitType.UT_length).DisplayUnits.3
//替换为:
ForgeTypeId unitTypeId = document.GetUnits().GetFormatOptions(SpecTypeId.Length).GetUnitTypeId();
新增的API
Revit2022 API 变化
删除的API
改变的API
1、 板类的创建方式改变,无论是建筑楼板、结构板、基础板
Autodesk.Revit.Creation.Document.NewFloor()
//替换为
Floor.Create(Document document, IList<CurveLoop> profile, ElementId floorTypeId, ElementId levelId)
Autodesk.Revit.Creation.Document.NewSlab()
//替换为
Floor.Create(Document document, IList<CurveLoop> profile, ElementId floorTypeId, ElementId levelId, bool isStructural, Line slopeArrow, double slope)
Autodesk.Revit.Creation.Document.NewFoundationSlab()
//替换为
Floor.Create(Document document, IList<CurveLoop> profile, ElementId floorTypeId, ElementId levelId)
之前的方法在2022中还可以使用,但在2023中被彻底删除
2、在 Definition 类中,ParameterType 属性和 GetSpecTypeId() 方法都被弃用,取而代之的是新方法 GetDataType()。
创建共享参数时:
ForgeTypeId parameterType = SpecTypeId.String.Text;//替换原来的ParameterType.Text
group.Definitions.Create(new ExternalDefinitionCreationOptions(definitionName, parameterType));
新增的API
Revit2023 API 变化
删除的API
Autodesk.Revit.Creation.Document.NewFloor()
Autodesk.Revit.Creation.Document.NewSlab()
Autodesk.Revit.Creation.Document.NewFoundationSlab()