Clash Detective is a typical workflow in BIM. Forge platform has not exposed such web service. While we can still combine Navisworks with the web application to coordinate the clash. With this idea, I wrote a small demo sample.
https://github.com/xiaodongliang/Forge-Navisworks-ClashTest
By Clash Test .NET API of Navisworks, almost all information of clash test and clash result are achievable. The only challenge is: current .NET API does not provide the suitable viewpoint of the clash result like UI does. Although COM API provides ( InwOclTestResult.GetSuitableViewPoint), I do not want to iterate the clash results twice by .NET and COM separately. So the sample gets the ClashResult.Center and ClashResult.ViewBounds. The former is the center of the clash. The latter is bounding box including the area clashing and some surrounding context. Then the target of camera would be the center, and we can pick a suitable point on the box as the position of camera.
The source code of the sample also encloses the way of COM, just for reference. The Navisworks plugin also defines the structure of the clash data, and sends them to the web application.
With Forge Viewer, we can setup a management web application with viewable model, and ask the collaborators to coordinate the model easily. The web application provides the services for receiving the clash data and downloading the data. On the client side, a panel will display the clash test and result. The user can select the result. The corresponding viewpoint is switched and the clashed objects will be isolated.
In reality, it would be more useful to notify a new clash test is ready, and compare two clashes. I hope I could find time to improve it in the future.
Enjoy it :)
Hello Liang,
I am wondering whether it is possible that the plugin can run the clash detective tool and then read the clash data? Here we can see the clash data are already there. What if I need to run the clash test first and then read the clash data both from the API, without any user intervention? Is it possible to make it dynamic?
Thank you very much.
Posted by: Md Shohag | 04/22/2021 at 03:49 AM