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 content; @Data @NoArgsConstructor public static class LinkContent { private String name; private String url; } } @Data @NoArgsConstructor public static class Vr { private List content; @Data @NoArgsConstructor public static class VrContent { private String name; private String url; } } @Data @NoArgsConstructor public static class Camera { private List content; } @Data @NoArgsConstructor public static class Isc { private List content; } @Data @NoArgsConstructor public static class Goods { private List 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; } } }