Commit Graph

6812 Commits

Author SHA1 Message Date
Andrej730 c807ea26e6 STAIR_ARROW annotations attached to IfcStairFlight object now readjusted after changes in IFC Stair modifier
Later probably will also need some other way to readjust annotations - so they can be readjusted for custom stairs, not created with modifier.
2024-04-15 09:25:48 +02:00
Andrej730 1ff6f691ac Clever STAIR_ARROW annotation
Now adding STAIR_ARROW annotation is a bit more clever - if you have IfcStairFlight selected when adding this type of annotation it will automatically:
1) define stair as it's parent;
2) add the stair as it's product;
3) place itself along the stair (it's assumed that stair direction is X+)

Example - https://i.imgur.com/Ze9DoK2.png
2024-04-15 09:25:47 +02:00
Andrej730 01a62bacd2 Fixed bug causing errors in IFC4X3 projects
It was causing an error below on opening BIM Tool and probably in some other places.

```
Traceback (most recent call last):
  File "C:\software\Steam\steamapps\common\Blender\3.5\scripts\startup\bl_ui\space_view3d.py", line 35, in draw
    self.draw_tool_settings(context)
  File "C:\software\Steam\steamapps\common\Blender\3.5\scripts\startup\bl_ui\space_view3d.py", line 48, in draw_tool_settings
    tool = ToolSelectPanelHelper.draw_active_tool_header(
  File "C:\software\Steam\steamapps\common\Blender\3.5\scripts\startup\bl_ui\space_toolsystem_common.py", line 809, in draw_active_tool_header
    draw_settings(context, layout, tool)
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\workspace.py", line 67, in draw_settings
    BimToolUI.draw(context, layout)
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\workspace.py", line 89, in draw
    AuthoringData.load()
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\data.py", line 52, in load
    cls.load_ifc_classes()
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\data.py", line 109, in load_ifc_classes
    cls.data["ifc_classes"] = cls.ifc_classes()
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\data.py", line 196, in ifc_classes
    + tool.Ifc.get().by_type("IfcDoorStyle")
  File "\Blender\3.5\scripts\addons\blenderbim\libs\site\packages\ifcopenshell\file.py", line 364, in by_type
    return [entity_instance(e, self) for e in self.wrapped_data.by_type(type)]
  File "\Blender\3.5\scripts\addons\blenderbim\libs\site\packages\ifcopenshell\ifcopenshell_wrapper.py", line 4499, in by_type
    return _ifcopenshell_wrapper.file_by_type(self, *args)
RuntimeError: Entity with name 'IfcDoorStyle' not found in schema 'IFC4X3'
Traceback (most recent call last):
  File "C:\software\Steam\steamapps\common\Blender\3.5\scripts\startup\bl_ui\space_view3d.py", line 35, in draw
    self.draw_tool_settings(context)
  File "C:\software\Steam\steamapps\common\Blender\3.5\scripts\startup\bl_ui\space_view3d.py", line 48, in draw_tool_settings
    tool = ToolSelectPanelHelper.draw_active_tool_header(
  File "C:\software\Steam\steamapps\common\Blender\3.5\scripts\startup\bl_ui\space_toolsystem_common.py", line 809, in draw_active_tool_header
    draw_settings(context, layout, tool)
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\workspace.py", line 67, in draw_settings
    BimToolUI.draw(context, layout)
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\workspace.py", line 92, in draw
    cls.draw_header_interface()
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\workspace.py", line 351, in draw_header_interface
    cls.draw_type_selection_interface()
  File "\Blender\3.5\scripts\addons\blenderbim\bim\module\model\workspace.py", line 367, in draw_type_selection_interface
    if AuthoringData.data["ifc_classes"]:
KeyError: 'ifc_classes'
```
2024-04-15 09:25:47 +02:00
Andrej730 e5427583ad Fixed typo in ifcopenshell.util.type 2024-04-15 09:25:47 +02:00
Andrej730 3429972067 Added arrow to 2d repr of sliding doors (#2919)
Example - https://i.imgur.com/eJnhDXU.png
2024-04-15 09:25:47 +02:00
Dion Moult 4e1dca6934 Load all type products by default (in preparation for IfcAnnotationType support) 2024-04-15 09:25:47 +02:00
Andrej730 7f1bb71c66 IFC Door Modifier - sliding doors
Added support for sliding doors in IFC Door Modifier.

The main differences are 2d representation (https://i.imgur.com/VyEH569.png) and the door panel being placed before the lining, not after
2024-04-15 09:25:22 +02:00
Thomas Krijnen 969b7382b6 Replace unpacking with boost::tie() for compatibility with msvc17 build machine 2024-04-15 08:55:37 +02:00
Thomas Krijnen 44deaedccc Incorporate profile in FixedRefSolid, some attempt at DirectrixDerived 2024-04-12 10:24:24 +02:00
Thomas Krijnen 7b296629d6 Doing a transpose was most likely misguided 2024-04-12 10:23:27 +02:00
Richard Brice 420eed1828 Adds new simplified alignment example that makes us of the alignment helper functions 2024-04-11 11:26:42 -07:00
Richard Brice e30fd6096a Adds framework for alignment helper functions.
Function include building a simple highway alignment and mapping of sementic segment definitions to geometric definitions (this part is still a work in progress)
2024-04-11 11:26:42 -07:00
Thomas Krijnen 85887b6db0 Clone profile for immutability in IfcDerivedProfileDef 2024-04-11 20:15:55 +02:00
Thomas Krijnen 9e2645d4cf Respect face matrix in IfcSectionedSolidHorizontal 2024-04-11 20:15:55 +02:00
Thomas Krijnen c535c000a6 Wrong axis typo causing singular matrices 2024-04-11 20:15:55 +02:00
Richard Brice a1d8aaf999 Fixes problems with Helmert curves 2024-04-11 11:13:02 -07:00
Richard Brice 4807e5b432 Fixes curve segment placement issues 2024-04-10 15:15:11 -07:00
Richard Brice a34da81ac5 Fixes tilt slope for cant 2024-04-10 14:09:46 -07:00
Thomas Krijnen 7589e0bd40 Implement product matric access in Python wrapper 2024-04-10 21:22:13 +02:00
Richard Brice 6d5a9f8716 Fixes anon namespace that was causing problems with linking 2024-04-10 11:48:26 -07:00
Richard Brice fda4c674d9 Fixes more problems with mapping IfcCurveSegment 2024-04-09 16:46:43 -07:00
Richard Brice a94d1e53b7 Fixes some problems with mapping IfcCurveSegment 2024-04-06 19:02:18 -07:00
Richard Brice 98ec4220eb Adds method to piecewise_function to evaluate over a range. 2024-04-06 10:40:22 -07:00
Thomas Krijnen f0dbef88c1 Respect ReorientShells setting in shell.cpp 2024-04-05 15:37:10 +02:00
Thomas Krijnen 59fbf2bbde #4501 warning message 2024-04-03 11:43:06 +02:00
Thomas Krijnen 209d6c1e70 SectionedSolidHorizontal: sort sections, bounds check 2024-03-29 15:53:34 +01:00
Richard Brice 83a127b570 Implements IfcSegmentReferenceCurve and cant 2024-03-28 15:04:17 -07:00
Richard Brice 960a59da84 Fixes IfcAxis2PlacementLinear per https://github.com/buildingSMART/IFC4.3.x-development/issues/732#issuecomment-1812127613 2024-03-27 16:24:58 -07:00
Thomas Krijnen 4b32381192 Don't fail on product without placement 2024-03-21 09:44:40 +01:00
Thomas Krijnen 0d3c73de82 Fix compilation for 4x2 2024-03-15 20:13:16 +01:00
Thomas Krijnen 3babe852de Don't use BRepFill, but rather triangulate. Implement IfcSectionedSolidHorizontal 2024-03-15 17:32:05 +01:00
Thomas Krijnen bf1d2befd8 Address compiler warnings 2024-03-14 11:10:19 +01:00
Thomas Krijnen ca0488892c Add eigen constructur to point3 and direction3 2024-03-14 11:04:44 +01:00
Thomas Krijnen eed0b55f01 Move version definition below header include 2024-03-14 10:26:51 +01:00
Thomas Krijnen c8a9d5b743 Address comment by @RickBrice 2024-03-13 13:18:12 +01:00
Thomas Krijnen 3b08f644ed Uncomment type assertion and comment out writing to stdout 2024-03-13 13:18:12 +01:00
Thomas Krijnen d06280f0e7 First rough draft of alignment-based IfcFixedReferenceSweptAreaSolid 2024-03-13 13:18:12 +01:00
Richard Brice ebe6015561 Fixes vertical clothoid, vertical circle, and horizontal cubic cases for alignment 2024-03-06 12:00:35 -08:00
Dirk Olbrich 28c7da2336 examples: fix missing includes 2024-03-06 09:25:02 +01:00
Dirk Olbrich eb50be5c52 ifcparse: fix missing include and const 2024-03-06 09:25:02 +01:00
Dirk Olbrich 47a2971c65 ifcparse: fix clang-tidy warning readability-identifier-length 2024-03-06 09:25:02 +01:00
Dirk Olbrich eea9a14722 ifcparse: unify private member variables name to use trailing underscore 2024-03-06 09:25:02 +01:00
Dirk Olbrich 8b145248c6 ifcparse: fix clang-tidy warning readability-qualified-auto 2024-03-06 09:25:02 +01:00
Dirk Olbrich c29e7b32ad ifcparse: fix clang-tidy warning readability-implicit-bool-conversion 2024-03-06 09:25:02 +01:00
Dirk Olbrich 95b5926353 ifcgeom, serializer: fix missing includes 2024-03-06 09:25:02 +01:00
Dirk Olbrich 9f40674d91 ifcparse: fix clang-tidy warning readability-else-after-return 2024-03-06 09:25:02 +01:00
Dirk Olbrich b264408d85 ifcparse: fix clang-tidy warnung unused-includes 2024-03-06 09:25:02 +01:00
Richard Brice fcfeac95bf WIP getting alignment geometry to match unit test from bSI Rail Room 2024-03-01 10:55:20 -08:00
Richard Brice 77b56b6826 Fixes typo in IfcPointByDistanceExpression 2024-02-28 18:38:41 -08:00
Richard Brice 0baf3dac52 Adds support for IfcCosineSpiral, IfcSineSpiral, and updates implementation to match results from bSI Railway Room test cases. 2024-02-26 16:34:41 -08:00