网站大量收购闲置独家精品文档,联系QQ:2885784924

三维建模软件:Autodesk Revit二次开发_(9).Revit族创建与管理.docx

三维建模软件:Autodesk Revit二次开发_(9).Revit族创建与管理.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE1

PAGE1

Revit族创建与管理

族的概念

在AutodeskRevit中,族是构成建筑模型的基本元素。族可以是任何建筑构件,如门窗、柱子、梁等。每个族都包含一系列的参数和几何形状,这些参数和几何形状可以通过族编辑器进行修改和定制,以满足不同的设计需求。族可以分为以下几类:

系统族:由Revit系统自带,无法编辑其几何形状,只能修改参数。例如,墙、楼板、屋顶等。

标准构件族:由Revit提供,可以编辑其几何形状和参数。例如,门、窗、家具等。

内建族:在项目中直接创建的族,只能在该项目中使用。

族的创建

1.创建基本族

创建基本族的过程包括定义族的类型、参数和几何形状。以下是创建一个简单的门族的步骤:

打开族编辑器:

在Revit中,选择“文件”“新建”“族”。

选择一个合适的族类别,例如“门”。

定义族类型:

在族编辑器中,选择“族类型”对话框,定义门的类型参数,如宽度、高度等。

创建几何形状:

使用绘图工具(如矩形、圆弧等)绘制门的几何形状。

使用参数控件(如尺寸标注、对齐等)将几何形状与参数关联起来。

添加材质和细节:

为门的表面添加材质,如木材、金属等。

添加细节,如门把手、锁等。

保存族:

完成族的编辑后,选择“文件”“保存”将族保存到项目中或族库中。

2.通过API创建族

除了手动创建族,还可以通过RevitAPI编程创建族。以下是一个简单的Python示例,使用RevitAPI创建一个门族:

importclr

clr.AddReference(RevitAPI)

clr.AddReference(RevitServices)

fromAutodesk.Revit.DBimport*

fromRevitServices.PersistenceimportDocumentManager

fromRevitServices.TransactionsimportTransactionManager

#获取当前文档

doc=DocumentManager.Instance.CurrentDBDocument

#定义族类别

family_category=BuiltInCategory.OST_Doors

#定义族名称

family_name=CustomDoor

#创建族

TransactionManager.Instance.EnsureInTransaction(doc)

family_creator=FamilyCreate(doc)

family=family_creator.NewFamily(family_category,family_name)

TransactionManager.Instance.TransactionTaskDone()

#定义族参数

width_param=family.parameters.Add(Width,ParameterType.Length,True)

height_param=family.parameters.Add(Height,ParameterType.Length,True)

#创建族类型

TransactionManager.Instance.EnsureInTransaction(doc)

family_type=family.AddFamilyType(Standard)

TransactionManager.Instance.TransactionTaskDone()

#设置族类型参数

TransactionManager.Instance.EnsureInTransaction(doc)

family_type.get_Parameter(width_param).Set(UnitUtils.ConvertToInternalUnits(1000,DisplayUnitType.DUT_MILLIMETERS))

family_type.get_Parameter(height_param).Set(UnitUtils.ConvertToInternalUnits(2000,DisplayUnitType.DUT_MILLIMETERS))

TransactionManager.Instance.TransactionTaskDone()

#保存族

TransactionManager.Instance.EnsureInTransaction(doc)

family_doc=doc.Edit

您可能关注的文档

文档评论(0)

找工业软件教程找老陈 + 关注
实名认证
服务提供商

寻找教程;翻译教程;题库提供;教程发布;计算机技术答疑;行业分析报告提供;

1亿VIP精品文档

相关文档