Source code for tomni.transformers.ellipse2json.main

import uuid
from typing import Union


[docs]def ellipse2json( x: int, y: int, radius: int, secondRadius: Union[None, int] = None, alpha: float = 0 ) -> dict: """ Convert ellipse parameters into a JSON object in standard AxionBio format. Args: x (int): The center x-position of the ellipse. y (int): The center y-position of the ellipse. radius (int): The radius of the ellipse. secondRadius (int, None, optional): The smallest radius of the ellipse. Defaults to None. In case of a circle or when not provided, it is assumed to be equal to 'radius'. alpha (float, optional): This is the angle between the biggest radius and the x-axis. Defaults to 0. Returns: dict: A JSON object representing the ellipse in standard AxionBio format. """ result = [] result = { "type": "ellipse", "center": {"x": int(x), "y": int(y)}, "radiusX": int(radius), "radiusY": int(secondRadius) if secondRadius else int(radius), "angleOfRotation": alpha, "id": str(uuid.uuid4()), } return result