jeremytammik / RevitLookup

Interactive Revit RFA and RVT project database exploration tool to view and navigate BIM element parameters, properties and relationships.
http://thebuildingcoder.typepad.com
MIT License
1.03k stars 294 forks source link

Geometry visualization #245

Closed Nice3point closed 3 weeks ago

Nice3point commented 1 month ago

Summary of the Pull Request

What is this about:

Geometry visualization engine

Description:

In Revit, geometry is at the core of every model. Whether you are dealing with simple shapes or intricate structures, having the ability to visualize geometric elements can significantly improve your workflow, analysis and understanding of the BIM.

Visualization available in the context menu for each object:

изображение

Mesh visualization

The Mesh Visualization feature emphasizes the detailed structure of a mesh, providing insights into its geometric composition. Meshes consist of vertices, forming a network that approximates the surface of a 3D object. This feature enables to:

изображение

Setting Description
Surface Shows the mesh surface
Extrusion Adjusts the depth of the mesh surface extrusion to enhance the 3D appearance for small objects
Transparency Sets the mesh surface transparency
Mesh grid Shows the mesh grid lines, highlighting the individual faces and their connections.
Normal vector Shows the normal vectors of the mesh vertices

Face visualization

The Face Visualization feature focuses on rendering and inspecting individual faces of solid geometry. Faces are planar or curved surfaces that define the boundaries of a solid. This feature enables users to:

изображение

Setting Description
Surface Shows the face surface
Extrusion Adjusts the depth of the face surface extrusion to enhance the 3D appearance for small objects
Transparency Sets the face surface transparency
Mesh grid Shows the mesh grid lines, highlighting the individual faces and their connections.
Normal vector Shows the face centroid normal vector

Solid visualization

The Solid Visualization feature provides a comprehensive view of the entire solid geometry within a model. Solids are volumetric shapes that define the three-dimensional space occupied by objects. This feature enables users to:

изображение

Setting Description
Faces Shows the solid faces
Transparency Sets the face surface transparency
Edges Shows the solid edges
Cage Surface Shows a cage around the solid, simplifying the representation of the solid's boundaries
Cage Size Adjusts the size of the cage
Cage Transparency Sets the cage surface transparency

The wireframe display mode is best suited for this type of geometry. However, if you need to completely isolate the Revit geometry from the visualised geometry, temporarily hide the element being explored. To analyze internal structure, use section box, hide the element and crop it.

Curve visualization

The Curve Visualization feature highlights curves within the geometry, including lines, arcs, splines, and others. Curves define the paths and shapes in a model. This feature enables users to:

изображение

Setting Description
Surface Shows the surface along the curve path
Diameter Adjusts the diameter of the curve visualization, enhancing its visibility
Transparency Adjusts the transparency level of the curve surface
Polyline Shows the polyline approximation of the curve
Direction Shows the curve segments directions

Visualisation is only available for bound or cyclic curves

Edge visualization

The Edge Visualization feature focuses on the edges of geometry, which are the lines where two faces meet. This feature enables users to:

изображение

Setting Description
Surface Shows the surface along the edge path
Diameter Adjusts the diameter of the edge visualization, enhancing its visibility
Transparency Adjusts the transparency level of the edge surface
Polyline Shows the polyline approximation of the edge
Direction Shows the edge segments directions

Bounding box visualization

The Bounding Box Visualization feature represents the minimal box aligned with the cardinal axes that entirely encloses a geometric object. This feature enables users to:

изображение

Setting Description
Surface Shows the surface of the bounding box
Transparency Adjusts the transparency level of the bounding box surface
Edges Shows the edges of the bounding box, providing a clear outline
Axis Shows the axis vectors of the bounding box, indicating min and max points location

Transform is applied to the BoundingBox when visualising it

XYZ visualization

The XYZ Visualization feature illustrates the coordinates and orientation of points in the model space. This feature enables users to:

изображение

Setting Description
Planes Shows the coordinate planes for X, Y, and Z axes, helping to visualize spatial orientation
Length Adjusts the length of the planes and axes, providing a better scale reference for the model.
X axis Shows the X axis direction and its alignment in the 3D space.
Y axis Shows the Y axis direction and its alignment in the 3D space.
Z axis Shows the Z axis direction and its alignment in the 3D space.

Visualisation is not available for unit length vectors

Color Picker editor

To fine-tune your chosen color, select the central color in the color bar. The fine-tuning control lets you change the color's HSV, RGB, and HEX values.

