liusuyi
2026-05-12 9f327c33730ba10cb2d89aff99b727502232e968
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
package com.ard.work.sdk.zlxd.netty.message.request;
 
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
 
import javax.xml.bind.annotation.*;
 
/**
 * 类描述:设置ptz
 *
 * @author lsy
 * @since 2026/2/3 15:06
 */
@EqualsAndHashCode(callSuper = true)
@Data
@NoArgsConstructor
@XmlRootElement(name = "Message")
@XmlAccessorType(XmlAccessType.FIELD)
public class SetAbsLocationZoomRequest extends BaseXmlRequest {
 
    @XmlElement(name = "parameters")
    private Parameters parameters;
 
    @NoArgsConstructor
    @XmlAccessorType(XmlAccessType.FIELD)
    public static class Parameters {
 
        /**
         * 1:可见光 2:热成像
         */
        @XmlElement(name = "ptzId")
        private int ptzId;
 
        /**
         * 水平角(度)
         */
        @XmlElement(name = "panAngle")
        private float panAngle;
 
        /**
         * 俯仰角(度)
         */
        @XmlElement(name = "tiltAngle")
        private float tiltAngle;
 
        /**
         * 变倍
         */
        @XmlElement(name = "zoomRatio")
        private float zoom;
 
        /**
         * 聚焦值
         */
        @XmlElement(name = "focus")
        private int focus;
 
        /**
         * 水平垂直转动速度范围 0-9
         */
        @XmlElement(name = "speed")
        private int speed = 9;
 
        /**
         * zoom移动范围 1-99
         */
        @XmlElement(name = "zoomSpeed")
        private int zoomSpeed = 50;
 
        public Parameters(Integer chanNo, Float panAngle, Float tiltAngle, Float zoom, Integer focus) {
            this.ptzId = chanNo;
            this.panAngle = panAngle;
            this.tiltAngle = tiltAngle;
            this.focus = focus;
            this.zoom = zoom;
        }
 
        public Parameters(Integer chanNo, Float panAngle, Float tiltAngle, Float zoom) {
            this.ptzId = chanNo;
            this.panAngle = panAngle;
            this.tiltAngle = tiltAngle;
            this.zoom = zoom;
        }
    }
 
    public SetAbsLocationZoomRequest(Integer chanNo, Float p, Float t, Float z, Integer focus, int seq,
                                     String sessionId) {
        super.setHeader(new Header("SetAbsLocationZoom", seq, sessionId, "", ""));
        this.parameters = new Parameters(chanNo, p, t, z, focus);
    }
 
    public SetAbsLocationZoomRequest(Integer chanNo, Float p, Float t, Float z, int seq, String sessionId) {
        super.setHeader(new Header("SetAbsLocationZoom", seq, sessionId, "", ""));
        this.parameters = new Parameters(chanNo, p, t, z);
    }
}