]> git.lizzy.rs Git - BoundingBoxOutlineReloaded.git/blob - src/main/java/com/irtimaled/bbor/client/renderers/OffsetPoint.java
General performance improvements and serverside fixes
[BoundingBoxOutlineReloaded.git] / src / main / java / com / irtimaled / bbor / client / renderers / OffsetPoint.java
1 package com.irtimaled.bbor.client.renderers;
2
3 import com.irtimaled.bbor.client.models.Point;
4 import com.irtimaled.bbor.common.models.Coords;
5
6 import java.util.Objects;
7
8 class OffsetPoint {
9     private final Point point;
10
11     OffsetPoint(double x, double y, double z) {
12         this(new Point(x, y, z));
13     }
14
15     OffsetPoint(Coords coords) {
16         this(new Point(coords));
17     }
18
19     OffsetPoint(Point point) {
20         this.point = point;
21     }
22
23     double getX() {
24         return point.getX();
25     }
26
27     double getY() {
28         return point.getY();
29     }
30
31     double getZ() {
32         return point.getZ();
33     }
34
35     OffsetPoint offset(double x, double y, double z) {
36         return new OffsetPoint(point.offset(x, y, z));
37     }
38
39     double getDistance(OffsetPoint offsetPoint) {
40         return this.point.getDistance(offsetPoint.point);
41     }
42
43     Point getPoint() {
44         return point;
45     }
46
47     @Override
48     public boolean equals(Object o) {
49         if (this == o) return true;
50         if (o == null || getClass() != o.getClass()) return false;
51         OffsetPoint that = (OffsetPoint) o;
52         return point.equals(that.point);
53     }
54
55     @Override
56     public int hashCode() {
57         return Objects.hash(point);
58     }
59 }