To choose a similar color, select one of the segments on the left and right edges of the color bar.

изображение

Settings

Settings are saved between sessions. To completely reset to default values, open the settings and perform a reset

изображение

Quality Checklist

github-actions[bot] commented 1 month ago

Qodana for .NET

22 new problems were found

Inspection name Severity Problems
Invert 'if' statement to reduce nesting ◽️ Notice 6
Convert 'if' statement into 'switch' ◽️ Notice 5
Part of foreach loop can be converted into LINQ-expression but another 'GetEnumerator' method will be used ◽️ Notice 4
Member can be made static (shared) (private accessibility) ◽️ Notice 4
'if-return' statement can be rewritten as 'return' statement ◽️ Notice 2
Convert local variable or field into constant (private accessibility) ◽️ Notice 1

💡 Qodana analysis was run in the pull request mode: only the changed files were checked ☁️ View the detailed Qodana report

Detected 200 dependencies # Third-party software list This page lists the third-party software dependencies used in RevitLookup | Dependency | Version | Licenses | |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------|---------------------------------------------------------------------------------------------------| | [Azure.Core](https://github.com/Azure/azure-sdk-for-net/blob/Azure.Core_1.36.0/sdk/core/Azure.Core/README.md) | 1.36.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Azure.Identity](https://github.com/Azure/azure-sdk-for-net/blob/Azure.Identity_1.10.4/sdk/identity/Azure.Identity/README.md) | 1.10.4 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Azure.Security.KeyVault.Certificates](https://github.com/Azure/azure-sdk-for-net/blob/Azure.Security.KeyVault.Certificates_4.5.1/sdk/keyvault/Azure.Security.KeyVault.Certificates/README.md) | 4.5.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Azure.Security.KeyVault.Keys](https://github.com/Azure/azure-sdk-for-net/blob/Azure.Security.KeyVault.Keys_4.5.0/sdk/keyvault/Azure.Security.KeyVault.Keys/README.md) | 4.5.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Azure.Security.KeyVault.Secrets](https://github.com/Azure/azure-sdk-for-net/blob/Azure.Security.KeyVault.Secrets_4.5.0/sdk/keyvault/Azure.Security.KeyVault.Secrets/README.md) | 4.5.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [BenchmarkDotNet.Annotations](https://github.com/dotnet/BenchmarkDotNet) | 0.13.12 | [MIT](http://opensource.org/licenses/mit-license.php) | | [BenchmarkDotNet](https://github.com/dotnet/BenchmarkDotNet) | 0.13.12 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Bogus](https://github.com/bchavez/Bogus) | 34.0.2 | [MIT](http://opensource.org/licenses/mit-license.php) | | [CommandLineParser](https://github.com/commandlineparser/commandline) | 2.9.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [CommunityToolkit.Mvvm](https://github.com/CommunityToolkit/dotnet) | 8.2.2 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Gee.External.Capstone](https://github.com/9ee1/Capstone.NET) | 2.3.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Glob](https://github.com/kthompson/glob/) | 1.1.9 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Iced](https://github.com/icedland/iced) | 1.17.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [JetBrains.Annotations](https://www.jetbrains.com/help/resharper/Code_Analysis__Code_Annotations.html) | 2023.3.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.ApplicationInsights](https://go.microsoft.com/fwlink/?LinkId=392727) | 2.21.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Bcl.AsyncInterfaces](https://github.com/dotnet/corefx) | 1.1.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Bcl.AsyncInterfaces](https://github.com/dotnet/corefx) | 1.1.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Bcl.AsyncInterfaces](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Build.Framework](http://go.microsoft.com/fwlink/?LinkId=624683) | 17.8.3 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Build.Locator](https://github.com/microsoft/MSBuildLocator) | 1.6.10 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Build.Tasks.Core](http://go.microsoft.com/fwlink/?LinkId=624683) | 17.8.3 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Build.Utilities.Core](http://go.microsoft.com/fwlink/?LinkId=624683) | 17.8.3 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Build](http://go.microsoft.com/fwlink/?LinkId=624683) | 17.8.3 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.CodeAnalysis.Analyzers](https://github.com/dotnet/roslyn-analyzers) | 3.3.3 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.CodeAnalysis.CSharp](https://github.com/dotnet/roslyn) | 4.1.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.CodeAnalysis.Common](https://github.com/dotnet/roslyn) | 4.1.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Diagnostics.NETCore.Client](https://github.com/dotnet/diagnostics) | 0.2.251802 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Diagnostics.Runtime](https://github.com/Microsoft/clrmd) | 2.2.332302 | [MS-NET-LIBRARY](http://www.microsoft.com/web/webpi/eula/net_library_eula_enu.htm) | | [Microsoft.Diagnostics.Tracing.TraceEvent](https://github.com/Microsoft/perfview) | 3.0.2 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.DotNet.PlatformAbstractions](https://dot.net/) | 3.1.6 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Configuration.Abstractions](https://asp.net/) | 2.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Microsoft.Extensions.Configuration.Abstractions](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Configuration.Binder](https://asp.net/) | 2.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Microsoft.Extensions.Configuration.Binder](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Configuration.CommandLine](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Configuration.EnvironmentVariables](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Configuration.FileExtensions](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Configuration.Json](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Configuration.UserSecrets](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Configuration](https://asp.net/) | 2.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Microsoft.Extensions.Configuration](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.DependencyInjection.Abstractions](https://asp.net/) | 2.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Microsoft.Extensions.DependencyInjection.Abstractions](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.DependencyInjection](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.DependencyModel](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Diagnostics.Abstractions](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Diagnostics](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.FileProviders.Abstractions](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.FileProviders.Physical](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.FileSystemGlobbing](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Hosting.Abstractions](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Hosting](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Logging.Abstractions](https://asp.net/) | 2.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Microsoft.Extensions.Logging.Abstractions](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Logging.Configuration](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Logging.Console](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Logging.Debug](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Logging.EventLog](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Logging.EventSource](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Logging](https://asp.net/) | 2.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Microsoft.Extensions.Logging](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Options.ConfigurationExtensions](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Options](https://asp.net/) | 2.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Microsoft.Extensions.Options](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Extensions.Primitives](https://asp.net/) | 2.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Microsoft.Extensions.Primitives](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Identity.Client.Extensions.Msal](https://go.microsoft.com/fwlink/?linkid=844761) | 4.56.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Identity.Client](https://go.microsoft.com/fwlink/?linkid=844761) | 4.56.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.IdentityModel.Abstractions](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet) | 6.22.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.NET.StringTools](http://go.microsoft.com/fwlink/?LinkId=624683) | 17.8.3 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.NETCore.Platforms](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.NETCore.Targets](https://dot.net/) | 1.1.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [Microsoft.Win32.Registry](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Microsoft.Win32.SystemEvents](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Newtonsoft.Json](https://www.newtonsoft.com/json) | 13.0.3 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nice3point.Revit.Api.AdWindows](https://www.nuget.org/packages/Nice3point.Revit.Api.AdWindows) | 2021.1.50 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nice3point.Revit.Api.RevitAPI](https://www.nuget.org/packages/Nice3point.Revit.Api.RevitAPI) | 2021.1.50 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nice3point.Revit.Api.RevitAPIUI](https://www.nuget.org/packages/Nice3point.Revit.Api.RevitAPIUI) | 2021.1.50 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nice3point.Revit.Api.UIFramework](https://www.nuget.org/packages/Nice3point.Revit.Api.UIFramework) | 2021.1.50 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nice3point.Revit.Api.UIFrameworkServices](https://www.nuget.org/packages/Nice3point.Revit.Api.UIFrameworkServices) | 2021.1.50 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nice3point.Revit.Build.Tasks](https://github.com/Nice3point/Revit.Build.Tasks) | 2.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nice3point.Revit.Extensions](https://www.nuget.org/packages/Nice3point.Revit.Extensions) | 2021.3.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nice3point.Revit.Toolkit](https://github.com/Nice3point/RevitToolkit) | 2021.2.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [NuGet.Common](https://aka.ms/nugetprj) | 6.7.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [NuGet.Configuration](https://aka.ms/nugetprj) | 6.7.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [NuGet.Frameworks](https://aka.ms/nugetprj) | 6.7.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [NuGet.Packaging](https://aka.ms/nugetprj) | 6.7.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [NuGet.Versioning](https://aka.ms/nugetprj) | 6.7.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [Nuke.Build.Shared](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Build](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Common](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.ProjectModel](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.SolutionModel](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Tooling](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Utilities.IO.Compression](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Utilities.IO.Globbing](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Utilities.Net](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Utilities.Text.Json](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Utilities.Text.Yaml](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Nuke.Utilities](https://nuke.build/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Octokit](https://github.com/octokit/octokit.net) | 9.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Perfolizer](https://github.com/AndreyAkinshin/perfolizer) | 0.2.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Serilog.Extensions.Hosting](https://github.com/serilog/serilog-extensions-hosting) | 8.0.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [Serilog.Extensions.Logging](https://github.com/serilog/serilog-extensions-logging) | 8.0.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [Serilog.Formatting.Compact.Reader](https://github.com/serilog/serilog-formatting-compact-reader) | 3.0.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [Serilog.Formatting.Compact](https://github.com/serilog/serilog-formatting-compact) | 2.0.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [Serilog.Sinks.Autodesk.Revit](https://github.com/dosymep/Serilog.Sinks.Autodesk.Revit) | 2.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [Serilog.Sinks.Console](https://github.com/serilog/serilog-sinks-console) | 5.0.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [Serilog.Sinks.Console](https://github.com/serilog/serilog-sinks-console) | 5.0.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [Serilog.Sinks.Debug](https://github.com/serilog/serilog-sinks-debug) | 2.0.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [Serilog.Sinks.File](https://serilog.net/) | 5.0.0 | [Apache-2.0](http://www.apache.org/licenses/) | | [Serilog](https://serilog.net/) | 3.1.1 | [Apache-2.0](http://www.apache.org/licenses/) | | [SharpZipLib](https://github.com/icsharpcode/SharpZipLib) | 1.4.2 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Buffers](https://dot.net/) | 4.5.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.CodeDom](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Collections.Concurrent](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Collections.Immutable](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Collections.Immutable](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Collections](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.ComponentModel.Annotations](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Configuration.ConfigurationManager](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Diagnostics.Debug](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Diagnostics.DiagnosticSource](https://dot.net/) | 6.0.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Diagnostics.DiagnosticSource](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Diagnostics.EventLog](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Diagnostics.Tracing](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Drawing.Common](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Formats.Asn1](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Globalization.Calendars](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Globalization.Extensions](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Globalization](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.IO.FileSystem.AccessControl](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.IO.FileSystem.Primitives](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.IO.FileSystem](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.IO](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Linq](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Management](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Memory.Data](https://github.com/Azure/azure-sdk-for-net/blob/System.Memory.Data_1.0.2/sdk/core/System.Memory.Data/README.md) | 1.0.2 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Memory](https://dot.net/) | 4.5.4 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Memory](https://dot.net/) | 4.5.5 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Net.Http](https://dot.net/) | 4.3.4 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Net.Primitives](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Numerics.Vectors](https://dot.net/) | 4.5.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Reflection.Emit.Lightweight](https://github.com/dotnet/corefx) | 4.7.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Reflection.Emit](https://github.com/dotnet/corefx) | 4.7.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Reflection.Metadata](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Reflection.Metadata](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Reflection.MetadataLoadContext](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Reflection.Primitives](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Reflection](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Resources.Extensions](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Resources.ResourceManager](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Runtime.CompilerServices.Unsafe](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Runtime.CompilerServices.Unsafe](https://dot.net/) | 6.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Runtime.Extensions](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Runtime.Handles](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Runtime.InteropServices.RuntimeInformation](https://dot.net/) | 4.0.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Runtime.InteropServices](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Runtime.Numerics](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Runtime](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Security.AccessControl](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Security.Cryptography.Algorithms](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Security.Cryptography.Cng](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Security.Cryptography.Csp](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Security.Cryptography.Encoding](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Security.Cryptography.Pkcs](https://dot.net/) | 7.0.2 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Security.Cryptography.Primitives](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Security.Cryptography.ProtectedData](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Security.Cryptography.X509Certificates](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Security.Cryptography.Xml](https://dot.net/) | 7.0.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Security.Permissions](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Security.Principal.Windows](https://github.com/dotnet/runtime) | 5.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Text.Encoding.CodePages](https://dot.net/) | 4.5.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Text.Encoding](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Text.Encodings.Web](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Text.Json](https://dot.net/) | 8.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Threading.Tasks.Dataflow](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Threading.Tasks.Extensions](https://dot.net/) | 4.5.4 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Threading.Tasks](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.Threading](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [System.ValueTuple](https://dot.net/) | 4.5.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [System.Windows.Extensions](https://dot.net/) | 7.0.0 | [MIT](http://opensource.org/licenses/mit-license.php) | | [WixSharp.bin](https://github.com/oleg-shilo/wixsharp) | 1.25.3 | [MIT](http://opensource.org/licenses/mit-license.php) | | [YamlDotNet](https://github.com/aaubry/YamlDotNet/wiki) | 13.7.1 | [MIT](http://opensource.org/licenses/mit-license.php) | | [runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.native.System.Net.Http](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.native.System.Security.Cryptography.Apple](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.native.System](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple](https://dot.net/) | 4.3.0 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) | | [runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl](https://dot.net/) | 4.3.2 | [MS-NET-LIBRARY-2019-06](https://www.microsoft.com/en-us/web/webpi/eula/net_library_eula_ENU.htm) |
Contact Qodana team Contact us at [qodana-support@jetbrains.com](mailto:qodana-support@jetbrains.com) - Or via our issue tracker: https://jb.gg/qodana-issue - Or share your feedback: https://jb.gg/qodana-discussions
jeremytammik commented 1 month ago

