BHoM / Robot_Toolkit

Tools for Robot Structural Analysis
GNU Lesser General Public License v3.0
11 stars 3 forks source link

Robot_Adapter: Fix crash on pulling panels with hosted Beams or Columns #461

Closed IsakLarbornBH closed 3 years ago

IsakLarbornBH commented 3 years ago

Issues addressed by this PR

Closes #451

Currently, the Robot Adapter assumes that every hosted object of a panel is an Opening. This is not always the case, Panels in Robot can host other objects, such as beams. This PR fixes the crash associated with pulling panels which host beams or columns.

Test files

See linked issue for a Robot file that can not be pulled in without this fix.

Additional comments

Note that the check added by this PR only filters out hosted objects with the Structural Type of Beam or Column. The remaining types are Slab, Wall and Undefined.

I have tested this on multiple Robot files, some pushed from the BHoM, some created in Robot. This PR does not break any of them, and none of them have openings of any type other than Undefined.

Whether Slab and Wall should also be filtered out is an issue left for later - as is whether Undefined objects could be something other than openings. Whether there are other potential crashes related to assumptions regarding hosted objects has not been investigated.

IsakLarbornBH commented 3 years ago

@BHoMBot check required

bhombot-ci[bot] commented 3 years ago
@IsakLarbornBH to confirm, the following checks are now queued: - `code-compliance` - `documentation-compliance` - `project-compliance` - `core` - `null-handling` - `serialisation` - `installer` - `versioning`
IsakNaslundBh commented 3 years ago

@BHoMBot check compliance @BHoMBot check required

bhombot-ci[bot] commented 3 years ago
@IsakNaslundBh to confirm, the following checks are now queued: - `code-compliance` - `documentation-compliance` - `project-compliance` - `branch-compliance` - `dataset-compliance` - `copyright-compliance` - `code-compliance` - `documentation-compliance` - `project-compliance` - `core` - `null-handling` - `serialisation` - `installer` - `versioning`
bhombot-ci[bot] commented 3 years ago
The check `code-compliance` has already been run previously and recorded as a successful check. This check has not been run again at this time.
bhombot-ci[bot] commented 3 years ago
The check `documentation-compliance` has already been run previously and recorded as a successful check. This check has not been run again at this time.
bhombot-ci[bot] commented 3 years ago
The check `project-compliance` has already been run previously and recorded as a successful check. This check has not been run again at this time.
IsakNaslundBh commented 3 years ago

@BHoMBot check ready-to-merge

bhombot-ci[bot] commented 3 years ago
@IsakNaslundBh to confirm, the following checks are now queued: - `ready-to-merge` There are 12 requests in the queue ahead of you.