Commit Graph

1170 Commits

Author SHA1 Message Date
Dion Moult f6ccfb52b3 See #1676. Space boundary generation now accounts for voids and fills. 2024-04-15 09:56:37 +02:00
Dion Moult c615f7469a See #1676. You can now duplicate space boundaries. 2024-04-15 09:56:37 +02:00
Sigma Dimensions c761c7d5d9 minor fix 2024-04-15 09:56:37 +02:00
Dion Moult a863c6d68e See #1676. Deleting space boundaries now also removes connection geometry. 2024-04-15 09:56:37 +02:00
Sigma Dimensions 242745fa25 IOS.API consider removing baseline tasks when deleting tasks 2024-04-15 09:56:37 +02:00
Sigma Dimensions 31131c1106 IOS.API usecase to create a work schedule baseline 2024-04-15 09:56:37 +02:00
Sigma Dimensions 51402cdc59 run black 2024-04-15 09:56:36 +02:00
Thomas Krijnen da348e36be #2676 2024-04-15 09:56:36 +02:00
Sigma Dimensions 55250aba6d BBIM 4D features & fixes:
- feature to re-order tasks
- fixes for task sorting
- further workSchedule UI/UX improvements
- forgotten bits and bobs
2024-04-15 09:52:38 +02:00
Sigma Dimensions 2aa5e9d808 - refactor IOS.API resource calculation to re-use shared utilities
- run black
2024-04-15 09:52:38 +02:00
Sigma Dimensions 0d2ab2317a Fix duplicate task logic in IOS.API 2024-04-15 09:52:38 +02:00
Andrej730 3d9994726b Added support for different railing cap types
Very similar to this - https://i.imgur.com/SNyvfgh.png
2024-04-15 09:52:38 +02:00
Andrej730 b5d24334fd Fixed bug with wrong position of support in wall mounted railing
The problem was that that support's disk was not rotated according to the railing path.
2024-04-15 09:52:38 +02:00
Dion Moult 0400b72f3e Fix #3052. Deep deletion of large geometries is now thousands of times faster. 2024-04-15 09:52:37 +02:00
Andrej730 1dcf74eb60 WALL_MOUNTED_HANDRAIL type for Railing modifier
Added WALL_MOUNTED_HANDRAIL type for railing modifier. It's still a bit work in progress - still need to add support for different railing termination types.

Here's the short demonstration - https://user-images.githubusercontent.com/9417531/234582621-6c6f948b-9cdc-4be6-b380-17ddbf5803bf.mp4
2024-04-15 09:52:37 +02:00
Thomas Krijnen 84287bf3ae Update draw.py 2024-04-15 09:49:53 +02:00
Dion Moult 4722208fa4 Fix #3038. Fix #3039. Selector should default to none instead for throwing errors if the query doesn't have a result. 2024-04-15 09:49:52 +02:00
arun 8517f808a8 Nesting added to util.get_decomposition function 2024-04-15 09:37:50 +02:00
Thomas Krijnen 77445f9b22 get_mappeditem_transformation() 2024-04-15 09:37:50 +02:00
Thomas Krijnen 0325c49c3d Add util.placement.get_cartesiantransformationoperator3d() 2024-04-15 09:37:50 +02:00
Thomas Krijnen 5f334192db Normalize vectors in a2p() 2024-04-15 09:37:50 +02:00
Dion Moult eea93265f7 Fix #2913. Bug where properties with multiple inverses were not correctly purged. 2024-04-15 09:37:49 +02:00
Andrej730 d2124e1c8b Fixed bugs with furniture library toilets and basins #2976
Bug was introduced in cf6acd5 when `shape_builder.get_rectangle_coords` started returning coords in counter-clockwise order instead of clockwise.
2024-04-15 09:37:49 +02:00
Thomas Krijnen f2c25f430a Fixes to validation of selected simple type / enum 2024-04-15 09:37:49 +02:00
Dion Moult e3979cadc7 Fix #2974. Type property sets are now properly copied. 2024-04-15 09:37:48 +02:00
Thomas Krijnen 7a82dbeaf4 Some small fixes for rule compliance in template.py 2024-04-15 09:34:22 +02:00
Thomas Krijnen fdf0596e42 Property transfer ownership of schema from py to c++ upon register_schema() 2024-04-15 09:25:51 +02:00
Thomas Krijnen b7ded0eb79 Attempt load schema from cwd (IS THIS DANGEROUS?) 2024-04-15 09:25:50 +02:00
Thomas Krijnen 7981eb473b Don't fail on unmapped attribute types (IFC4.4) 2024-04-15 09:25:50 +02:00
Dion Moult fd989733c7 Fix bug where unassigning a document was too aggressive and deleted relationships where it shouldn't. 2024-04-15 09:25:50 +02:00
Thomas Krijnen 788f1154da #2685 Fix AttributeError 2024-04-15 09:25:50 +02:00
Sigma Dimensions 827b0fe6ac BBIM 4D Features to:
- Display nested task resources/task inputs of the active task
- Show list of tasks related to the current object selection
- Highlight, in the WorkSchedule panel, tasks  related to the current object selection
2024-04-15 09:25:50 +02:00
Dion Moult 9707a2b2f6 Fix #2945. Selector should expand enumerated list properties so that you can match any of them. 2024-04-15 09:25:50 +02:00
Andrej730 6043d35821 Sliding doors - more consistent 2d repr between door types #2919 2024-04-15 09:25:49 +02:00
Andrej730 5d4ecb7177 Sliding doors - moved annotation arrow to Annotation/PLAN_VIEW #2919 2024-04-15 09:25:49 +02:00
Dion Moult dff33632ae See #2881. Allow indices in the selector instead of relying on external evaluations. 2024-04-15 09:25:49 +02:00
Andrej730 be75ef2596 Fixed ifc validation errors for furniture library #2925
Fixed bunch of validation errors with furniture library:

