-
Notifications
You must be signed in to change notification settings - Fork 134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to set up local development environment to fix bug's and create PR to contribute in xbim repositories. #464
Comments
HI @CCT-Mukund-Thakare, yes you're right a doc would help. I'll make a few notes quickly here and hopefully we can revisit with a md doc: Understanding the Projects / purposesSo high level, xbimEssentials is the core of xbim Toolkit. It's reads and writes IFC schema files in a variety of formats. It also provides some fundamental data structures for representing the Geometry and visual aspects of models (and a Tesselator to turn geometry into a mesh), but doesn't implement any geometry itself. xbimGeometry is a separate repo that depends on Essentials, which translates the many IFC logical representations and their conventions into pure geometry, and incorporates a boolean library (OpenCascade) for fundamental shape operations. @Ibrahim5aad did a nice overview post of the fundamentals on LinkedIn For an overview of the wider Toolkit dependencies see this (slightly out of date) section of the Readme In a bit more detail, what the assemblies do
XbimGeometry
Working with XbimGeometry - Debugging etcTypically we target the develop branch (v5.1) but in the short term I recommend using feature/netcore (v6) as the base branch - as this will shortly become develop and any fix won't need back-porting to v6. It's also a lot easier / quicker to debug with.
To some extent your approach depends on how deep you are going but this is my typical workflow when I have to go into Geometry:
(If there's a major change we'd also run the Xbim Regression test suite) How to visualiseA couple of different approaches:
Hope that's a good starting point. |
Hello Team,
I am looking for reference documentation or guidance to set up local development environment xbimGeometry repositories.
I have cloned most of the repositories like XbimGeometry, XbimEssentials, XbimWindowsUI on my local machine and have started debugging it.
But I am finding it hard to related and understand all this repositories with each other.
I can see multiple solutions\projects in
XbimGeometry
--Xbim.Geometry.Engine.Interop.Tests
--Xbim.Geometry.Engine.Interop
--Xbim.Geometry.Engine
--Xbim.Geometry.Portable
--Xbim.Geometry.Regression
--Xbim.ModelGeometry.Scene
XbimEssentials
--Xbim.Common
--Xbim.IO.Esent
--Xbim.IO.MemoryModel
--Xbim.Ifc
--Xbim.Ifc2*3
--Xbim.Ifc4
--Xbim.Tessellator
I am finding it hard to understand the purpose of each project.
Suppose I fix a bug in Xbim.Geometry.Engine solution how would I test it ? How can I visualize it that it is being fixed ?
The document or readme would really help in this case to do local environment setup and understand these projects.
any kind of help\comments\suggestions are appreciated.
Thank you !!
The text was updated successfully, but these errors were encountered: