001package fr.aumgn.bukkitutils.geom;
002
003import fr.aumgn.bukkitutils.geom.direction.Face;
004
005/**
006 * Enum like class which contains basics directions.
007 */
008public final class Faces {
009
010    public static final Direction UP =
011            new Face(  0.0f,  180.0f,  0,  1,  0);
012    public static final Direction DOWN =
013            new Face(  0.0f, -180.0f,  0, -1,  0);
014
015    public static final Direction NORTH =
016            new Face( 90.0f,    0.0f, -1,  0,  0);
017    public static final Direction EAST =
018            new Face(180.0f,    0.0f,  0,  0, -1);
019    public static final Direction SOUTH =
020            new Face(270.0f,    0.0f,  1,  0,  0);
021    public static final Direction WEST =
022            new Face(  0.0f,    0.0f,  0,  0,  1);
023
024    public static final Direction UP_NORTH
025            = new Face( 90.0f,   90.0f, -1,  1,  0);
026    public static final Direction UP_EAST =
027            new Face(180.0f,   90.0f,  0,  1, -1);
028    public static final Direction UP_SOUTH =
029            new Face(270.0f,   90.0f,  1,  1,  0);
030    public static final Direction UP_WEST =
031            new Face(  0.0f,   90.0f,  0,  1,  1);
032
033    public static final Direction DOWN_NORTH =
034            new Face( 90.0f,  -90.0f, -1, -1,  0);
035    public static final Direction DOWN_EAST =
036            new Face(180.0f,  -90.0f,  0, -1, -1);
037    public static final Direction DOWN_SOUTH =
038            new Face(270.0f,  -90.0f,  1, -1,  0);
039    public static final Direction DOWN_WEST =
040            new Face(  0.0f,  -90.0f,  0, -1,  1);
041
042    public static final Direction NORTH_EAST =
043            new Face(135.0f,    0.0f, -1,  0, -1);
044    public static final Direction NORTH_WEST =
045            new Face( 45.0f,    0.0f, -1,  0,  1);
046
047    public static final Direction SOUTH_EAST =
048            new Face(225.0f,    0.0f,  1,  0, -1);
049    public static final Direction SOUTH_WEST =
050            new Face(315.0f,    0.0f,  1,  0,  1);
051
052    static {
053        Face.done();
054    }
055}