- IfcSpaceType PredefinedType wasn't optional
`<attribute PredefinedType: <enumeration IfcSpaceTypeEnum: (EXTERNAL, GFA, INTERNAL, NOTDEFINED, PARKING, SPACE, USERDEFINED)>> Not optional`

- some object had 0.0 depth extrusion
```
Rule IfcPositiveLengthMeasure_WR1:
    (self > 0.)
Violated by:
    (0.0 > 0.0)
```

- some orphan representations violating:
```
Rule IfcShapeModel_WR11:
    ((sizeof(self.OfProductRepresentation) == 1) ^ (sizeof(self.RepresentationMap) == 1) ^ (sizeof(ofshapeaspect) == 1))
Violated by:
    ((0 == 1 ^ 0 == 1) ^ 0 == 1)
     +  where 0 = sizeof(())
     +    where () = #9091=IfcShapeRepresentation(#15,'Body','SweptSolid',(#9090)).OfProductRepresentation
     +  and   0 = sizeof(())
     +    where () = #9091=IfcShapeRepresentation(#15,'Body','SweptSolid',(#9090)).RepresentationMap
     +  and   0 = sizeof(())
```
2024-04-15 09:25:48 +02:00
Andrej730 ec882a1a7d Fixed validation error for ELEVATION_VIEW curves #2925
Error occured because ShapeBuilder was assigning "Curve2D" representation type for elevation view curves when the correct type is "Curve3D".

It use to occur for both doors and windows created with ifc modifier.

```
Validation error text:
2023-04-03:18:21:28,879 ERROR   [rule_executor.py:154] On instance:
    #135=IfcShapeRepresentation(#21,'Profile','Curve2D',(#134))
Rule IfcShapeRepresentation_CorrectItemsForType:
    (IfcShapeRepresentationTypes(self.RepresentationType,self.Items))
Violated by:
    False
     +  where False = IfcShapeRepresentationTypes('Curve2D', (#134=IfcIndexedPolyCurve(#133,(IfcLineIndex((1,2)),IfcLineIndex((2,3)),IfcLineIndex((3,4)),IfcLineIndex((4,1))),$),))
     +    where 'Curve2D' = #135=IfcShapeRepresentation(#21,'Profile','Curve2D',(#134)).RepresentationType
     +    and   (#134=IfcIndexedPolyCurve(#133,(IfcLineIndex((1,2)),IfcLineIndex((2,3)),IfcLineIndex((3,4)),IfcLineIndex((4,1))),$),) = #135=IfcShapeRepresentation(#21,'Profile','Curve2D',(#134)).Items
```
2024-04-15 09:25:48 +02:00
Andrej730 3095521e36 Fixed some validation errors for doors and windows #2925
Fixed the ones caused by using 3d curves as inner/outer curves in profiles.
2024-04-15 09:25:48 +02:00
Chun 4bdf5475a9 a simplifier workflow and a more consistent coding style 2024-04-15 09:25:48 +02:00
Chun ab17b85854 Unify variable 2024-04-15 09:25:48 +02:00
Chun f859f11add Update functions of get_connected_to and get_connected_from compatible with IFC4 and IFC2X3 2024-04-15 09:25:48 +02:00
Chun 765b4a73d3 Add IFC4 support for functions get_connected_to and get_connected_from in util.system 2024-04-15 09:25:48 +02:00
Chun 9d70b9303b Add IFC4 support to get_connected_to and get_connected_from functions 2024-04-15 09:25:48 +02:00
Dion Moult 4bd9515bf5 Fix #2924. IfcElements default to a null predefined type so they can inherit where possible. 2024-04-15 09:25:48 +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
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 5af975f99e Backwards compatibility for py setting strings 2023-11-15 13:42:55 +01:00
Thomas Krijnen 65e874c67f Drastic settings refactoring 2023-11-15 10:32:33 +01:00