实例介绍
【实例简介】
RevitDBExplorer:高效的Revit数据库浏览与编辑工具
RevitDBExplorer是一款先进的Revit数据库探索工具,它不仅能够让用户浏览Revit数据库,还支持编辑任意参数值、使用直观的语法查询数据库、通过C#脚本进行数据库编程以及可视化元素的几何特征。
主要功能:
- 更便捷地处理Element.Geometry
- 对象和参数的比较
- 查询Revit数据库
- 编写和执行Revit数据库脚本
- 支持ad hoc SELECT和UPDATE命令
- 方便访问Revit API文档
- 编辑参数值
- 对ForgeTypeId提供广泛支持
- 对Revit可扩展存储提供更好的支持
- 暗黑和亮色UI主题
- 监控Revit事件
安装方法:
下载并安装RevitDBExplorer.msi。该安装程序将为Revit 2021至2025版本安装Revit数据库浏览器。
特性介绍:
- Element.Geometry的简化操作
- 几何特性的可视化展示
- 使用RDQ(Revit数据库查询)和RDS(Revit数据库脚本)增强数据库查询和脚本编写能力
- 通过REM(Revit事件监控)监控Revit事件,提升开发和调试效率。
无论您是Revit开发者还是BIM专业人员,RevitDBExplorer都能为您的工作带来便利和效率的提升。
【实例截图】
【核心代码】
文件清单
└── RevitDBExplorer-4e0414c6a5aeb9d43beff86b12e9d1e1cdc0f68d
├── binaries
│ └── revit
│ ├── 2021
│ │ ├── AdWindows.dll
│ │ ├── RevitAddInUtility.dll
│ │ ├── RevitAPI.dll
│ │ ├── RevitAPIUI.dll
│ │ ├── RevitAPIUI.xml
│ │ └── RevitAPI.xml
│ ├── 2022
│ │ ├── AdWindows.dll
│ │ ├── RevitAddInUtility.dll
│ │ ├── RevitAPI.dll
│ │ ├── RevitAPIUI.dll
│ │ ├── RevitAPIUI.xml
│ │ └── RevitAPI.xml
│ ├── 2023
│ │ ├── AdWindows.dll
│ │ ├── Microsoft.Expression.Interactions.dll
│ │ ├── RevitAddInUtility.dll
│ │ ├── RevitAPI.dll
│ │ ├── RevitAPIUI.dll
│ │ ├── RevitAPIUI.xml
│ │ ├── RevitAPI.xml
│ │ └── System.Windows.Interactivity.dll
│ └── 2024
│ ├── AdWindows.dll
│ ├── Microsoft.Expression.Interactions.dll
│ ├── RevitAddInUtility.dll
│ ├── RevitAPI.dll
│ ├── RevitAPIUI.dll
│ ├── RevitAPIUI.xml
│ ├── RevitAPI.xml
│ └── System.Windows.Interactivity.dll
├── documentation
│ ├── examples
│ │ ├── 2.0.easier-work-with-element-geometry.gif
│ │ ├── 2.0.revit-database-scripting-select-query.gif
│ │ ├── 2.0.revit-database-scripting-update-command.gif
│ │ ├── better-support-for-revit-extensible-storage.gif
│ │ ├── compare-and-pin.gif
│ │ ├── compare-objects-and-parameters.gif
│ │ ├── dark-and-light-ui-themes.gif
│ │ ├── easier-work-with-element-geometry.gif
│ │ ├── easier-work-with-geometry.gif
│ │ ├── easy-access-to-revit-api-documentation.gif
│ │ ├── extensive-support-for-ForgeTypeId.gif
│ │ ├── filterable-tree-of-elements-and-list-of-properties-and-methods.gif
│ │ ├── filterable-tree-of-elements-and-list-of-properties-and-methods.v2.gif
│ │ ├── more-advanced-tree-view.gif
│ │ ├── more-natural-access-to-Extensible-Storage-entities.gif
│ │ ├── possibility-to-query-Revit-database-from-UI.gif
│ │ ├── rdq-revit-database-query-with-rql-revit-query-language.gif
│ │ ├── rdq-revit-database-query-with-rql-revit-query-language.v2.gif
│ │ ├── revit-database-scripting-select-query.gif
│ │ ├── revit-database-scripting-update-command.gif
│ │ ├── set.parameter.value.gif
│ │ ├── snooping-all-categories-that-may-be-used-in-a-ParameterFilterElement.png
│ │ ├── snooping-all-Forge-types.png
│ │ ├── snooping-events.gif
│ │ ├── snooping-Extensible-Storage-framework-schemas.png
│ │ ├── snooping-loaded-external-applications.gif
│ │ ├── snooping-updaters.gif
│ │ ├── tooltips-with-Revit-documentation.png
│ │ └── you-can-get-every-element-that-has-an-entity-of-a-given-schema.png
│ ├── images
│ │ ├── BackgroundImage.png
│ │ ├── BannerImage.png
│ │ ├── RDBE.ico
│ │ ├── RDBE.Icon.16.png
│ │ ├── RDBE.Icon.32.png
│ │ ├── RDBS.ico
│ │ ├── RDBS.Icon.16.png
│ │ └── RDBS.Icon.32.png
│ ├── revit-database-querying.md
│ ├── revit-database-scripting.md
│ └── revit-database-visualization.md
├── license.md
├── readme.md
├── RevitDBExplorer.addin
├── RevitDBExplorer.sln
├── setup
│ ├── App.config
│ ├── packages.config
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── SetupBuilder.csproj
├── sources
│ ├── RevitDBExplorer
│ │ ├── APIAdapter.cs
│ │ ├── app.config
│ │ ├── Application.cs
│ │ ├── Command.cs
│ │ ├── ConfigWindow.xaml
│ │ ├── ConfigWindow.xaml.cs
│ │ ├── Domain
│ │ │ ├── AddInManifestWizard.cs
│ │ │ ├── CHMService.cs
│ │ │ ├── DataModel
│ │ │ │ ├── Accessors
│ │ │ │ │ ├── IAccessor.cs
│ │ │ │ │ ├── IAccessorWithCodeGeneration.cs
│ │ │ │ │ ├── IAccessorWithReadAndSnoop.cs
│ │ │ │ │ └── ReadResult.cs
│ │ │ │ ├── MemberAccessors
│ │ │ │ │ ├── AssetProperties
│ │ │ │ │ │ └── AssetProperties_Item.cs
│ │ │ │ │ ├── Curve
│ │ │ │ │ │ └── Curve_GetEndPoint.cs
│ │ │ │ │ ├── DialogBoxShowingEventArgs
│ │ │ │ │ │ └── DialogBoxShowingEventArgs_OverrideResult.cs
│ │ │ │ │ ├── Document
│ │ │ │ │ │ ├── Document_Close.cs
│ │ │ │ │ │ └── Document_PlanTopology.cs
│ │ │ │ │ ├── Element
│ │ │ │ │ │ ├── Element_BoundingBox.cs
│ │ │ │ │ │ ├── Element_Geometry.cs
│ │ │ │ │ │ ├── Element_GetDependentElements.cs
│ │ │ │ │ │ ├── Element_GetEntity.cs
│ │ │ │ │ │ ├── Element_GetMaterialArea.cs
│ │ │ │ │ │ ├── Element_GetMaterialVolume.cs
│ │ │ │ │ │ ├── Element_GetPhaseStatus.cs
│ │ │ │ │ │ └── Element_Id.cs
│ │ │ │ │ ├── Entity
│ │ │ │ │ │ └── Entity_Get.cs
│ │ │ │ │ ├── ExternalService
│ │ │ │ │ │ └── ExternalService_GetServer.cs
│ │ │ │ │ ├── FailureHandlingOptions
│ │ │ │ │ │ └── FailureHandlingOptions.cs
│ │ │ │ │ ├── ForgeTypeId
│ │ │ │ │ │ └── ForgeTypeId_Clear.cs
│ │ │ │ │ ├── GenericFactory.cs
│ │ │ │ │ ├── HostObject
│ │ │ │ │ │ └── HostObject_FindInserts.cs
│ │ │ │ │ ├── MemberAccessorByFunc.cs
│ │ │ │ │ ├── MemberAccessorByIteration.cs
│ │ │ │ │ ├── MemberAccessorByRefCompiled.cs
│ │ │ │ │ ├── MemberAccessorByRef.cs
│ │ │ │ │ ├── MemberAccessorByType.cs
│ │ │ │ │ ├── MemberAccessorFactory.cs
│ │ │ │ │ ├── MemberAccessorForConstValue.cs
│ │ │ │ │ ├── MemberAccessorForNotExposed.cs
│ │ │ │ │ ├── MemberAccessorForStatic.cs
│ │ │ │ │ ├── MemberAccessorTyped.cs
│ │ │ │ │ ├── MepSection
│ │ │ │ │ │ ├── MepSection_GetCoefficient.cs
│ │ │ │ │ │ ├── MepSection_GetPressureDrop.cs
│ │ │ │ │ │ ├── MepSection_GetSegmentLength.cs
│ │ │ │ │ │ └── MepSection_IsMain.cs
│ │ │ │ │ ├── Parameter
│ │ │ │ │ │ ├── Parameter_Set.cs
│ │ │ │ │ │ └── Parameter_SetValueString.cs
│ │ │ │ │ ├── PrintManager
│ │ │ │ │ │ └── PrintManager_SubmitPrint.cs
│ │ │ │ │ ├── Rebar
│ │ │ │ │ │ ├── Rebar_GetCenterlineCurves.cs
│ │ │ │ │ │ ├── Rebar_GetOverridableHookParameters.cs
│ │ │ │ │ │ ├── Rebar_GetTransformedCenterlineCurves.cs
│ │ │ │ │ │ └── Rebar_IsBarHidden.cs
│ │ │ │ │ ├── RebarBarType
│ │ │ │ │ │ ├── RebarBarType_GetAutoCalcHookLengths.cs
│ │ │ │ │ │ ├── RebarBarType_GetHookLength.cs
│ │ │ │ │ │ ├── RebarBarType_GetHookOffsetLength.cs
│ │ │ │ │ │ ├── RebarBarType_GetHookPermission.cs
│ │ │ │ │ │ └── RebarBarType_GetHookTangentLength.cs
│ │ │ │ │ ├── RevitLinkType
│ │ │ │ │ │ └── RevitLinkType_Load.cs
│ │ │ │ │ ├── SpatialElement
│ │ │ │ │ │ └── SpatialElement_GetBoundarySegments.cs
│ │ │ │ │ ├── SpatialFieldManager
│ │ │ │ │ │ └── SpatialFieldManager_GetResultSchema.cs
│ │ │ │ │ └── View
│ │ │ │ │ ├── View_Duplicate.cs
│ │ │ │ │ ├── View_GetFilterOverrides.cs
│ │ │ │ │ ├── View_GetFilterVisibility.cs
│ │ │ │ │ ├── View_GetNonControlledTemplateParameterIds.cs
│ │ │ │ │ └── View_GetTemplateParameterIds.cs
│ │ │ │ ├── MemberTemplates
│ │ │ │ │ ├── Accessors
│ │ │ │ │ │ ├── AnalyticalToPhysicalAssociationManager_GetAssociatedElementId.cs
│ │ │ │ │ │ ├── AnalyticalToPhysicalAssociationManager_GetAssociatedElementIds.cs
│ │ │ │ │ │ ├── AnalyticalToPhysicalAssociationManager_HasAssociation.cs
│ │ │ │ │ │ ├── BoundingBox_BoundingBoxIntersectsFilter.cs
│ │ │ │ │ │ ├── HostObjectUtils_GetSideFaces.cs
│ │ │ │ │ │ ├── JoinGeometryUtils_IsCuttingElementInJoin.cs
│ │ │ │ │ │ ├── Schema_EraseSchemaAndAllEntities .cs
│ │ │ │ │ │ └── Schema_GetAllElements.cs
│ │ │ │ │ ├── Base
│ │ │ │ │ │ └── SnoopableMemberTemplate.cs
│ │ │ │ │ ├── BoundingBox_Templates.cs
│ │ │ │ │ ├── Document_Templates.cs
│ │ │ │ │ ├── Element_Templates.cs
│ │ │ │ │ ├── Family_Templates.cs
│ │ │ │ │ ├── ForgeTypeId_Templates.cs
│ │ │ │ │ ├── HostObject_Templates.cs
│ │ │ │ │ ├── IExternalApplication_Templates.cs
│ │ │ │ │ ├── JoinGeometryUtils_Templates.cs
│ │ │ │ │ ├── PartUtils_Templates.cs
│ │ │ │ │ ├── Schema_Templates.cs
│ │ │ │ │ ├── UpdaterInfo_Templates.cs
│ │ │ │ │ ├── View_Templates.cs
│ │ │ │ │ └── WorksharingUtils_Templates.cs
│ │ │ │ ├── Parameters
│ │ │ │ │ └── ParameterAccessor.cs
│ │ │ │ ├── SnoopableContext.cs
│ │ │ │ ├── SnoopableItem.cs
│ │ │ │ ├── SnoopableMember.cs
│ │ │ │ ├── SnoopableObject.cs
│ │ │ │ ├── SnoopableParameter.cs
│ │ │ │ ├── Streams
│ │ │ │ │ ├── Base
│ │ │ │ │ │ ├── DeclaringType.cs
│ │ │ │ │ │ ├── MemberDescriptor.cs
│ │ │ │ │ │ └── MemberKind.cs
│ │ │ │ │ ├── MemberStreamer.cs
│ │ │ │ │ ├── MemberStreamerForSystemType.cs
│ │ │ │ │ └── MemberStreamerForTemplates.cs
│ │ │ │ ├── ValueContainers
│ │ │ │ │ ├── Base
│ │ │ │ │ │ ├── ITypeHandler.cs
│ │ │ │ │ │ ├── IValueContainer.cs
│ │ │ │ │ │ ├── Traits.cs
│ │ │ │ │ │ ├── TypeHandler.cs
│ │ │ │ │ │ ├── ValueContainer.cs
│ │ │ │ │ │ └── ValueContainerFactory.cs
│ │ │ │ │ ├── BindingMapHandler.cs
│ │ │ │ │ ├── BoolHandler.cs
│ │ │ │ │ ├── BoundarySegmentHandler.cs
│ │ │ │ │ ├── BoundingBoxXYZHandler.cs
│ │ │ │ │ ├── CategoryHandler.cs
│ │ │ │ │ ├── CategoryNameMapHandler.cs
│ │ │ │ │ ├── ColorHandler.cs
│ │ │ │ │ ├── CurveHandler.cs
│ │ │ │ │ ├── DocumentChangedEventArgsHandler.cs
│ │ │ │ │ ├── DoubleHandler.cs
│ │ │ │ │ ├── DoubleNullableHandler.cs
│ │ │ │ │ ├── EdgeHandler.cs
│ │ │ │ │ ├── ElementHandler.cs
│ │ │ │ │ ├── ElementIdHandler.cs
│ │ │ │ │ ├── EnumHandler.cs
│ │ │ │ │ ├── EvaluatedParameterHandler.cs
│ │ │ │ │ ├── FaceHandler.cs
│ │ │ │ │ ├── FailureDefinitionIdHandler.cs
│ │ │ │ │ ├── FailuresProcessingEventArgsHandler.cs
│ │ │ │ │ ├── FamilyParameterHandler.cs
│ │ │ │ │ ├── ForgeTypeIdHandler.cs
│ │ │ │ │ ├── GeometryElementHandler.cs
│ │ │ │ │ ├── GuidHandler.cs
│ │ │ │ │ ├── IEnumerableHandler.cs
│ │ │ │ │ ├── IExternalApplicationHandler.cs
│ │ │ │ │ ├── IListElementIdHandler.cs
│ │ │ │ │ ├── IntHandler.cs
│ │ │ │ │ ├── LocationHandler.cs
│ │ │ │ │ ├── ObjectHandler.cs
│ │ │ │ │ ├── ParameterHandler.cs
│ │ │ │ │ ├── ParameterMapHandler.cs
│ │ │ │ │ ├── ParameterSetHandler.cs
│ │ │ │ │ ├── PointHandler.cs
│ │ │ │ │ ├── RebarHandler.cs
│ │ │ │ │ ├── RevitApiEventArgsHandler.cs
│ │ │ │ │ ├── SchedulableFieldHandler.cs
│ │ │ │ │ ├── ScheduleFieldHandler.cs
│ │ │ │ │ ├── SolidHandler.cs
│ │ │ │ │ ├── SpatialElementBoundaryOptionsHandler.cs
│ │ │ │ │ ├── StringHandler.cs
│ │ │ │ │ ├── StructuralSectionHandler.cs
│ │ │ │ │ ├── TransformHandler.cs
│ │ │ │ │ ├── TypeHandler.cs
│ │ │ │ │ ├── UpdaterInfoHandler.cs
│ │ │ │ │ ├── UVHandler.cs
│ │ │ │ │ ├── ValueTypeHandler.cs
│ │ │ │ │ ├── WorksetIdHandler.cs
│ │ │ │ │ └── XYZHandler.cs
│ │ │ │ └── ValueViewModels
│ │ │ │ ├── Base
│ │ │ │ │ ├── IValueEditor.cs
│ │ │ │ │ ├── IValuePresenter.cs
│ │ │ │ │ ├── IValueViewModel.cs
│ │ │ │ │ └── Traits.cs
│ │ │ │ ├── DefaultPresenter.cs
│ │ │ │ ├── EmptyPresenter.cs
│ │ │ │ ├── ErrorPresenter.cs
│ │ │ │ ├── ExecuteEditor.cs
│ │ │ │ └── ValueEditor.cs
│ │ │ ├── EventMonitor.cs
│ │ │ ├── ExternalExecutor.cs
│ │ │ ├── Guard.cs
│ │ │ ├── Labeler.cs
│ │ │ ├── Presentation
│ │ │ │ ├── DrawInRevitCommand.cs
│ │ │ │ ├── DrawInRevitWithAVFCommand.cs
│ │ │ │ ├── FreezeCommand.cs
│ │ │ │ ├── IsolateInRevitCommand.cs
│ │ │ │ ├── SelectInRevitCommand.cs
│ │ │ │ ├── ShowInRevitCommand.cs
│ │ │ │ └── SnoopInNewWindow.cs
│ │ │ ├── QuoteGenerator.cs
│ │ │ ├── RevitDatabaseQuery
│ │ │ │ ├── Autocompletion
│ │ │ │ │ ├── AutocompleteItemProvider.cs
│ │ │ │ │ ├── FavoritesManager.cs
│ │ │ │ │ └── Internals
│ │ │ │ │ ├── AutocompleteItem.cs
│ │ │ │ │ ├── AutocompleteItemGroups.cs
│ │ │ │ │ └── IAutocompleteItem.cs
│ │ │ │ ├── CmdType.cs
│ │ │ │ ├── Filters
│ │ │ │ │ ├── CategoryFilter.cs
│ │ │ │ │ ├── ClassFilter.cs
│ │ │ │ │ ├── ElementIdFilter.cs
│ │ │ │ │ ├── ElementTypeFilter.cs
│ │ │ │ │ ├── Internals
│ │ │ │ │ │ ├── Filter.cs
│ │ │ │ │ │ ├── Group.cs
│ │ │ │ │ │ └── QueryItem.cs
│ │ │ │ │ ├── LevelFilter.cs
│ │ │ │ │ ├── OwnerViewFilter.cs
│ │ │ │ │ ├── ParameterFilter.cs
│ │ │ │ │ ├── RoomFilter.cs
│ │ │ │ │ ├── RuleFilter.cs
│ │ │ │ │ ├── StructuralTypeFilter.cs
│ │ │ │ │ ├── VisibleInViewFilter.cs
│ │ │ │ │ └── WorksetFilter.cs
│ │ │ │ ├── FuzzySearch
│ │ │ │ │ └── DataBucket.cs
│ │ │ │ ├── Parser
│ │ │ │ │ ├── CommandParser.cs
│ │ │ │ │ ├── Commands
│ │ │ │ │ │ ├── CategoryCmdDefinition.cs
│ │ │ │ │ │ ├── ClassCmdDefinition.cs
│ │ │ │ │ │ ├── ElementIdCmdDefinition.cs
│ │ │ │ │ │ ├── ElementTypeCmdDefinition.cs
│ │ │ │ │ │ ├── LevelCmdDefinition.cs
│ │ │ │ │ │ ├── NameCmdDefinition.cs
│ │ │ │ │ │ ├── NotElementTypeCmdDefinition.cs
│ │ │ │ │ │ ├── OwnerViewFilterCmdDefinition.cs
│ │ │ │ │ │ ├── ParameterArgument.cs
│ │ │ │ │ │ ├── ParameterCmdDefinition.cs
│ │ │ │ │ │ ├── RoomCmdDefinition.cs
│ │ │ │ │ │ ├── RuleBasedFilterCmdDefinition.cs
│ │ │ │ │ │ ├── SelectionCmdDefinition.cs
│ │ │ │ │ │ ├── StructuralTypeCmdDefinition.cs
│ │ │ │ │ │ ├── UniqueIdCmdDefinition.cs
│ │ │ │ │ │ ├── VisibleInViewCmdDefinition.cs
│ │ │ │ │ │ └── WorksetCmdDefinition.cs
│ │ │ │ │ ├── ICommandArgument.cs
│ │ │ │ │ ├── ICommand.cs
│ │ │ │ │ ├── ICommandDefinition.cs
│ │ │ │ │ └── Operators.cs
│ │ │ │ ├── QueryParser.cs
│ │ │ │ ├── RevitDatabaseQueryService.cs
│ │ │ │ └── SeedProviders
│ │ │ │ ├── Internals
│ │ │ │ │ └── Provider.cs
│ │ │ │ ├── SelectionProvider.cs
│ │ │ │ └── UniqueIdProvider.cs
│ │ │ ├── RevitDatabaseScripting
│ │ │ │ ├── Dummies
│ │ │ │ │ └── TypePlaceholder.cs
│ │ │ │ ├── MemberInvocationTemplates.cs
│ │ │ │ ├── MemberInvocationTemplateSelector.cs
│ │ │ │ ├── ParameterBuiltIn_UpdateTemplate.cs
│ │ │ │ ├── ParameterProject_UpdateTemplate.cs
│ │ │ │ ├── ParameterShared_UpdateTemplate.cs
│ │ │ │ └── Query_SelectTemplate.cs
│ │ │ ├── RevitDocumentationReader.cs
│ │ │ ├── Selectors
│ │ │ │ ├── Base
│ │ │ │ │ └── ISelector.cs
│ │ │ │ ├── SelectorFactory.cs
│ │ │ │ ├── SnoopActiveDocument.cs
│ │ │ │ ├── SnoopActiveView.cs
│ │ │ │ ├── SnoopApplication.cs
│ │ │ │ ├── SnoopCategories.cs
│ │ │ │ ├── SnoopCurrentSelection.cs
│ │ │ │ ├── SnoopDatabase.cs
│ │ │ │ ├── SnoopDependentElements.cs
│ │ │ │ ├── SnoopElementsOnScreen.cs
│ │ │ │ ├── SnoopExternalServices.cs
│ │ │ │ ├── SnoopForge.cs
│ │ │ │ ├── SnoopLinkedElement.cs
│ │ │ │ ├── SnoopLoadedApplications.cs
│ │ │ │ ├── SnoopPick.cs
│ │ │ │ ├── SnoopSchemas.cs
│ │ │ │ ├── SnoopUpdaters.cs
│ │ │ │ └── SnoopVisibleInView.cs
│ │ │ ├── SourceOfObjects.cs
│ │ │ ├── UpdaterInfoWizard.cs
│ │ │ └── VersionChecker.cs
│ │ ├── Extensions
│ │ │ ├── Autodesk.Revit.DB
│ │ │ │ ├── BoundingBoxXYZExtensions.cs
│ │ │ │ ├── DocumentExtensions.cs
│ │ │ │ ├── ElementIdExtensions.cs
│ │ │ │ ├── GeometryObjectExtensions.cs
│ │ │ │ ├── ParameterExtensions.cs
│ │ │ │ └── XYZExtensions.cs
│ │ │ ├── Autodesk.Revit.UI
│ │ │ │ ├── RibbonPanelExtensions.cs
│ │ │ │ └── UIControlledApplicationExtensions.cs
│ │ │ └── System
│ │ │ ├── Collections.Generic
│ │ │ │ ├── IDictionaryExtensions.cs
│ │ │ │ ├── IEnumerableExtensions.cs
│ │ │ │ └── IListExtensions.cs
│ │ │ ├── DoubleExtensions.cs
│ │ │ ├── ExceptionExtensions.cs
│ │ │ ├── IntPtrExtensions.cs
│ │ │ ├── Linq.Expressions
│ │ │ │ └── LambdaExpressionExtensions.cs
│ │ │ ├── ObjectExtensions.cs
│ │ │ ├── Reflection
│ │ │ │ ├── MethodInfoExtensions.cs
│ │ │ │ └── PropertyInfoExtensions.cs
│ │ │ ├── Runtime.CompilerServices
│ │ │ │ └── IsExternalInit .cs
│ │ │ ├── StringExtensions.cs
│ │ │ ├── Threading.Tasks
│ │ │ │ └── TaskExtensions.cs
│ │ │ ├── TypeExtensions.cs
│ │ │ ├── VersionExtensions.cs
│ │ │ ├── Windows
│ │ │ │ └── DependencyObjectExtensions.cs
│ │ │ └── Windows.Threading
│ │ │ └── DispatcherTimerExtensions.cs
│ │ ├── MainWindow.xaml
│ │ ├── MainWindow.xaml.cs
│ │ ├── Properties
│ │ │ ├── AppSettings.Designer.cs
│ │ │ ├── AppSettings.settings
│ │ │ ├── AssemblyInfo.cs
│ │ │ └── launchSettings.json
│ │ ├── Resources
│ │ │ ├── Templates
│ │ │ │ ├── All.xaml
│ │ │ │ ├── Button.xaml
│ │ │ │ ├── GridViewColumnHeader.xaml
│ │ │ │ ├── ListBoxItem.xaml
│ │ │ │ ├── ListViewItem.xaml
│ │ │ │ ├── ScrollBar.xaml
│ │ │ │ ├── ScrollViewer.xaml
│ │ │ │ ├── TabControlEx.xaml
│ │ │ │ ├── TextBox.xaml
│ │ │ │ ├── ToggleButton.xaml
│ │ │ │ └── Window.xaml
│ │ │ ├── Themes
│ │ │ │ ├── Dark.Colors.xaml
│ │ │ │ ├── DarkR2024.Colors.xaml
│ │ │ │ └── Default.Colors.xaml
│ │ │ └── VectorGraphic.xaml
│ │ ├── RevitDBExplorer.csproj
│ │ ├── UIComponents
│ │ │ ├── BusyIndicator
│ │ │ │ ├── BusyIndicator.xaml
│ │ │ │ └── BusyIndicator.xaml.cs
│ │ │ ├── CommandAndControl
│ │ │ │ ├── CommandAndControlView.xaml
│ │ │ │ ├── CommandAndControlView.xaml.cs
│ │ │ │ └── CommandAndControlVM.cs
│ │ │ ├── List
│ │ │ │ ├── CompareAndPinToolInfo.xaml
│ │ │ │ ├── CompareAndPinToolInfo.xaml.cs
│ │ │ │ ├── DataTemplates.xaml
│ │ │ │ ├── ListView.xaml
│ │ │ │ ├── ListView.xaml.cs
│ │ │ │ ├── ListVM.cs
│ │ │ │ ├── ValueEditors
│ │ │ │ │ ├── DoubleEditor.xaml
│ │ │ │ │ ├── ExecuteEditor.xaml
│ │ │ │ │ ├── IntegerEditor.xaml
│ │ │ │ │ └── StringEditor.xaml
│ │ │ │ ├── ValuePresenters
│ │ │ │ │ ├── DefaultPresenter.xaml
│ │ │ │ │ ├── EmptyPresenter.xaml
│ │ │ │ │ ├── ErrorPresenter.xaml
│ │ │ │ │ └── ValueContainers
│ │ │ │ │ └── ColorContainer.xaml
│ │ │ │ ├── ViewModels
│ │ │ │ │ ├── ListItem.cs
│ │ │ │ │ ├── ListItemFactory.cs
│ │ │ │ │ ├── ListItemForMember.cs
│ │ │ │ │ └── ListItemForParameter.cs
│ │ │ │ └── WPF
│ │ │ │ ├── DataTemplateSelectorForPropertyType.cs
│ │ │ │ └── DynamicGridViewConverter.cs
│ │ │ ├── QueryEditor
│ │ │ │ ├── QueryEditorViewModel.cs
│ │ │ │ ├── QueryEditorView.xaml
│ │ │ │ └── QueryEditorView.xaml.cs
│ │ │ ├── QueryVisualization
│ │ │ │ ├── CommandVM.cs
│ │ │ │ ├── QueryVisualizationView.xaml
│ │ │ │ ├── QueryVisualizationView.xaml.cs
│ │ │ │ └── QueryVisualizationVM.cs
│ │ │ ├── Scripting
│ │ │ │ ├── RDScriptingView.xaml
│ │ │ │ └── RDScriptingView.xaml.cs
│ │ │ ├── Trees
│ │ │ │ ├── Base
│ │ │ │ │ ├── BaseTreeViewModel.cs
│ │ │ │ │ ├── BaseTreeView.xaml
│ │ │ │ │ ├── BaseTreeView.xaml.cs
│ │ │ │ │ ├── Items
│ │ │ │ │ │ ├── GroupTreeItem.cs
│ │ │ │ │ │ ├── SnoopableObjectTreeItem.cs
│ │ │ │ │ │ ├── TreeItem.cs
│ │ │ │ │ │ └── UtilityGroupTreeItem.cs
│ │ │ │ │ └── TreeItemsCommands.cs
│ │ │ │ ├── Explorer
│ │ │ │ │ ├── ExplorerTreeViewModel.cs
│ │ │ │ │ ├── ExplorerTreeView.xaml
│ │ │ │ │ └── ExplorerTreeView.xaml.cs
│ │ │ │ └── Utility
│ │ │ │ ├── UtilityTreeViewModel.cs
│ │ │ │ ├── UtilityTreeView.xaml
│ │ │ │ └── UtilityTreeView.xaml.cs
│ │ │ └── Workspaces
│ │ │ ├── WorkspacesViewModel.cs
│ │ │ ├── WorkspacesView.xaml
│ │ │ ├── WorkspacesView.xaml.cs
│ │ │ └── WorkspaceViewModel.cs
│ │ ├── Utils
│ │ │ ├── ApplicationModifyTab.cs
│ │ │ └── WindowTitleGenerator.cs
│ │ └── WPF
│ │ ├── AttachedProperties
│ │ │ ├── ButtonAPcs.cs
│ │ │ ├── ClickOnUp.cs
│ │ │ ├── DataGridAP.cs
│ │ │ ├── HyperlinkAP.cs
│ │ │ └── TextBlockAP.cs
│ │ ├── BaseCommand.cs
│ │ ├── BaseViewModel.cs
│ │ ├── BindingProxy.cs
│ │ ├── Controls
│ │ │ ├── TabControlEx.cs
│ │ │ ├── TextBoxWithPlaceholder.xaml
│ │ │ └── TextBoxWithPlaceholder.xaml.cs
│ │ ├── Converters
│ │ │ ├── BoolToVisibilityConverter.cs
│ │ │ ├── ColorToBrushConverter.cs
│ │ │ ├── EnumToVisibilityConverter.cs
│ │ │ ├── MultiBindingOrConverter.cs
│ │ │ ├── PercentageOfValueConverter.cs
│ │ │ ├── SnoopableMemberToToolTipConverter.cs
│ │ │ ├── StringIsNotNullOrEmptyToBoolConverter.cs
│ │ │ ├── StringIsNullOrEmptyToBoolConverter.cs
│ │ │ ├── StringToVisibilityConverter.cs
│ │ │ ├── StringTruncateConverter.cs
│ │ │ └── ToResourceWithKeyConverter.cs
│ │ ├── GlobalKeyboardHook.cs
│ │ ├── MarkupExtensions
│ │ │ └── SettingBindingExtension.cs
│ │ ├── RelayCommand.cs
│ │ └── ThemeResourceDictionary.cs
│ ├── RevitDBExplorer.API
│ │ ├── IRDBEController.cs
│ │ ├── RevitDBExplorer.API.csproj
│ │ └── RevitDBExplorer.cs
│ └── RevitDBExplorer.API.Demo
│ ├── RevitDBExplorer.API.Demo.addin
│ ├── RevitDBExplorer.API.Demo.csproj
│ └── RunDemoCommand.cs
└── tests
├── app.config
├── assets
│ └── testmodel_rdq.rvt
├── packages.config
├── Properties
│ └── AssemblyInfo.cs
├── RDQ
│ ├── CommandParserTests.cs
│ └── QueryParserTests.cs
└── RevitDBExplorer.Tests.csproj
107 directories, 469 files
RevitDBExplorer:高效的Revit数据库浏览与编辑工具
RevitDBExplorer是一款先进的Revit数据库探索工具,它不仅能够让用户浏览Revit数据库,还支持编辑任意参数值、使用直观的语法查询数据库、通过C#脚本进行数据库编程以及可视化元素的几何特征。
主要功能:
- 更便捷地处理Element.Geometry
- 对象和参数的比较
- 查询Revit数据库
- 编写和执行Revit数据库脚本
- 支持ad hoc SELECT和UPDATE命令
- 方便访问Revit API文档
- 编辑参数值
- 对ForgeTypeId提供广泛支持
- 对Revit可扩展存储提供更好的支持
- 暗黑和亮色UI主题
- 监控Revit事件
安装方法:
下载并安装RevitDBExplorer.msi。该安装程序将为Revit 2021至2025版本安装Revit数据库浏览器。
特性介绍:
- Element.Geometry的简化操作
- 几何特性的可视化展示
- 使用RDQ(Revit数据库查询)和RDS(Revit数据库脚本)增强数据库查询和脚本编写能力
- 通过REM(Revit事件监控)监控Revit事件,提升开发和调试效率。
无论您是Revit开发者还是BIM专业人员,RevitDBExplorer都能为您的工作带来便利和效率的提升。
【实例截图】
【核心代码】
文件清单
└── RevitDBExplorer-4e0414c6a5aeb9d43beff86b12e9d1e1cdc0f68d
├── binaries
│ └── revit
│ ├── 2021
│ │ ├── AdWindows.dll
│ │ ├── RevitAddInUtility.dll
│ │ ├── RevitAPI.dll
│ │ ├── RevitAPIUI.dll
│ │ ├── RevitAPIUI.xml
│ │ └── RevitAPI.xml
│ ├── 2022
│ │ ├── AdWindows.dll
│ │ ├── RevitAddInUtility.dll
│ │ ├── RevitAPI.dll
│ │ ├── RevitAPIUI.dll
│ │ ├── RevitAPIUI.xml
│ │ └── RevitAPI.xml
│ ├── 2023
│ │ ├── AdWindows.dll
│ │ ├── Microsoft.Expression.Interactions.dll
│ │ ├── RevitAddInUtility.dll
│ │ ├── RevitAPI.dll
│ │ ├── RevitAPIUI.dll
│ │ ├── RevitAPIUI.xml
│ │ ├── RevitAPI.xml
│ │ └── System.Windows.Interactivity.dll
│ └── 2024
│ ├── AdWindows.dll
│ ├── Microsoft.Expression.Interactions.dll
│ ├── RevitAddInUtility.dll
│ ├── RevitAPI.dll
│ ├── RevitAPIUI.dll
│ ├── RevitAPIUI.xml
│ ├── RevitAPI.xml
│ └── System.Windows.Interactivity.dll
├── documentation
│ ├── examples
│ │ ├── 2.0.easier-work-with-element-geometry.gif
│ │ ├── 2.0.revit-database-scripting-select-query.gif
│ │ ├── 2.0.revit-database-scripting-update-command.gif
│ │ ├── better-support-for-revit-extensible-storage.gif
│ │ ├── compare-and-pin.gif
│ │ ├── compare-objects-and-parameters.gif
│ │ ├── dark-and-light-ui-themes.gif
│ │ ├── easier-work-with-element-geometry.gif
│ │ ├── easier-work-with-geometry.gif
│ │ ├── easy-access-to-revit-api-documentation.gif
│ │ ├── extensive-support-for-ForgeTypeId.gif
│ │ ├── filterable-tree-of-elements-and-list-of-properties-and-methods.gif
│ │ ├── filterable-tree-of-elements-and-list-of-properties-and-methods.v2.gif
│ │ ├── more-advanced-tree-view.gif
│ │ ├── more-natural-access-to-Extensible-Storage-entities.gif
│ │ ├── possibility-to-query-Revit-database-from-UI.gif
│ │ ├── rdq-revit-database-query-with-rql-revit-query-language.gif
│ │ ├── rdq-revit-database-query-with-rql-revit-query-language.v2.gif
│ │ ├── revit-database-scripting-select-query.gif
│ │ ├── revit-database-scripting-update-command.gif
│ │ ├── set.parameter.value.gif
│ │ ├── snooping-all-categories-that-may-be-used-in-a-ParameterFilterElement.png
│ │ ├── snooping-all-Forge-types.png
│ │ ├── snooping-events.gif
│ │ ├── snooping-Extensible-Storage-framework-schemas.png
│ │ ├── snooping-loaded-external-applications.gif
│ │ ├── snooping-updaters.gif
│ │ ├── tooltips-with-Revit-documentation.png
│ │ └── you-can-get-every-element-that-has-an-entity-of-a-given-schema.png
│ ├── images
│ │ ├── BackgroundImage.png
│ │ ├── BannerImage.png
│ │ ├── RDBE.ico
│ │ ├── RDBE.Icon.16.png
│ │ ├── RDBE.Icon.32.png
│ │ ├── RDBS.ico
│ │ ├── RDBS.Icon.16.png
│ │ └── RDBS.Icon.32.png
│ ├── revit-database-querying.md
│ ├── revit-database-scripting.md
│ └── revit-database-visualization.md
├── license.md
├── readme.md
├── RevitDBExplorer.addin
├── RevitDBExplorer.sln
├── setup
│ ├── App.config
│ ├── packages.config
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── SetupBuilder.csproj
├── sources
│ ├── RevitDBExplorer
│ │ ├── APIAdapter.cs
│ │ ├── app.config
│ │ ├── Application.cs
│ │ ├── Command.cs
│ │ ├── ConfigWindow.xaml
│ │ ├── ConfigWindow.xaml.cs
│ │ ├── Domain
│ │ │ ├── AddInManifestWizard.cs
│ │ │ ├── CHMService.cs
│ │ │ ├── DataModel
│ │ │ │ ├── Accessors
│ │ │ │ │ ├── IAccessor.cs
│ │ │ │ │ ├── IAccessorWithCodeGeneration.cs
│ │ │ │ │ ├── IAccessorWithReadAndSnoop.cs
│ │ │ │ │ └── ReadResult.cs
│ │ │ │ ├── MemberAccessors
│ │ │ │ │ ├── AssetProperties
│ │ │ │ │ │ └── AssetProperties_Item.cs
│ │ │ │ │ ├── Curve
│ │ │ │ │ │ └── Curve_GetEndPoint.cs
│ │ │ │ │ ├── DialogBoxShowingEventArgs
│ │ │ │ │ │ └── DialogBoxShowingEventArgs_OverrideResult.cs
│ │ │ │ │ ├── Document
│ │ │ │ │ │ ├── Document_Close.cs
│ │ │ │ │ │ └── Document_PlanTopology.cs
│ │ │ │ │ ├── Element
│ │ │ │ │ │ ├── Element_BoundingBox.cs
│ │ │ │ │ │ ├── Element_Geometry.cs
│ │ │ │ │ │ ├── Element_GetDependentElements.cs
│ │ │ │ │ │ ├── Element_GetEntity.cs
│ │ │ │ │ │ ├── Element_GetMaterialArea.cs
│ │ │ │ │ │ ├── Element_GetMaterialVolume.cs
│ │ │ │ │ │ ├── Element_GetPhaseStatus.cs
│ │ │ │ │ │ └── Element_Id.cs
│ │ │ │ │ ├── Entity
│ │ │ │ │ │ └── Entity_Get.cs
│ │ │ │ │ ├── ExternalService
│ │ │ │ │ │ └── ExternalService_GetServer.cs
│ │ │ │ │ ├── FailureHandlingOptions
│ │ │ │ │ │ └── FailureHandlingOptions.cs
│ │ │ │ │ ├── ForgeTypeId
│ │ │ │ │ │ └── ForgeTypeId_Clear.cs
│ │ │ │ │ ├── GenericFactory.cs
│ │ │ │ │ ├── HostObject
│ │ │ │ │ │ └── HostObject_FindInserts.cs
│ │ │ │ │ ├── MemberAccessorByFunc.cs
│ │ │ │ │ ├── MemberAccessorByIteration.cs
│ │ │ │ │ ├── MemberAccessorByRefCompiled.cs
│ │ │ │ │ ├── MemberAccessorByRef.cs
│ │ │ │ │ ├── MemberAccessorByType.cs
│ │ │ │ │ ├── MemberAccessorFactory.cs
│ │ │ │ │ ├── MemberAccessorForConstValue.cs
│ │ │ │ │ ├── MemberAccessorForNotExposed.cs
│ │ │ │ │ ├── MemberAccessorForStatic.cs
│ │ │ │ │ ├── MemberAccessorTyped.cs
│ │ │ │ │ ├── MepSection
│ │ │ │ │ │ ├── MepSection_GetCoefficient.cs
│ │ │ │ │ │ ├── MepSection_GetPressureDrop.cs
│ │ │ │ │ │ ├── MepSection_GetSegmentLength.cs
│ │ │ │ │ │ └── MepSection_IsMain.cs
│ │ │ │ │ ├── Parameter
│ │ │ │ │ │ ├── Parameter_Set.cs
│ │ │ │ │ │ └── Parameter_SetValueString.cs
│ │ │ │ │ ├── PrintManager
│ │ │ │ │ │ └── PrintManager_SubmitPrint.cs
│ │ │ │ │ ├── Rebar
│ │ │ │ │ │ ├── Rebar_GetCenterlineCurves.cs
│ │ │ │ │ │ ├── Rebar_GetOverridableHookParameters.cs
│ │ │ │ │ │ ├── Rebar_GetTransformedCenterlineCurves.cs
│ │ │ │ │ │ └── Rebar_IsBarHidden.cs
│ │ │ │ │ ├── RebarBarType
│ │ │ │ │ │ ├── RebarBarType_GetAutoCalcHookLengths.cs
│ │ │ │ │ │ ├── RebarBarType_GetHookLength.cs
│ │ │ │ │ │ ├── RebarBarType_GetHookOffsetLength.cs
│ │ │ │ │ │ ├── RebarBarType_GetHookPermission.cs
│ │ │ │ │ │ └── RebarBarType_GetHookTangentLength.cs
│ │ │ │ │ ├── RevitLinkType
│ │ │ │ │ │ └── RevitLinkType_Load.cs
│ │ │ │ │ ├── SpatialElement
│ │ │ │ │ │ └── SpatialElement_GetBoundarySegments.cs
│ │ │ │ │ ├── SpatialFieldManager
│ │ │ │ │ │ └── SpatialFieldManager_GetResultSchema.cs
│ │ │ │ │ └── View
│ │ │ │ │ ├── View_Duplicate.cs
│ │ │ │ │ ├── View_GetFilterOverrides.cs
│ │ │ │ │ ├── View_GetFilterVisibility.cs
│ │ │ │ │ ├── View_GetNonControlledTemplateParameterIds.cs
│ │ │ │ │ └── View_GetTemplateParameterIds.cs
│ │ │ │ ├── MemberTemplates
│ │ │ │ │ ├── Accessors
│ │ │ │ │ │ ├── AnalyticalToPhysicalAssociationManager_GetAssociatedElementId.cs
│ │ │ │ │ │ ├── AnalyticalToPhysicalAssociationManager_GetAssociatedElementIds.cs
│ │ │ │ │ │ ├── AnalyticalToPhysicalAssociationManager_HasAssociation.cs
│ │ │ │ │ │ ├── BoundingBox_BoundingBoxIntersectsFilter.cs
│ │ │ │ │ │ ├── HostObjectUtils_GetSideFaces.cs
│ │ │ │ │ │ ├── JoinGeometryUtils_IsCuttingElementInJoin.cs
│ │ │ │ │ │ ├── Schema_EraseSchemaAndAllEntities .cs
│ │ │ │ │ │ └── Schema_GetAllElements.cs
│ │ │ │ │ ├── Base
│ │ │ │ │ │ └── SnoopableMemberTemplate.cs
│ │ │ │ │ ├── BoundingBox_Templates.cs
│ │ │ │ │ ├── Document_Templates.cs
│ │ │ │ │ ├── Element_Templates.cs
│ │ │ │ │ ├── Family_Templates.cs
│ │ │ │ │ ├── ForgeTypeId_Templates.cs
│ │ │ │ │ ├── HostObject_Templates.cs
│ │ │ │ │ ├── IExternalApplication_Templates.cs
│ │ │ │ │ ├── JoinGeometryUtils_Templates.cs
│ │ │ │ │ ├── PartUtils_Templates.cs
│ │ │ │ │ ├── Schema_Templates.cs
│ │ │ │ │ ├── UpdaterInfo_Templates.cs
│ │ │ │ │ ├── View_Templates.cs
│ │ │ │ │ └── WorksharingUtils_Templates.cs
│ │ │ │ ├── Parameters
│ │ │ │ │ └── ParameterAccessor.cs
│ │ │ │ ├── SnoopableContext.cs
│ │ │ │ ├── SnoopableItem.cs
│ │ │ │ ├── SnoopableMember.cs
│ │ │ │ ├── SnoopableObject.cs
│ │ │ │ ├── SnoopableParameter.cs
│ │ │ │ ├── Streams
│ │ │ │ │ ├── Base
│ │ │ │ │ │ ├── DeclaringType.cs
│ │ │ │ │ │ ├── MemberDescriptor.cs
│ │ │ │ │ │ └── MemberKind.cs
│ │ │ │ │ ├── MemberStreamer.cs
│ │ │ │ │ ├── MemberStreamerForSystemType.cs
│ │ │ │ │ └── MemberStreamerForTemplates.cs
│ │ │ │ ├── ValueContainers
│ │ │ │ │ ├── Base
│ │ │ │ │ │ ├── ITypeHandler.cs
│ │ │ │ │ │ ├── IValueContainer.cs
│ │ │ │ │ │ ├── Traits.cs
│ │ │ │ │ │ ├── TypeHandler.cs
│ │ │ │ │ │ ├── ValueContainer.cs
│ │ │ │ │ │ └── ValueContainerFactory.cs
│ │ │ │ │ ├── BindingMapHandler.cs
│ │ │ │ │ ├── BoolHandler.cs
│ │ │ │ │ ├── BoundarySegmentHandler.cs
│ │ │ │ │ ├── BoundingBoxXYZHandler.cs
│ │ │ │ │ ├── CategoryHandler.cs
│ │ │ │ │ ├── CategoryNameMapHandler.cs
│ │ │ │ │ ├── ColorHandler.cs
│ │ │ │ │ ├── CurveHandler.cs
│ │ │ │ │ ├── DocumentChangedEventArgsHandler.cs
│ │ │ │ │ ├── DoubleHandler.cs
│ │ │ │ │ ├── DoubleNullableHandler.cs
│ │ │ │ │ ├── EdgeHandler.cs
│ │ │ │ │ ├── ElementHandler.cs
│ │ │ │ │ ├── ElementIdHandler.cs
│ │ │ │ │ ├── EnumHandler.cs
│ │ │ │ │ ├── EvaluatedParameterHandler.cs
│ │ │ │ │ ├── FaceHandler.cs
│ │ │ │ │ ├── FailureDefinitionIdHandler.cs
│ │ │ │ │ ├── FailuresProcessingEventArgsHandler.cs
│ │ │ │ │ ├── FamilyParameterHandler.cs
│ │ │ │ │ ├── ForgeTypeIdHandler.cs
│ │ │ │ │ ├── GeometryElementHandler.cs
│ │ │ │ │ ├── GuidHandler.cs
│ │ │ │ │ ├── IEnumerableHandler.cs
│ │ │ │ │ ├── IExternalApplicationHandler.cs
│ │ │ │ │ ├── IListElementIdHandler.cs
│ │ │ │ │ ├── IntHandler.cs
│ │ │ │ │ ├── LocationHandler.cs
│ │ │ │ │ ├── ObjectHandler.cs
│ │ │ │ │ ├── ParameterHandler.cs
│ │ │ │ │ ├── ParameterMapHandler.cs
│ │ │ │ │ ├── ParameterSetHandler.cs
│ │ │ │ │ ├── PointHandler.cs
│ │ │ │ │ ├── RebarHandler.cs
│ │ │ │ │ ├── RevitApiEventArgsHandler.cs
│ │ │ │ │ ├── SchedulableFieldHandler.cs
│ │ │ │ │ ├── ScheduleFieldHandler.cs
│ │ │ │ │ ├── SolidHandler.cs
│ │ │ │ │ ├── SpatialElementBoundaryOptionsHandler.cs
│ │ │ │ │ ├── StringHandler.cs
│ │ │ │ │ ├── StructuralSectionHandler.cs
│ │ │ │ │ ├── TransformHandler.cs
│ │ │ │ │ ├── TypeHandler.cs
│ │ │ │ │ ├── UpdaterInfoHandler.cs
│ │ │ │ │ ├── UVHandler.cs
│ │ │ │ │ ├── ValueTypeHandler.cs
│ │ │ │ │ ├── WorksetIdHandler.cs
│ │ │ │ │ └── XYZHandler.cs
│ │ │ │ └── ValueViewModels
│ │ │ │ ├── Base
│ │ │ │ │ ├── IValueEditor.cs
│ │ │ │ │ ├── IValuePresenter.cs
│ │ │ │ │ ├── IValueViewModel.cs
│ │ │ │ │ └── Traits.cs
│ │ │ │ ├── DefaultPresenter.cs
│ │ │ │ ├── EmptyPresenter.cs
│ │ │ │ ├── ErrorPresenter.cs
│ │ │ │ ├── ExecuteEditor.cs
│ │ │ │ └── ValueEditor.cs
│ │ │ ├── EventMonitor.cs
│ │ │ ├── ExternalExecutor.cs
│ │ │ ├── Guard.cs
│ │ │ ├── Labeler.cs
│ │ │ ├── Presentation
│ │ │ │ ├── DrawInRevitCommand.cs
│ │ │ │ ├── DrawInRevitWithAVFCommand.cs
│ │ │ │ ├── FreezeCommand.cs
│ │ │ │ ├── IsolateInRevitCommand.cs
│ │ │ │ ├── SelectInRevitCommand.cs
│ │ │ │ ├── ShowInRevitCommand.cs
│ │ │ │ └── SnoopInNewWindow.cs
│ │ │ ├── QuoteGenerator.cs
│ │ │ ├── RevitDatabaseQuery
│ │ │ │ ├── Autocompletion
│ │ │ │ │ ├── AutocompleteItemProvider.cs
│ │ │ │ │ ├── FavoritesManager.cs
│ │ │ │ │ └── Internals
│ │ │ │ │ ├── AutocompleteItem.cs
│ │ │ │ │ ├── AutocompleteItemGroups.cs
│ │ │ │ │ └── IAutocompleteItem.cs
│ │ │ │ ├── CmdType.cs
│ │ │ │ ├── Filters
│ │ │ │ │ ├── CategoryFilter.cs
│ │ │ │ │ ├── ClassFilter.cs
│ │ │ │ │ ├── ElementIdFilter.cs
│ │ │ │ │ ├── ElementTypeFilter.cs
│ │ │ │ │ ├── Internals
│ │ │ │ │ │ ├── Filter.cs
│ │ │ │ │ │ ├── Group.cs
│ │ │ │ │ │ └── QueryItem.cs
│ │ │ │ │ ├── LevelFilter.cs
│ │ │ │ │ ├── OwnerViewFilter.cs
│ │ │ │ │ ├── ParameterFilter.cs
│ │ │ │ │ ├── RoomFilter.cs
│ │ │ │ │ ├── RuleFilter.cs
│ │ │ │ │ ├── StructuralTypeFilter.cs
│ │ │ │ │ ├── VisibleInViewFilter.cs
│ │ │ │ │ └── WorksetFilter.cs
│ │ │ │ ├── FuzzySearch
│ │ │ │ │ └── DataBucket.cs
│ │ │ │ ├── Parser
│ │ │ │ │ ├── CommandParser.cs
│ │ │ │ │ ├── Commands
│ │ │ │ │ │ ├── CategoryCmdDefinition.cs
│ │ │ │ │ │ ├── ClassCmdDefinition.cs
│ │ │ │ │ │ ├── ElementIdCmdDefinition.cs
│ │ │ │ │ │ ├── ElementTypeCmdDefinition.cs
│ │ │ │ │ │ ├── LevelCmdDefinition.cs
│ │ │ │ │ │ ├── NameCmdDefinition.cs
│ │ │ │ │ │ ├── NotElementTypeCmdDefinition.cs
│ │ │ │ │ │ ├── OwnerViewFilterCmdDefinition.cs
│ │ │ │ │ │ ├── ParameterArgument.cs
│ │ │ │ │ │ ├── ParameterCmdDefinition.cs
│ │ │ │ │ │ ├── RoomCmdDefinition.cs
│ │ │ │ │ │ ├── RuleBasedFilterCmdDefinition.cs
│ │ │ │ │ │ ├── SelectionCmdDefinition.cs
│ │ │ │ │ │ ├── StructuralTypeCmdDefinition.cs
│ │ │ │ │ │ ├── UniqueIdCmdDefinition.cs
│ │ │ │ │ │ ├── VisibleInViewCmdDefinition.cs
│ │ │ │ │ │ └── WorksetCmdDefinition.cs
│ │ │ │ │ ├── ICommandArgument.cs
│ │ │ │ │ ├── ICommand.cs
│ │ │ │ │ ├── ICommandDefinition.cs
│ │ │ │ │ └── Operators.cs
│ │ │ │ ├── QueryParser.cs
│ │ │ │ ├── RevitDatabaseQueryService.cs
│ │ │ │ └── SeedProviders
│ │ │ │ ├── Internals
│ │ │ │ │ └── Provider.cs
│ │ │ │ ├── SelectionProvider.cs
│ │ │ │ └── UniqueIdProvider.cs
│ │ │ ├── RevitDatabaseScripting
│ │ │ │ ├── Dummies
│ │ │ │ │ └── TypePlaceholder.cs
│ │ │ │ ├── MemberInvocationTemplates.cs
│ │ │ │ ├── MemberInvocationTemplateSelector.cs
│ │ │ │ ├── ParameterBuiltIn_UpdateTemplate.cs
│ │ │ │ ├── ParameterProject_UpdateTemplate.cs
│ │ │ │ ├── ParameterShared_UpdateTemplate.cs
│ │ │ │ └── Query_SelectTemplate.cs
│ │ │ ├── RevitDocumentationReader.cs
│ │ │ ├── Selectors
│ │ │ │ ├── Base
│ │ │ │ │ └── ISelector.cs
│ │ │ │ ├── SelectorFactory.cs
│ │ │ │ ├── SnoopActiveDocument.cs
│ │ │ │ ├── SnoopActiveView.cs
│ │ │ │ ├── SnoopApplication.cs
│ │ │ │ ├── SnoopCategories.cs
│ │ │ │ ├── SnoopCurrentSelection.cs
│ │ │ │ ├── SnoopDatabase.cs
│ │ │ │ ├── SnoopDependentElements.cs
│ │ │ │ ├── SnoopElementsOnScreen.cs
│ │ │ │ ├── SnoopExternalServices.cs
│ │ │ │ ├── SnoopForge.cs
│ │ │ │ ├── SnoopLinkedElement.cs
│ │ │ │ ├── SnoopLoadedApplications.cs
│ │ │ │ ├── SnoopPick.cs
│ │ │ │ ├── SnoopSchemas.cs
│ │ │ │ ├── SnoopUpdaters.cs
│ │ │ │ └── SnoopVisibleInView.cs
│ │ │ ├── SourceOfObjects.cs
│ │ │ ├── UpdaterInfoWizard.cs
│ │ │ └── VersionChecker.cs
│ │ ├── Extensions
│ │ │ ├── Autodesk.Revit.DB
│ │ │ │ ├── BoundingBoxXYZExtensions.cs
│ │ │ │ ├── DocumentExtensions.cs
│ │ │ │ ├── ElementIdExtensions.cs
│ │ │ │ ├── GeometryObjectExtensions.cs
│ │ │ │ ├── ParameterExtensions.cs
│ │ │ │ └── XYZExtensions.cs
│ │ │ ├── Autodesk.Revit.UI
│ │ │ │ ├── RibbonPanelExtensions.cs
│ │ │ │ └── UIControlledApplicationExtensions.cs
│ │ │ └── System
│ │ │ ├── Collections.Generic
│ │ │ │ ├── IDictionaryExtensions.cs
│ │ │ │ ├── IEnumerableExtensions.cs
│ │ │ │ └── IListExtensions.cs
│ │ │ ├── DoubleExtensions.cs
│ │ │ ├── ExceptionExtensions.cs
│ │ │ ├── IntPtrExtensions.cs
│ │ │ ├── Linq.Expressions
│ │ │ │ └── LambdaExpressionExtensions.cs
│ │ │ ├── ObjectExtensions.cs
│ │ │ ├── Reflection
│ │ │ │ ├── MethodInfoExtensions.cs
│ │ │ │ └── PropertyInfoExtensions.cs
│ │ │ ├── Runtime.CompilerServices
│ │ │ │ └── IsExternalInit .cs
│ │ │ ├── StringExtensions.cs
│ │ │ ├── Threading.Tasks
│ │ │ │ └── TaskExtensions.cs
│ │ │ ├── TypeExtensions.cs
│ │ │ ├── VersionExtensions.cs
│ │ │ ├── Windows
│ │ │ │ └── DependencyObjectExtensions.cs
│ │ │ └── Windows.Threading
│ │ │ └── DispatcherTimerExtensions.cs
│ │ ├── MainWindow.xaml
│ │ ├── MainWindow.xaml.cs
│ │ ├── Properties
│ │ │ ├── AppSettings.Designer.cs
│ │ │ ├── AppSettings.settings
│ │ │ ├── AssemblyInfo.cs
│ │ │ └── launchSettings.json
│ │ ├── Resources
│ │ │ ├── Templates
│ │ │ │ ├── All.xaml
│ │ │ │ ├── Button.xaml
│ │ │ │ ├── GridViewColumnHeader.xaml
│ │ │ │ ├── ListBoxItem.xaml
│ │ │ │ ├── ListViewItem.xaml
│ │ │ │ ├── ScrollBar.xaml
│ │ │ │ ├── ScrollViewer.xaml
│ │ │ │ ├── TabControlEx.xaml
│ │ │ │ ├── TextBox.xaml
│ │ │ │ ├── ToggleButton.xaml
│ │ │ │ └── Window.xaml
│ │ │ ├── Themes
│ │ │ │ ├── Dark.Colors.xaml
│ │ │ │ ├── DarkR2024.Colors.xaml
│ │ │ │ └── Default.Colors.xaml
│ │ │ └── VectorGraphic.xaml
│ │ ├── RevitDBExplorer.csproj
│ │ ├── UIComponents
│ │ │ ├── BusyIndicator
│ │ │ │ ├── BusyIndicator.xaml
│ │ │ │ └── BusyIndicator.xaml.cs
│ │ │ ├── CommandAndControl
│ │ │ │ ├── CommandAndControlView.xaml
│ │ │ │ ├── CommandAndControlView.xaml.cs
│ │ │ │ └── CommandAndControlVM.cs
│ │ │ ├── List
│ │ │ │ ├── CompareAndPinToolInfo.xaml
│ │ │ │ ├── CompareAndPinToolInfo.xaml.cs
│ │ │ │ ├── DataTemplates.xaml
│ │ │ │ ├── ListView.xaml
│ │ │ │ ├── ListView.xaml.cs
│ │ │ │ ├── ListVM.cs
│ │ │ │ ├── ValueEditors
│ │ │ │ │ ├── DoubleEditor.xaml
│ │ │ │ │ ├── ExecuteEditor.xaml
│ │ │ │ │ ├── IntegerEditor.xaml
│ │ │ │ │ └── StringEditor.xaml
│ │ │ │ ├── ValuePresenters
│ │ │ │ │ ├── DefaultPresenter.xaml
│ │ │ │ │ ├── EmptyPresenter.xaml
│ │ │ │ │ ├── ErrorPresenter.xaml
│ │ │ │ │ └── ValueContainers
│ │ │ │ │ └── ColorContainer.xaml
│ │ │ │ ├── ViewModels
│ │ │ │ │ ├── ListItem.cs
│ │ │ │ │ ├── ListItemFactory.cs
│ │ │ │ │ ├── ListItemForMember.cs
│ │ │ │ │ └── ListItemForParameter.cs
│ │ │ │ └── WPF
│ │ │ │ ├── DataTemplateSelectorForPropertyType.cs
│ │ │ │ └── DynamicGridViewConverter.cs
│ │ │ ├── QueryEditor
│ │ │ │ ├── QueryEditorViewModel.cs
│ │ │ │ ├── QueryEditorView.xaml
│ │ │ │ └── QueryEditorView.xaml.cs
│ │ │ ├── QueryVisualization
│ │ │ │ ├── CommandVM.cs
│ │ │ │ ├── QueryVisualizationView.xaml
│ │ │ │ ├── QueryVisualizationView.xaml.cs
│ │ │ │ └── QueryVisualizationVM.cs
│ │ │ ├── Scripting
│ │ │ │ ├── RDScriptingView.xaml
│ │ │ │ └── RDScriptingView.xaml.cs
│ │ │ ├── Trees
│ │ │ │ ├── Base
│ │ │ │ │ ├── BaseTreeViewModel.cs
│ │ │ │ │ ├── BaseTreeView.xaml
│ │ │ │ │ ├── BaseTreeView.xaml.cs
│ │ │ │ │ ├── Items
│ │ │ │ │ │ ├── GroupTreeItem.cs
│ │ │ │ │ │ ├── SnoopableObjectTreeItem.cs
│ │ │ │ │ │ ├── TreeItem.cs
│ │ │ │ │ │ └── UtilityGroupTreeItem.cs
│ │ │ │ │ └── TreeItemsCommands.cs
│ │ │ │ ├── Explorer
│ │ │ │ │ ├── ExplorerTreeViewModel.cs
│ │ │ │ │ ├── ExplorerTreeView.xaml
│ │ │ │ │ └── ExplorerTreeView.xaml.cs
│ │ │ │ └── Utility
│ │ │ │ ├── UtilityTreeViewModel.cs
│ │ │ │ ├── UtilityTreeView.xaml
│ │ │ │ └── UtilityTreeView.xaml.cs
│ │ │ └── Workspaces
│ │ │ ├── WorkspacesViewModel.cs
│ │ │ ├── WorkspacesView.xaml
│ │ │ ├── WorkspacesView.xaml.cs
│ │ │ └── WorkspaceViewModel.cs
│ │ ├── Utils
│ │ │ ├── ApplicationModifyTab.cs
│ │ │ └── WindowTitleGenerator.cs
│ │ └── WPF
│ │ ├── AttachedProperties
│ │ │ ├── ButtonAPcs.cs
│ │ │ ├── ClickOnUp.cs
│ │ │ ├── DataGridAP.cs
│ │ │ ├── HyperlinkAP.cs
│ │ │ └── TextBlockAP.cs
│ │ ├── BaseCommand.cs
│ │ ├── BaseViewModel.cs
│ │ ├── BindingProxy.cs
│ │ ├── Controls
│ │ │ ├── TabControlEx.cs
│ │ │ ├── TextBoxWithPlaceholder.xaml
│ │ │ └── TextBoxWithPlaceholder.xaml.cs
│ │ ├── Converters
│ │ │ ├── BoolToVisibilityConverter.cs
│ │ │ ├── ColorToBrushConverter.cs
│ │ │ ├── EnumToVisibilityConverter.cs
│ │ │ ├── MultiBindingOrConverter.cs
│ │ │ ├── PercentageOfValueConverter.cs
│ │ │ ├── SnoopableMemberToToolTipConverter.cs
│ │ │ ├── StringIsNotNullOrEmptyToBoolConverter.cs
│ │ │ ├── StringIsNullOrEmptyToBoolConverter.cs
│ │ │ ├── StringToVisibilityConverter.cs
│ │ │ ├── StringTruncateConverter.cs
│ │ │ └── ToResourceWithKeyConverter.cs
│ │ ├── GlobalKeyboardHook.cs
│ │ ├── MarkupExtensions
│ │ │ └── SettingBindingExtension.cs
│ │ ├── RelayCommand.cs
│ │ └── ThemeResourceDictionary.cs
│ ├── RevitDBExplorer.API
│ │ ├── IRDBEController.cs
│ │ ├── RevitDBExplorer.API.csproj
│ │ └── RevitDBExplorer.cs
│ └── RevitDBExplorer.API.Demo
│ ├── RevitDBExplorer.API.Demo.addin
│ ├── RevitDBExplorer.API.Demo.csproj
│ └── RunDemoCommand.cs
└── tests
├── app.config
├── assets
│ └── testmodel_rdq.rvt
├── packages.config
├── Properties
│ └── AssemblyInfo.cs
├── RDQ
│ ├── CommandParserTests.cs
│ └── QueryParserTests.cs
└── RevitDBExplorer.Tests.csproj
107 directories, 469 files
好例子网口号:伸出你的我的手 — 分享!
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论