wow! brilliant!

jeremytammik commented 1 month ago

by the way, for 2D geometry like room boundaries etc., are you aware of my GeoSnoop utility? https://thebuildingcoder.typepad.com/blog/2014/04/determining-the-size-and-location-of-viewports-on-a-sheet.html

Nice3point commented 1 month ago

@jeremytammik thanks Jeremy for sharing the link, yes I have heard of it and seen it in some articles. In the current implementation I am using DirectContext3D to render 3d geometry, this will give a lot of possibilities to create independent geometry with many customisations

jeremytammik commented 1 month ago

wow, yes, absolutely, that will be ever so much more powerful.

Nice3point commented 1 month ago

The geometry rendering looks finished. It remains to write documentation and brush up all little details. Release is planned for next week

Nice3point commented 1 month ago

If you have any suggestions or comments on what you see in the screenshots in the PR, write it here

jeremytammik commented 1 month ago

In the XYZ visualisation, is there a way to distinguish between X, Y and Z axes?

jeremytammik commented 1 month ago

is thjere a way to control the length of the little vectors showing mesh triangle orientation? in the mesh, can one see the orientation of each triangle, i.e., the order of its three vertices (clockwise, anticlockwise)?

jeremytammik commented 1 month ago

this is brilliant work. it wil have a very significant positive impact on the usefulness of RevitLookup! thank you!

