Class PTZInstructionBuilder
java.lang.Object
io.github.lunasaw.gb28181.common.entity.control.instruction.builder.PTZInstructionBuilder
PTZ指令构建器 - Builder设计模式实现
提供流式API构建各种PTZ控制指令
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddAuxiliaryControl
(AuxiliaryControlEnum control, int switchNumber) 添加辅助开关控制指令addCruiseControl
(CruiseControlEnum control, int groupNumber) 添加巡航控制指令addCruiseControl
(CruiseControlEnum control, int groupNumber, int presetNumber) 添加巡航控制指令 - 带预置位号addCruiseControl
(CruiseControlEnum control, int groupNumber, int presetNumber, int speedOrTime) 添加巡航控制指令 - 带速度或时间数据addFIControl
(FIControlEnum control) 添加FI控制指令添加FI控制指令 - 支持组合控制addPresetControl
(PresetControlEnum control, int presetNumber) 添加预置位控制指令addPTZControl
(PTZControlEnum control) 添加PTZ控制指令addPTZControl
(PTZControlEnum.PanDirection pan, PTZControlEnum.TiltDirection tilt, PTZControlEnum.ZoomDirection zoom) 添加PTZ控制指令 - 支持组合控制address
(int address) 设置设备地址addScanControl
(ScanControlEnum control, int groupNumber, ScanControlEnum.ScanOperationType operationType) 添加扫描控制指令addScanSpeedControl
(int groupNumber, int speed) 添加扫描速度控制指令build()
构建PTZ指令byte[]
构建并转换为字节数组构建并转换为十六进制字符串static PTZInstructionBuilder
create()
创建构建器实例focusSpeed
(int speed) 设置聚焦速度horizontalSpeed
(int speed) 设置水平控制速度irisSpeed
(int speed) 设置光圈速度verticalSpeed
(int speed) 设置垂直控制速度zoomSpeed
(int speed) 设置变倍控制速度
-
Constructor Details
-
PTZInstructionBuilder
public PTZInstructionBuilder()
-
-
Method Details
-
create
创建构建器实例 -
address
设置设备地址- Parameters:
address
- 设备地址 (0x000-0xFFF)- Returns:
- this
-
addPTZControl
添加PTZ控制指令- Parameters:
control
- PTZ控制类型- Returns:
- this
-
addPTZControl
public PTZInstructionBuilder addPTZControl(PTZControlEnum.PanDirection pan, PTZControlEnum.TiltDirection tilt, PTZControlEnum.ZoomDirection zoom) 添加PTZ控制指令 - 支持组合控制- Parameters:
pan
- 水平方向控制tilt
- 垂直方向控制zoom
- 变倍控制- Returns:
- this
-
addFIControl
添加FI控制指令- Parameters:
control
- FI控制类型- Returns:
- this
-
addFIControl
public PTZInstructionBuilder addFIControl(FIControlEnum.IrisDirection iris, FIControlEnum.FocusDirection focus) 添加FI控制指令 - 支持组合控制- Parameters:
iris
- 光圈控制focus
- 聚焦控制- Returns:
- this
-
addPresetControl
添加预置位控制指令- Parameters:
control
- 预置位控制类型presetNumber
- 预置位号 (1-255)- Returns:
- this
-
addCruiseControl
添加巡航控制指令- Parameters:
control
- 巡航控制类型groupNumber
- 巡航组号 (0-255)- Returns:
- this
-
addCruiseControl
public PTZInstructionBuilder addCruiseControl(CruiseControlEnum control, int groupNumber, int presetNumber) 添加巡航控制指令 - 带预置位号- Parameters:
control
- 巡航控制类型groupNumber
- 巡航组号 (0-255)presetNumber
- 预置位号 (1-255)- Returns:
- this
-
addCruiseControl
public PTZInstructionBuilder addCruiseControl(CruiseControlEnum control, int groupNumber, int presetNumber, int speedOrTime) 添加巡航控制指令 - 带速度或时间数据- Parameters:
control
- 巡航控制类型groupNumber
- 巡航组号 (0-255)presetNumber
- 预置位号 (1-255)speedOrTime
- 速度或时间 (0-4095)- Returns:
- this
-
addScanControl
public PTZInstructionBuilder addScanControl(ScanControlEnum control, int groupNumber, ScanControlEnum.ScanOperationType operationType) 添加扫描控制指令- Parameters:
control
- 扫描控制类型groupNumber
- 扫描组号 (0-255)operationType
- 操作类型- Returns:
- this
-
addScanSpeedControl
添加扫描速度控制指令- Parameters:
groupNumber
- 扫描组号 (0-255)speed
- 扫描速度 (0-4095)- Returns:
- this
-
addAuxiliaryControl
添加辅助开关控制指令- Parameters:
control
- 辅助开关控制类型switchNumber
- 开关编号 (0-255)- Returns:
- this
-
horizontalSpeed
设置水平控制速度- Parameters:
speed
- 水平速度 (0x00-0xFF)- Returns:
- this
-
verticalSpeed
设置垂直控制速度- Parameters:
speed
- 垂直速度 (0x00-0xFF)- Returns:
- this
-
zoomSpeed
设置变倍控制速度- Parameters:
speed
- 变倍速度 (0x0-0xF)- Returns:
- this
-
focusSpeed
设置聚焦速度- Parameters:
speed
- 聚焦速度 (0x00-0xFF)- Returns:
- this
-
irisSpeed
设置光圈速度- Parameters:
speed
- 光圈速度 (0x00-0xFF)- Returns:
- this
-
build
构建PTZ指令- Returns:
- PTZ指令格式对象
-
buildToHex
构建并转换为十六进制字符串- Returns:
- 十六进制字符串
-
buildToBytes
public byte[] buildToBytes()构建并转换为字节数组- Returns:
- 字节数组
-