Improvements to python-ifc - #6
Closed
gansanay wants to merge 9 commits into
Closed
Conversation
added 9 commits
August 13, 2013 13:35
Regular expression used for parsing IFC schema raised an internal error from the regexp engine. Seemed to be too greedy and matched keywords over several lines. Replaced . with \S in keyword regex to match one-word alphanumeric keywords.
Code raised an error when all attributes of an entity were not present, but current version of python-ifc doesn't make a difference between mandatory and optional attributes. Commenting the assert().
Clear repository of compiled modules
buildingSMART released on March 25, 2013 a new release of the IFC schema, named IFC4
The file reader should not let the file object in an open state.
Fixes#1, #2, #3. * Implements an accurate count of types such as defined by the EXPRESS language and the documentation of the IFC2x3 TC1 and IFC4 schemes * Adds two unit tests to the __main__ part of the library to check that the numbers of types and entities are correct. * Closes the file object after reading it.
* Fixes#4. * Adds encoding information at the beginning of source code files
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Dear all :)
I needed to browse through the IFC schemes specifications for my uses and stumbled upon python-ifc which was nearly enough for my uses and simple enough to start using it and adding what I needed.
I then fixed some problems and added features to the initial parser to make it accurately detect the types and entities of the IFC2x3 and IFC4 schemes. The main part now includes a test which checks it is still ok.
I also added the attributes of subtypes and supertypes for each entity, which I am using to make graph visualizations of IFC entities. I can share the code that does it.
Are you still maintaining it ? I saw you just pushed an LGPL license on it 3 days ago. If you lost interest in this little tool I can maintain it if it helps: I think it can have an (even pedagogical) interest.
Hope this pull request helps, feel free to ask for more information of what I implemented !
Guillaume