Nice3point commented 1 month ago

In the XYZ visualisation, is there a way to distinguish between X, Y and Z axes?

The only difference now is that they always point in the directions XYZ.BasisX, XYZ.BasisY, XYZ.BasisZ. DirectContext3D doesn't allow us to add text, any other ideas how we can highlight them?

is thjere a way to control the length of the little vectors showing mesh triangle orientation? in the mesh, can one see the orientation of each triangle, i.e., the order of its three vertices (clockwise, anticlockwise)?

Interesting, might think about it, do you suppose it would be useful?

jeremytammik commented 1 month ago

any other ideas how we can highlight them?

some coordinate system visualisations use three colours, e.g., RGB.

do you suppose it would be useful?

only as little. when there are very many close together and they overlap a lot. low priority, though, IMHO.

Nice3point commented 1 month ago

Great suggestion about the colour. Clockwise, anticlockwise direction we can just finalise in the next releases

Nice3point commented 3 weeks ago

Added documentation, Wiki section will be updated after release.

@jeremytammik If you notice typos, please write if you have time of course

chuongmep commented 3 weeks ago

I belive that visulize by RGB is good idea, I did similar idea to visulize coordinate system before by color 👍 CoordinateSystem Display

jeremytammik commented 3 weeks ago

the description and images in your comment look good and clear, clearly explaining the purpose and us. i edited the first sentence, adding analysis and understanding of the BIM, and added 'aligned to cardinal axes' for bounding boxes. in XYZ visualization, i wonder whether one should add a note of Transform and or coordinate system. would they apply to the XYZ visualisation as well?

Nice3point commented 3 weeks ago

exactly, it is necessary to specify that we apply Transform to all BoundingBoxes. About XYZ, they are displayed as they are, according to their value. but visualisation of normal points with length 1 is disabled

jeremytammik commented 2 weeks ago

blog post is now live: https://thebuildingcoder.typepad.com/blog/2024/06/revitlookup-geometry-visualisation.html

Nice3point commented 2 weeks ago

Awesome, that looks juicy 🎉