Commit Graph

8830 Commits

Author SHA1 Message Date
Andrej730 2c98ab078a Fix default mep profile names
Previously it was generating names like 4000000x4000000 in mm projects.
2024-04-16 10:24:53 +02:00
Thomas Krijnen 1f4b12443a fix edge segments in world coords #3536 2024-04-16 10:24:43 +02:00
Dion Moult 00bd159ee7 IfcTester JSON reporter now also stores identification data separately for convenient reporting. 2024-04-16 10:22:47 +02:00
Dion Moult c9adefd947 Store applicability in IfcTester JSON results 2024-04-16 10:22:47 +02:00
Dion Moult 9b2455e0f0 Fix #2753. Disable mapping representations when appending assets via the ExtractElements recipe to be more forgiving (and faster) on invalid models. 2024-04-16 10:22:47 +02:00
Dion Moult 3cabe935cd Fix SurfaceColour typo that broke loading colours in some IFCs 2024-04-16 10:22:47 +02:00
Dion Moult 73b93e7020 Fix #3547. Bug where using existing clippings were not preserved when editing profile or wall representations. 2024-04-16 10:22:47 +02:00
arun bd1bfe548a Update create_2pt_wall.py (#3553)
* Update create_2pt_wall.py

included unit scale for use cases other than si unit

* Revised Update create_2pt_wall.py

included is_si kwarg to select between si units and other units and also changed the dtype of p1 and p2 array to float incase they are entered as integers
2024-04-16 10:22:46 +02:00
Carlos Dias a85fdf3f8e Add element guId in BCF report (#3549) 2024-04-16 10:22:46 +02:00
Thomas Krijnen ee09f2404b Filter duplicate edge indices #3546 2024-04-16 10:22:34 +02:00
Dion Moult c6438933ba Whoops 2024-04-16 10:10:51 +02:00
Dion Moult a6c8a2abd4 Dissolve specifically IOS triangulated edges for meshes instead of generic Blender limited dissolve. 2024-04-16 10:10:51 +02:00
Dion Moult 65b5a6f8f9 Skeleton operator to regenerate distribution elements recursively 2024-04-16 10:10:51 +02:00
Dion Moult dca25e8475 Initial implementation of scale dependent map conversion for IFC4X3 2024-04-16 10:10:51 +02:00
rileywong311 9910c53f38 Add brick create relation with split screen 2024-04-16 10:10:51 +02:00
rileywong311 866a6d429b Implement Brick split screen 2024-04-16 10:10:51 +02:00
rileywong311 6dd908c207 Add more subclasses to Brick root options 2024-04-16 10:10:51 +02:00
rileywong311 eea577d463 Move Brick list root setting 2024-04-16 10:10:51 +02:00
rileywong311 d5159be571 Reformat Brick props order and singularize "brick_entity_classes" 2024-04-16 10:10:51 +02:00
rileywong311 abd4fb18fd Refactor AddBrickRelation to combine object namespace+label in operator
This is an important change that should make adding relations through other methods easier to implement
2024-04-16 10:10:51 +02:00
rileywong311 242d2cb4ef Guard loading brick files from bad paths
Referred to "IFCFileSelector.is_existing_ifc_file" method for to make this
2024-04-16 10:10:51 +02:00
rileywong311 5c6ff36813 Add "rdfs:label" to Brick relation options
This is a tricky one because "rdfs:label" cannot really be queried from the Brick ontology, so it is a special case that probably needs to get added manually. Furthermore, an entity really shouldn't have multiple labels, so the option to give an entity an "rdfs:label"
 should only appear if it doesn't have one already. The way I did it meant I had to manually reset the Enum type in Blender because it was the active one selection and made the Enum blank since it got removed  now that the entity has a "rdfs:label." One possible alternative solution is to allow multiple labels, but in the query to import bricks in the UI list only select one label somehow.
2024-04-16 10:10:51 +02:00
rileywong311 a56ec73f3e Change BrickschemaData.relations to BrickschemaData.active_relations 2024-04-16 10:10:51 +02:00
rileywong311 49b5fb35a8 Load Brick relationships from schema 2024-04-16 10:10:51 +02:00
rileywong311 7f049f0067 Remove if Brickstore.graph.triples check
This returns a generator type which I believe is always truthy, so it didn't change anything.
2024-04-16 10:10:51 +02:00
rileywong311 17317c65cb Implement basic Brick create relation 2024-04-16 10:10:51 +02:00
rileywong311 07bd99d461 Add "remove brick relation" operator 2024-04-16 10:10:51 +02:00
rileywong311 b5d9c3f5ff Rename Brick "attributes" to "relations" 2024-04-16 10:10:51 +02:00
Dion Moult ed66572d66 Fix #3538. Update bl_info metadata to reflect that we are a native IFC authoring platform not an import-export add-on. 2024-04-16 10:10:51 +02:00
Andrej730 442918e3a3 option to provide step_id into bim.create_shape_from_step_id directly 2024-04-16 10:10:51 +02:00
Andrej730 1a88191173 remove_product to remove object placement too
previously it wasn't deleting object placement when you removed the objects (and related elements like IfcDirections etc) and working on project long enough you might had a bunch of orphaned data in it
2024-04-16 10:10:51 +02:00
Andrej730 1496cc04ff automatically assign ports predefined type 2024-04-16 10:10:51 +02:00
Andrej730 a998cd476d small change for readibility 2024-04-16 10:10:51 +02:00
Andrej730 7cfdf1f1d5 adjust obstruction position on changing segment length
Now when you change the segment's length connected obstructions will adjust. Same for changing obstruction's length. You can also move obstructions/segment around and then use "Regenerate" to make them fit.
Small demo - https://imgur.com/a/atm8Mdx
2024-04-16 10:10:51 +02:00
Andrej730 6f975529f4 add_obstruction to fit_flow_segments, derive it's position from cursor 2024-04-16 10:10:51 +02:00
Andrej730 cd9854707a Fixed #3533 (also fixed the same issue for windows) 2024-04-16 10:10:51 +02:00
Andrej730 f4f04db952 Fixed error on drawing tester UI
Error was:
Traceback (most recent call last):
  File "\3.6\scripts\addons\blenderbim\bim\module\tester\ui.py", line 39, in draw
    row.prop(self.props, "should_load_from_memory")
AttributeError: 'BIM_PT_tester' object has no attribute 'props'
2024-04-16 10:10:51 +02:00
Dion Moult b2db70a2ac Whoops 2024-04-16 10:10:51 +02:00
Dion Moult b6b2c718f6 Skeleton of "add fitting" operator which decides appropriate fitting type 2024-04-16 10:10:51 +02:00
Andrej730 fa3e3bc9b8 Fixed TestGetApplicableTypes after 0e69f484f 2024-04-16 10:10:51 +02:00
Andrej730 391cecdb21 keep the default flow direction for ports NOTDEFINED as it's not yet set 2024-04-16 10:10:51 +02:00
Andrej730 0df12194d6 operator to add mep obstruction
Currently it's not yet available from UI, only from F3 menu.
On changing segment's length obstruction is not yet adjusted.
Short demonstration - https://imgur.com/a/I5fybpO
2024-04-16 10:10:51 +02:00
Andrej730 25ec0ee36c root.remove_product to remove IfcRelConnectsPorts too
previously if you deleted some flow segment that was connected to another the connection would stay resulting in invalid ifc and other bugs
2024-04-16 10:10:51 +02:00
Andrej730 72c2ef1dd1 Poll check for show/hide ports
https://i.imgur.com/NFAM1UC.png
2024-04-16 10:10:51 +02:00
Andrej730 8c21c74ff5 Communicate that blend file is also saved on Ctrl-S
https://i.imgur.com/BnzTDhM.png
2024-04-16 10:10:51 +02:00
Andrej730 c2320bb320 small add_constr_type_instance refactor
ifc_class removed as it was never used - ifc_class was always figured either from BIMModelProperties.relating_type_id or operator.relating_type_id
2024-04-16 10:10:50 +02:00
Dion Moult a2b972707e Another minor documentation fix 2024-04-16 10:10:50 +02:00
Dion Moult 17de7a1808 Easily create a "default" duct / pipe even if you have no demo library. 2024-04-16 10:10:50 +02:00
Dion Moult ec4f4bd158 Minor documentation fix 2024-04-16 10:10:50 +02:00
Andrej730 9812e5a603 Fixed error opening type manager from window_tool, slab_tool etc
Th error was:

Error: Python: Traceback (most recent call last):
  File "\scripts\addons\blenderbim\bim\module\model\ui.py", line 54, in invoke
    props.type_class = props.ifc_class
TypeError: bpy_struct: item.attr = val: enum "" not found in ('IfcActuatorType', 'IfcAirTerminalBoxType', 'IfcAirTerminalType', 'IfcAirToAirHeatRecoveryType', 'IfcAlarmType', 'IfcAudioVisualApplianceType', 'IfcBeamType', 'IfcBoilerType', 'IfcBuildingElementPartType', 'IfcBuildingElementProxyType', 'IfcBurnerType', 'IfcCableCarrierFittingType', 'IfcCableCarrierSegmentType', 'IfcCableFittingType', 'IfcCableSegmentType', 'IfcChillerType', 'IfcChimneyType', 'IfcCivilElementType', 'IfcCoilType', 'IfcColumnType', 'IfcCommunicationsApplianceType', 'IfcCompressorType', 'IfcCondenserType', 'IfcControllerType', 'IfcCooledBeamType', 'IfcCoolingTowerType', 'IfcCoveringType', 'IfcCurtainWallType', 'IfcDamperType', 'IfcDiscreteAccessoryType', 'IfcDistributionChamberElementType', 'IfcDistributionElementType', 'IfcDoorStyle', 'IfcDoorType', 'IfcDuctFittingType', 'IfcDuctSegmentType', 'IfcDuctSilencerType', 'IfcElectricApplianceType', 'IfcElectricDistributionBoardType', 'IfcElectricFlowStorageDeviceType', 'IfcElectricGeneratorType', 'IfcElectricMotorType', 'IfcElectricTimeControlType', 'IfcElementAssemblyType', 'IfcEngineType', 'IfcEvaporativeCoolerType', 'IfcEvaporatorType', 'IfcFanType', 'IfcFastenerType', 'IfcFilterType', 'IfcFireSuppressionTerminalType', 'IfcFlowInstrumentType', 'IfcFlowMeterType', 'IfcFootingType', 'IfcFurnishingElementType', 'IfcFurnitureType', 'IfcGeographicElementType', 'IfcHeatExchangerType', 'IfcHumidifierType', 'IfcInterceptorType', 'IfcJunctionBoxType', 'IfcLampType', 'IfcLightFixtureType', 'IfcMechanicalFastenerType', 'IfcMedicalDeviceType', 'IfcMemberType', 'IfcMotorConnectionType', 'IfcOutletType', 'IfcPileType', 'IfcPipeFittingType', 'IfcPipeSegmentType', 'IfcPlateType', 'IfcProtectiveDeviceTrippingUnitType', 'IfcProtectiveDeviceType', 'IfcPumpType', 'IfcRailingType', 'IfcRampFlightType', 'IfcRampType', 'IfcReinforcingBarType', 'IfcReinforcingMeshType', 'IfcRoofType', 'IfcSanitaryTerminalType', 'IfcSensorType', 'IfcShadingDeviceType', 'IfcSlabType', 'IfcSolarDeviceType', 'IfcSpaceHeaterType', 'IfcSpaceType', 'IfcSpatialZoneType', 'IfcStackTerminalType', 'IfcStairFlightType', 'IfcStairType', 'IfcSwitchingDeviceType', 'IfcSystemFurnitureElementType', 'IfcTankType', 'IfcTendonAnchorType', 'IfcTendonType', 'IfcTransformerType', 'IfcTransportElementType', 'IfcTubeBundleType', 'IfcUnitaryControlElementType', 'IfcUnitaryEquipmentType', 'IfcValveType', 'IfcVibrationIsolatorType', 'IfcWallType', 'IfcWasteTerminalType', 'IfcWindowStyle', 'IfcWindowType')

WARN (bpy.rna): C:\Users\blender\git\blender-v360\blender.git\source\blender\python\intern\bpy_rna.c:1343 pyrna_enum_to_py: current value '8' matches no enum in 'BIMModelProperties', '', 'ifc_class'
2024-04-16 10:10:50 +02:00