Files
Server/src/engine/objects/MeshBounds.java
T

57 lines
1.9 KiB
Java
Raw Normal View History

2022-04-30 09:41:17 -04:00
// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
// Magicbane Emulator Project © 2013 - 2022
// www.magicbane.com
package engine.objects;
import engine.gameManager.DbManager;
import engine.math.Bounds;
2023-10-27 20:03:15 -05:00
import java.awt.*;
import java.awt.geom.Area;
2022-04-30 09:41:17 -04:00
import java.sql.ResultSet;
import java.sql.SQLException;
public class MeshBounds {
2023-07-15 09:23:48 -04:00
public final float minX;
public final float minY;
public final float minZ;
public final float maxX;
public final float maxY;
public final float maxZ;
public final float radius;
public int meshID;
public MeshBounds(ResultSet rs) throws SQLException {
meshID = rs.getInt("meshID");
minX = rs.getFloat("minX");
minY = rs.getFloat("minY");
minZ = rs.getFloat("minZ");
maxX = rs.getFloat("maxX");
maxY = rs.getFloat("maxY");
maxZ = rs.getFloat("maxZ");
float radiusX = (int) maxX;
float radiusZ = (int) maxZ;
radius = Math.max(radiusX, radiusZ);
}
public static void InitializeBuildingBounds() {
Bounds.meshBoundsCache = DbManager.BuildingQueries.LOAD_MESH_BOUNDS();
}
2023-10-27 20:03:15 -05:00
public Area getArea(){
Polygon area = new Polygon();
area.addPoint((int) this.minX, (int) this.minZ);
area.addPoint((int) this.maxX, (int) this.maxZ);
return new Area(area);
}
2022-04-30 09:41:17 -04:00
}