Dion Moult
9ef65c9cc5
Add basic support for sloped walls, sloping along the local X axis
2022-10-17 22:52:44 +11:00
Ryan Schultz
f8a8250429
searching for an IfcMaterial in IfcMaterialDefinitions ( #2503 )
...
* searching for an IfcMaterial in IfcMaterialDefinitions
A start to trying to address: https://community.osarch.org/discussion/comment/13024/#Comment_13024
* refactored to a tighter version. Thanks Thomas.
2022-10-17 20:24:05 +11:00
Andrej730
81d80ee415
Doc API is now accessible without setting up DocAPI class
...
Now you can access Doc API functions directly (like `ifcopenshell.util.doc.get_entity_doc(...)`) without setting up DocAPI class.
To make it work I've set up singleton DocDatabase class and made all paths relative to module location.
2022-10-16 16:54:05 +06:00
Andrej730
4dc860c019
Added IFC v4.0 json schema and added docs API for working with schemas
...
The schema for IFC4 the same as it was for IFC2x3.
Properties schema for IFC4 includes both quantity and propety sets.
Also cleaned up entities description for IFC2x3 from HTML code and IFC tags.
2022-10-16 13:32:22 +06:00
Dion Moult
b90ab70658
Modeling dimensions now have sensible defaults depending on units and show prior to element creation
2022-10-15 11:06:21 +11:00
Andrej730
28aab490df
IFC v2.3 json schema and parsing tool to regenerate it ( #2501 )
...
* IFC v2.3 json schema and parsing tool to regenerate it
Added entities and propeties schema in json format.
ifc2x3_entities.json format:
entity_name -> description, url, attributes;
attributes format: attribute_name -> attribute_descrption
ifc2x3_properties.json format:
property_set_name -> property_name -> description, children
children format: child_property_name -> child_property_description.
Also added doc.py script that can generate the same json schema files but requires docs IFC 2.3 docs in the same folder (https://github.com/buildingSMART/IFC/tree/Ifc2.3.0.1 )
* Moved all json schema files to /util/schema
* Moved json files back to /util/, changed doc.py export location
* Added specification urls for entities and properties
Added specification urls for entities and properties.
Also added a function to parse actual property sets domain from the website to generate specification urls (domain on website and on github do not match).
Schema structure was changed:
ifc2x3_entities.json format:
entity_name -> description, spec_url, attributes;
attributes format: attribute_name -> attribute_descrption
ifc2x3_properties.json format:
property_set_name -> properties, spec_url
properties format: property_name -> description, children_properties
children_properties format: child_property_name -> child_property_description.
ifc2x3_property_sets_domains.json format:
property_set_name -> ifc_domain
2022-10-15 07:14:34 +11:00
Thomas Krijnen
0810fa7564
Escape \W in selector grammar
2022-10-14 11:30:11 +02:00
Dion Moult
a34c0cb35c
Fix a variety of IFC validation errors in entity creation and asset appending
2022-10-14 18:19:35 +11:00
Dion Moult
9ef3b4389b
Change pip name to ifcopenshell. See #2468 .
2022-10-14 08:25:15 +11:00
Dion Moult
8be1a913ec
Basic support for mesh booleans
2022-10-13 17:04:53 +11:00
Dion Moult
dff35c173d
You can now delete a type when managing types
2022-10-11 15:31:31 +11:00
Thomas Krijnen
0446fca56a
--json --spf option in validate.py
2022-10-10 14:25:45 +02:00
Thomas Krijnen
785dc2a300
Test case for string formatting
2022-10-10 14:20:21 +02:00
Dion Moult
32f0911479
Elements with filled openings don't have their openings copied, as it depends on the fill
2022-10-09 22:22:12 +11:00
Dion Moult
bdbd874fa8
Fix #2488 . Copying objects now copy deep instead of adding afresh (and losing parametric data and openings).
2022-10-09 18:09:22 +11:00
Dion Moult
232252f61d
Copy deep can now exclude things, useful for copying representation graphs where you don't want to duplicate the context
2022-10-09 17:15:39 +11:00
Thomas Krijnen
cd27d48701
#2482 entity_instance.to_string()
2022-10-08 17:18:47 +02:00
Dion Moult
4110b81270
Decomposition mode now selects all children (not parenting) to move a host and all children easily
2022-10-08 23:42:03 +11:00
Dion Moult
7d779130e1
Removing products now handles purging a bunch more inverse relationships
2022-10-08 21:15:01 +11:00
Dion Moult
7d1a41c1c7
Minor fix
2022-10-07 16:08:21 +11:00
Dion Moult
d187c588d3
Minor fix
2022-10-07 16:04:06 +11:00
Dion Moult
61f4c48a4a
Write docs for basic description of what's in an IFC
2022-10-06 21:07:58 +11:00
Dion Moult
0259b75d4c
Write documentation for IOS code examples
2022-10-06 19:56:53 +11:00
Dion Moult
0db28917a4
Write docs on IOS geometry processing. See #671 .
2022-10-06 17:06:37 +11:00
Dion Moult
15b4ab543b
Update geom settings with newly added settings, and add example code. See #671 .
2022-10-06 15:52:12 +11:00
Dion Moult
72147e51f5
Migrate old Doxygen geom markdown to new Sphinx rst docs. See #671
2022-10-06 11:18:23 +11:00
Thomas Krijnen
2dee2afdfa
#1861 test case
2022-10-05 13:07:16 +02:00
Dion Moult
2cb8eebf83
Profiles now retain manual booleans alongside autogenerated clipping planes
2022-10-05 21:52:07 +11:00
Dion Moult
aeaef641bf
Bump IOS build
2022-10-05 19:52:24 +11:00
Dion Moult
e97d427e9f
Copying elements with openings now also copies openings
2022-10-05 19:44:32 +11:00
Dion Moult
428ee648b4
Wall representations now distinguish between auto and manual booleans and manual booleans move with the wall
2022-10-05 13:09:18 +11:00
Thomas Krijnen
fa6bbf2d4a
A bunch of not so pretty validate.py performance improvements
2022-10-04 15:16:34 +02:00
Dion Moult
1f56b36bfa
Minor fix
2022-10-04 20:16:36 +11:00
Thomas Krijnen
5d95475970
#2471 test case
2022-10-04 10:23:27 +02:00
Thomas Krijnen
f41ad0d5de
#2471 work around file gc with instance refs
2022-10-04 10:23:08 +02:00
Dion Moult
bfcc086aad
Attempt to change PyPI name to ifcopenshell
2022-10-03 23:40:29 +11:00
Dion Moult
0eae3de6a2
Openings now move with the host by default. Small change, big impact.
2022-10-03 23:30:19 +11:00
Thomas Krijnen
1d39413717
Test cases for previous commits
2022-10-03 14:29:41 +02:00
Thomas Krijnen
c57e5e2100
Capture lower level errors in validate.py reported in C++
2022-10-03 14:19:29 +02:00
Dion Moult
567548c7f3
Fix bug where adding an opening didn't create a relative placement
2022-10-03 22:35:53 +11:00
Dion Moult
944cbeea1a
Handle both 2D and 3D placement matrixes in IfcOpenShell utils
2022-10-01 23:25:34 +10:00
Dion Moult
4b8238a602
Openings are no longer loaded when loading fresh IFC projects
2022-10-01 20:32:40 +10:00
Dion Moult
7b817f7359
Minor fix
2022-09-30 18:53:14 +10:00
Dion Moult
9e76b2b9eb
Footprints are now supported in the new profile editor
2022-09-30 13:00:40 +10:00
Dion Moult
a08a78b3c9
Slabs are now first created directly in IFC instead of reverse engineering meshes
2022-09-30 12:08:57 +10:00
Dion Moult
33ebcd7664
New convenient modifier to rotate beam/wall/column etc by 90 degrees
2022-09-24 21:46:32 +10:00
Dion Moult
56f4b72161
Reimplement profile cardinal points 1-9 with new profile engine
2022-09-24 15:42:50 +10:00
Dion Moult
7545313dee
Removing an element now also purges connection relationships
2022-09-24 14:12:45 +10:00
Dion Moult
b7eaefee50
Fix bug when deleting elements may possibly create an invalid containment relationship
2022-09-23 23:26:29 +10:00
Dion Moult
13a387cc73
Add support for descriptions in path connection relationships
2022-09-23 23:00:27 +10:00