Navisworks Density
Dalton Goodwin
Business BIM TM @ Henderson Engineers | Codewars: The BIM Coordinator | YouTube: @TheBIMCoordinator | GitHub: DaltonGOO
Here is a Python jupyter notebook where I extract features from the raw #data I get from #Navisworks clash using #Dynamo (Dynamo | Clash Coordination | Navisworks). You can find the Dynamo script, Powerpoint, and recording here Dynamo Clash XYZ. Using the #Pythagorean theorem, I can calculate a clash's distance to every other #clash to give it a density value. I can add to the dataset by giving columns for stronger weights to certain trades or when clashes are being resolved or RFI's that are tied to specific elements. The idea is to build and #featureengineering a dataset used in machine learning to coordinate our models better. I am currently in the data understanding and data preparation phase of crisp-dm. I am looking for patterns in the data that will give me more insight into how we can effectively coordinate our models. I would love to know how others are leveraging their data on projects? What new insights have you found?
I am using two libraries, pandas and plotly.
Importing the data from excel as a pandas data frame.
Creating lists from each column. X, Y, and Z.
Getting Y side length.
Getting X side length
Getting Z side length.
Adding x2, y2, and z2 together.
Split the list into a structured list of point to points lengths.
Here we are double-checking the accuracy of what we have just done in python. We compare the distance of index 0 and index 5 in Dynamo and Python.
We remove the lengths that are greater than 5'.
Sum up each point to points list.
Creating the density column.
Writes data to excel file.
Reads newly created excel file.
This function returns the first 5 rows of a data frame.
Plotting the ClashTest.
Plotting the trade.
Plotting the new density column.
Having this data could start to give us insight into our more severe clashes. We could pair this with RFI's, images, room data, etc., to possibly start understanding the clashes pattern. We can spend less time resolving clashes and more time on other project items. This could even lead to the computer automatically resolving clashes.
Link to Jupyter Notebook, data, and video:
Python - Navisworks Clash Density
Navisworks Density Video:
Here are two videos talking about capturing the Navisworks data.
Part 1:
Part 2:
Senior Business Consultant for AECO
4 年Hey Dalton, One question for you, why dont you just export the clash report straight from Navisworks Manage. That contains spatial data as well as the "interference" level.
Senior Business Consultant for AECO
4 年Warren B.
Architect | BIM Manager | CDCP? - Certified Data Centre Professional | Hyperscale & Retail Data Center Design | Mission Critical | BIM Coordination | Information Management
4 年Woah! This is amazing.
Design Researcher | Data Scientist | Expert in Mixed-Methods Research, Experimental Design, and Advanced Analytics
4 年This is a great work Dalton. As some one in the academic who has also seen how the industry works, I really applaud what you have done here. The construction industry lacks the integration of data science and machine learning and it definitely has potential. Great job!