




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Revit工作集协同模式的API应用探究,刘培珺,Autodesk中国研究院开发经理,首届中国开发者训练营DevCampChina1st,刘培珺职务/Autodesk中国研究院开发经理部门/IPG2004年毕业于浙江大学CADWorksetConfigurationconfig=openOptions.GetOpenWorksetsConfiguration();if(null=config)config=newWorksetConfiguration();openOptions.SetOpenWorksetsConfiguration(config);config.OpenLastViewed();DocumentnewDoc=RevitApp.OpenDocumentFile(ModelPathUtils.ConvertUserVisiblePathToModelPath(OpenDocument.rvt),openOptions);,ReloadLatest,Transactiontrans=newTransaction(RevitDoc,RL);trans.Start();ReloadLatestOptionsoptions=newReloadLatestOptions();RevitDoc.ReloadLatest(options);boolisUpdated=RevitDoc.HasAllChangesFromCentral();trans.Commit();,SynchronizeWithCentral,SynchronizeWithCentralOptionsoptions=newSynchronizeWithCentralOptions();options.Comment=RelinquishOptions;RelinquishOptionsnewRelinqOptions=newRelinquishOptions(false);newRelinqOptions.CheckedOutElements=true;newRelinqOptions.StandardWorksets=false;options.SetRelinquishOptions(newRelinqOptions);TransactWithCentralOptionstransOptions=newTransactWithCentralOptions();CallBackcallInst=newCallBack();transOptions.SetLockCallback(callInst);RevitDoc.SynchronizeWithCentral(transOptions,options);,Workset和WorksetTableWorksetDefaultVisibilitySettingsWorksetVisibilityElementWorksetFilterFilteredWorksetCollector和WorksetKindFilter,工作共享中的工作集管理,Workset和WorksetTable,WorksetTableworksetTable=RevitDoc.GetWorksetTable();WorksetIdactiveId=worksetTable.GetActiveWorksetId();WorksetactiveWorkset=worksetTable.GetWorkset(activeId);WorksetwallWorkset=worksetTable.GetWorkset(wall.WorksetId);,WorksetDefaultVisibilitySettings,WorksetDefaultVisibilitySettingsdefaultVisibility=WorksetDefaultVisibilitySettings.GetWorksetDefaultVisibilitySettings(RevitDoc);boolisVisible=defaultVisibility.IsWorksetVisible(worksetId);defaultVisibility.SetWorksetVisibility(worksetId,!isVisible);,WorksetVisibility,Viewview=getActiveView();WorksetVisibilityvisibility=view.GetWorksetVisibility(worksetId);view.SetWorksetVisibility(worksetId,WorksetVisibility.Hidden);visibility=view.GetWorksetVisibility(worksetId);view.SetWorksetVisibility(worksetId,WorksetVisibility.UseGlobalSetting);visibility=view.GetWorksetVisibility(worksetId);view.SetWorksetVisibility(worksetId,WorksetVisibility.Visible);,FilteredWorksetCollectorcollector=newFilteredWorksetCollector(RevitDoc);collector.OfKind(WorksetKind.UserWorkset);IListworksets=collector.ToWorksets();WorksetKindFilterstandardFilter=newWorksetKindFilter(WorksetKind.StandardWorkset,true);collector.WherePasses(standardFilter);,FilteredWorksetCollector和WorksetKindFilter,FilteredWorksetCollector(RevitDoc);,collector.OfKind(WorksetKind.UserWorkset);,WorksetKindFilter(WorksetKind.StandardWorkset,true);,ElementWorksetFilter,ElementWorksetFilterelmentWorksetFilter=newElementWorksetFilter(worksetId,false);FilteredElementCollectorcollector=newFilteredElementCollector(RevitDoc);ICollectionworksetElemsfounds=collector.WherePasses(elmentWorksetFilter).ToElements();,EnableWorksharingCheckoutElements和RelinquishOwnership,工作共享权限管理,开启工作共享,RevitDoc.EnableWorksharing(abc,def);Assert.IsTrue(RevitDoc.IsWorkshared);,获得编辑权限,ICollectioncheckedOutElementIds=WorksharingUtils.CheckoutElements(RevitDoc,elementsToBeCheckedout);,放弃编辑权限,TransactWithCentralOptionstransOptions=newTransactWithCentralOptions();RelinquishOptionsrelinqOptions=newRelinquishOptions(false);relinqOptions.CheckedOutElements=true;relinqOptions.FamilyWorksets=false;relinqOptions.StandardWorksets=false;relinqOptions.UserWorksets=false;relinqOptions.ViewWorksets=false;/relinquishcheckedoutelementsRelinquishedItemsitems=WorksharingUtils.RelinquishOwnership(RevitDoc,relinqOptions,transOptions);,WorksharingDisplayModeWorksharingDisplaySettingsWorksharingDisplayGraphicSettings,工作共享的显示模式,WorksharingDisplayMode,WorksharingDisplayModewsDisplayMode=view.GetWorksharingDisplayMode();view.SetWorksharingDisplayMode(WorksharingDisplayMode.CheckoutStatus);,WorksharingDisplaySettings,Documentdoc=RevitApp.OpenDocumentFile(Workshared.rvt);Transactiontrans=newTransaction(doc,newtrans);trans.Start();WorksharingDisplaySettingssettings=WorksharingDisplaySettings.GetOrCreateWorksharingDisplaySettings(doc);ICollectionusers=settings.GetAllUsersWithGraphicOverrides();trans.Commit();,WorksharingDisplayGraphicSettings,using(Transaction_transaction_=newTransaction(RevitDoc)_transaction_.Start(GetGraphicOverrides_String);ICollectionusers=displaySettings.GetAllUsersWithGraphicOverrides();foreach(StringuserNameinusers)WorksharingDisplayGraphicSettingsgraphicSettings=displaySettings.GetGraphicOverrides(userName);_transaction_.Commit();,DocumentSynchronizingWithCentralDocumentSynchronizedWithCentral,工作共享中的事件,Q&A,AutodeskisaregisteredtrademarkofAutodesk,Inc.,and/oritssubsidiariesand/oraffiliatesintheUSAand/orothercountries.Allotherbrandn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年全国安全知识答题竞赛题库答案
- 2025年客运司机面试题目及答案
- 急诊科护士课件选题
- 工厂环保知识培训课件
- 塑料家具制作工培训考核试卷及答案
- 数控火焰切割机操作工基础考核试卷及答案
- 木地板制造工理念考核试卷及答案
- 《冰箱基本原理》课件
- 集成电路管壳制造工抗压考核试卷及答案
- 临床护理效果
- 人美版九年级上册初中美术全册教案
- GB/T 2820.7-2024往复式内燃机驱动的交流发电机组第7部分:用于技术条件和设计的技术说明
- 2023年法律职业资格《主观题》真题及答案
- 2024-2025学年安徽省八年级语文上册第一次月考试卷04
- 单位委托员工办理水表业务委托书
- 2026年全年日历表带农历(A4可编辑可直接打印)预留备注位置
- 2024年全国期货从业资格之期货投资分析考试历年考试题附答案
- 矿山生态修复监理工作资料编制内容和要求、施工监理主要工作程序框图、工程施工与监理表式
- 药店药剂师专业劳动合同
- 小菜园租赁合同范本
- DL-T1342-2014电气接地工程用材料及连接件
评论
0/150
提交评论