Source code for draugr.opencv_utilities.windows.elements.trackbar
from typing import Optional
import cv2
from warg import sink
__all__ = ["add_trackbar"]
[docs]def add_trackbar(
window_name: str,
trackbar_name: str,
default: Optional[int] = None,
*,
min_val: int = 0,
max_val: int = 255,
callback: callable = sink
) -> None:
"""
Adds a trackbar to a window.
:param default:
:type default:
:param min_val:
:type min_val:
:param max_val:
:type max_val:
:param window_name: Name of the window to add the trackbar to.
:param trackbar_name: Name of the trackbar.
:param callback: Callback function to be called when the trackbar is moved.
:return: None
"""
if default is None:
default = min_val + (max_val - min_val) // 2
default = int(default)
min_val = int(min_val)
max_val = int(max_val)
cv2.createTrackbar(trackbar_name, window_name, default, max_val, callback)
# cv2.setTrackbarPos(trackbar_name, window_name, default)
cv2.setTrackbarMin(trackbar_name, window_name, min_val)
# cv2.setTrackbarMax(trackbar_name, window_name, max_val)