package com.multictrl.modules.business.dto.camera;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.DecimalMax;
import jakarta.validation.constraints.DecimalMin;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

/**
 * 点对焦参数
 *
 * @author Sdy
 * @since 1.0.0 2026/4/28
 */
@Data
@Schema(name = "点对焦参数")
public class PointFocusAction {

    /* @NotBlank(message = "相机类型不能为空")
    @Schema(description = "相机类型 wide:广角 zoom:变焦 相机类型枚举，注意: Matrice 30 系列飞行器只支持 zoom 镜头下配置该参数")
    private String type;*/

    @NotNull(message = "对焦点坐标x不能为空")
    @DecimalMax(value = "1", message = "对焦点坐标x 范围为0~1")
    @DecimalMin(value = "0", message = "对焦点坐标x 范围为0~1")
    @Schema(description = "对焦点坐标 x（以镜头的左上角为坐标中心点，水平方向为 x）")
    private Double x;

    @NotNull(message = "对焦点坐标y不能为空")
    @DecimalMax(value = "1", message = "对焦点坐标y 范围为0~1")
    @DecimalMin(value = "0", message = "对焦点坐标y 范围为0~1")
    @Schema(description = "对焦点坐标 y（以镜头的左上角为坐标中心点，竖直方向为 y）")
    private Double y;
}
