# DO NOT EDIT! This file was auto-generated by crates/build/re_types_builder/src/codegen/python/mod.rs
# Based on "crates/store/re_sdk_types/definitions/rerun/components/half_size2d.fbs".

# You can extend this class by creating a "HalfSize2DExt" class in "half_size2d_ext.py".

from __future__ import annotations

from .. import datatypes
from .._baseclasses import (
    ComponentBatchMixin,
    ComponentMixin,
)

__all__ = ["HalfSize2D", "HalfSize2DBatch"]


class HalfSize2D(datatypes.Vec2D, ComponentMixin):
    """
    **Component**: Half-size (radius) of a 2D box.

    Measured in its local coordinate system.

    The box extends both in negative and positive direction along each axis.
    Negative sizes indicate that the box is flipped along the respective axis, but this has no effect on how it is displayed.
    """

    _BATCH_TYPE = None
    # You can define your own __init__ function as a member of HalfSize2DExt in half_size2d_ext.py

    # Note: there are no fields here because HalfSize2D delegates to datatypes.Vec2D


class HalfSize2DBatch(datatypes.Vec2DBatch, ComponentBatchMixin):
    _COMPONENT_TYPE: str = "rerun.components.HalfSize2D"


# This is patched in late to avoid circular dependencies.
HalfSize2D._BATCH_TYPE = HalfSize2DBatch  # type: ignore[assignment]
