Handle processingΒΆ

The processing of the handle click and move can be done inside the PythonPart script as follows:

def move_handle(build_ele,
                handle_prop: HandleProperties,
                input_pnt: AllplanGeo.Point3D,
                doc: AllplanElementAdapter.DocumentAdapter):
    """
    Modify the element geometry by handles

    Args:
        build_ele:  the building element.
        handle_prop handle properties
        input_pnt:  input point
        doc:        input document
    """

    if handle_prop.handle_id == "MirrorCuboid":
        build_ele.MirrorCuboid.value = not build_ele.MirrorCuboid.value

    else:
        build_ele.change_property(handle_prop, input_pnt)

    return create_element(build_ele, doc)