OSArch Community

How to Mirror an element

  1. A

    Hi,

    How do I mirror an element, Tried with Shift+M.

    That didnt work though and got an error message

    
    Python: Traceback (most recent call last):
    
      File "C:\Users\shifali\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\blenderbim\bim\module\model\workspace.py", line 449, in invoke
    
        return self.execute(context)
    
      File "C:\Users\shifali\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\blenderbim\tool\ifc.py", line 130, in execute
    
        IfcStore.execute_ifc_operator(self, context)
    
      File "C:\Users\shifali\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\blenderbim\bim\ifc.py", line 428, in execute_ifc_operator
    
        result = getattr(operator, "_execute")(context)
    
      File "C:\Users\shifali\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\blenderbim\bim\module\model\workspace.py", line 441, in _execute
    
        getattr(self, f"hotkey_{self.hotkey}")()
    
      File "C:\Users\shifali\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\blenderbim\bim\module\model\workspace.py", line 585, in hotkey_S_M
    
        bpy.ops.bim.mirror_elements()
    
      File "D:\ARUN\blender-3.4.1-windows-x64\3.4\scripts\modules\bpy\ops.py", line 113, in __call__
    
        ret = _op_call(self.idname_py(), None, kw)
    
    RuntimeError: Error: Python: Traceback (most recent call last):
    
      File "C:\Users\shifali\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\blenderbim\tool\ifc.py", line 130, in execute
    
        IfcStore.execute_ifc_operator(self, context)
    
      File "C:\Users\shifali\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\blenderbim\bim\ifc.py", line 428, in execute_ifc_operator
    
        result = getattr(operator, "_execute")(context)
    
      File "C:\Users\shifali\AppData\Roaming\Blender Foundation\Blender\3.4\scripts\addons\blenderbim\bim\module\model\product.py", line 432, in _execute
    
        bpy.ops.bim.override_object_duplicate_move(is_interactive=False)
    
      File "D:\ARUN\blender-3.4.1-windows-x64\3.4\scripts\modules\bpy\ops.py", line 113, in __call__
    
        ret = _op_call(self.idname_py(), None, kw)
    
    RuntimeError: Operator bpy.ops.bim.override_object_duplicate_move.poll() failed, context is incorrect
    
    Location: D:\ARUN\blender-3.4.1-windows-x64\3.4\scripts\modules\bpy\ops.py:113
    

  2. C

    RuntimeError: Operator bpy.ops.bim.override_object_duplicate_move.poll() failed, context is incorrect

    Just taking a wild guess here, did you try it in object or in edit mode?

  3. A

    @Coen said:

    RuntimeError: Operator bpy.ops.bim.override_object_duplicate_move.poll() failed, context is incorrect

    Just taking a wild guess here, did you try it in object or in edit mode?

    I was trying with the Mirror command from the BIM Tool

  4. M

    I've improved the error catching. The intended usage is that you must have 2 or more objects selected. The active object will be the "mirror axis object" It will be mirrored along the YZ plane.

  5. A

    @Moult How to mirror wrt to plane other than YZ

  6. M

    @Arv there isn't yet a way to change it from YZ in the UI, but you can just rotate your mirroring object (typically you'd use an empty).

  7. A

    @Moult I am trying to mirror this door element across the x-axis. I have tried the blender way of mirroring (which is same as scaling by -1). However, after saving and reopening the ifc file, this gets changed as 180degree rotation along z-axis and the scaling gets reset to 1. Is mirror supported in blenderbim or ifc? Do you recommend any method to mirror this element (didn't want rotation)

  8. N

    Hi @Arv could you just move the door to where you want it and use the door modifier to change the hinge position/opening direction

  9. A

    Thanks @Nigel. Will try this out

  10. T
  11. A

    @theoryshaw said:

    Unfortunately I don't think the IFC schema allows mirroring

    https://forums.buildingsmart.org/t/mirroring/3688

    Thanks for the link @theoryshaw and I guess it makes sense not to mirror as like mentioned in the comments by jwouellette

  12. T

    But i also agree with the Dion, the utility is too great to ignore. :)

    Would like to avoid future excuses like... "I would love to use BlenderBIM, but they don't support mirroring... when ever other BIM program does."

    :)

    This is one of those classic cases, as mentioned, here... that this shortcoming is because of IFC, not BB, and as such, if users really want it, to put pressure on BuildingSmart to incorporate it.

    This is the beautiful feedback loop.

  13. T

    As a way to manage mirroring, I wondering if a system or an approach could be used where if a non-material based type was mirrored, that BB would automatically create a new mirrored type. IfcDoorType/DT01_Mirror, for example.

    And it was 'hardwired' to IfcDoorType/DT01. That is, any change done to IfcDoorType/DT01 would change IfcDoorType/DT01_Mirror automatically, and vice versa.

  14. C

    This is a good idea. I've been manually created handed elements when needed, this would be a good improvement. Perhaps a LH/RH suffix would be more appropriate if mirroring isn't supported by the schema?

  15. T

    And, if the product was perfectly symmetrical, that it could be tagged with some type of pset to NOT create a mirrored type.

  16. T

Login or Register to reply.