Files
yjearth/src/main/java/com/yj/earth/params/LinkImage.java
2025-09-22 17:13:22 +08:00

135 lines
3.1 KiB
Java

package com.yj.earth.params;
import com.yj.earth.annotation.SourceType;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
@Data
@NoArgsConstructor
@SourceType("linkImage")
public class LinkImage {
private String id;
private boolean show;
private String name;
private Position position;
private int heightMode;
private boolean scaleByDistance;
private int near;
private int far;
private Billboard billboard;
private Label label;
private Attribute attribute;
private String richTextContent;
private CustomView customView;
@Data
@NoArgsConstructor
public static class Position {
private double lng;
private double lat;
private double alt;
}
@Data
@NoArgsConstructor
public static class Billboard {
private boolean show;
private String image;
private String defaultImage;
private int scale;
}
@Data
@NoArgsConstructor
public static class Label {
private String text;
private boolean show;
private int fontFamily;
private int fontSize;
private String color;
}
@Data
@NoArgsConstructor
public static class Attribute {
private Link link;
private Vr vr;
private Camera camera;
private Isc isc;
private Goods goods;
@Data
@NoArgsConstructor
public static class Link {
private List<LinkContent> content;
@Data
@NoArgsConstructor
public static class LinkContent {
private String name;
private String url;
}
}
@Data
@NoArgsConstructor
public static class Vr {
private List<VrContent> content;
@Data
@NoArgsConstructor
public static class VrContent {
private String name;
private String url;
}
}
@Data
@NoArgsConstructor
public static class Camera {
private List<Object> content;
}
@Data
@NoArgsConstructor
public static class Isc {
private List<Object> content;
}
@Data
@NoArgsConstructor
public static class Goods {
private List<GoodsContent> content;
@Data
@NoArgsConstructor
public static class GoodsContent {
private String id;
private String name;
private String cnt;
}
}
}
@Data
@NoArgsConstructor
public static class CustomView {
private Orientation orientation;
private RelativePosition relativePosition;
@Data
@NoArgsConstructor
public static class Orientation {
private double heading;
private double pitch;
private double roll;
}
@Data
@NoArgsConstructor
public static class RelativePosition {
private double lng;
private double lat;
private double alt;
}
}
}