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 PTZInstructionBuildercreate()创建构建器实例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:
- 字节数组
-