- abort() - Method in class dev.roanh.convexmerger.game.GameState
-
Signals that this game was forcefully terminated
before it was supposed to finish.
- abort() - Method in interface dev.roanh.convexmerger.game.GameStateListener
-
Called when the game is aborted (forcefully terminated).
- abort() - Method in class dev.roanh.convexmerger.net.ClientConnection
-
- abort() - Method in class dev.roanh.convexmerger.net.InternalServer
-
- abort() - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- abort() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
- abortGame() - Method in class dev.roanh.convexmerger.ui.ConvexMerger
-
Aborts the active game, if any.
- absorbed - Variable in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Number of objects absorbed in merges by this player.
- accept(T, SegmentPartitionTree.LineSegment) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree.SearchAnimation
-
- acceptInnerNode(T, SegmentPartitionTree.LineSegment) - Method in interface dev.roanh.convexmerger.util.SegmentPartitionTree.PartitionTreeVisitor
-
Called when a partition tree visits a new inner tree node.
- acceptTerminalNode(T, SegmentPartitionTree.LineSegment) - Method in interface dev.roanh.convexmerger.util.SegmentPartitionTree.PartitionTreeVisitor
-
Called when a partition tree search finds a terminal node.
- activeDialog - Variable in class dev.roanh.convexmerger.ui.GamePanel
-
Currently showing feedback dialog.
- activePlayer - Variable in class dev.roanh.convexmerger.game.GameState
-
The index of the player whose turn it is.
- ADD_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Color used for the add button icons and text.
- ADD_COLOR_HIGHLIGHT - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Color used for the add button icons and text when highlighted.
- ADD_ICON_SIZE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Size of the player/ai add button icons.
- addAbsorbed(int) - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Increments the total number of objects absorbed
in merges by the given number.
- addAI - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Bounds of the add AI button.
- addAnimation(Animation) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
Adds a new global animation to the game, this animation is
rendered after all convex objects.
- addArea(double) - Method in class dev.roanh.convexmerger.player.Player
-
Adds some claimed area to this player.
- addClaim() - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Increments the total number of objects claimed by one.
- addData(T) - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Adds an object to store at this tree node.
- addedBorderVerticalSegment(VerticalDecomposition.Line, VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Handles the case where the added vertical
segment is on the inside of a single trapezoid.
- addedCompletelyInsideSingleTrapezoid(VerticalDecomposition.Line, VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Updates the structures for case when the added segment
fits entirely inside one trapezoid inside the decomposition.
- addedInternalVerticalSegment(VerticalDecomposition.Line, VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Handles the case where the added vertical segment is on the inside of a single trapezoid.
- addedIntersectsMultipleTrapezoids(VerticalDecomposition.Line, ConvexObject) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Updates the structures for case when the added segment
crosses more than one trapezoid inside the decomposition.
- addedIntersectsSingleTrapezoid(VerticalDecomposition.Line) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Adds a segment that only crosses one trapezoid inside the decomposition.
- addedOnRightBorder(VerticalDecomposition.Line, VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Updates the structures for case when the added segment
fits inside one trapezoid of the decomposition, except
for its right ending point.
- addedVerticalSegment(VerticalDecomposition.Line) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Updates the search structure for the case
of an added vertical segment.
- addLeftPoint(Point2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Adds a left bounding point to the trapezoid.
- addMerge() - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Increments the total number of merges by one.
- addNeighbour(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Adds a neighbour to the list of neighbours.
- addObject(ConvexObject) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Adds a new convex object to this vertical decomposition.
- addPlayer - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Bounds of the add (human) player button.
- addPoint(VerticalDecomposition.DecompositionPoint) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Adds a decomposition point to the list of decomposition points.
- addRightPoint(Point2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Adds a right bounding point to the trapezoid.
- addSegment(Point2D, Point2D) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Adds a new line segment to this segment partition tree.
- addSegment(Line2D) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Adds a new line segment to this segment partition tree.
- addSegment(Line2D, ConvexObject) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Adds a line segment belonging to an object to
the vertical decomposition and updates the structures.
- addSegment(VerticalDecomposition.Line) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
Adds a segment to the list of segments that this point is part of.
- addSegmentEndpointsAsTrapezoidBoundingPoints(VerticalDecomposition.Trapezoid, VerticalDecomposition.Trapezoid, VerticalDecomposition.Line) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
If the endpoints of the inserted segment are not bounding points of trapezoids
whose boundaries they lie on, they are added to their bounding points.
- addSegmentInternal(SegmentPartitionTree.LineSegment) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Adds a new line segment to this segment partition tree.
- addTrapAbove(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Adds a given trapezoid to the list of trapezoids above this line.
- addTrapBelow(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Adds a given trapezoid to the list of trapezoids below this line.
- addTrapezoid(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Adds a trapezoid to the list of trapezoids.
- addTurnTime(long) - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Adds the time a player turn took.
- ai - Variable in class dev.roanh.convexmerger.net.PlayerProxy
-
Whether the player this proxy represents is an AI.
- ai - Variable in class dev.roanh.convexmerger.player.Player
-
If this player is an AI or not.
- ai - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Combo box used to configure an AI.
- ai - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
AI icon in the color for this player theme.
- AI_ADD - Static variable in class dev.roanh.convexmerger.ui.Theme
-
AI add image.
- AI_ADD_HIGHLIGHT - Static variable in class dev.roanh.convexmerger.ui.Theme
-
AI add image when highlighted.
- AI_WAIT_TIME - Static variable in class dev.roanh.convexmerger.Constants
-
The number of milliseconds an AI has to wait before making a move.
- AIRegistry - Enum in dev.roanh.convexmerger.player
-
Registry of AI players.
- AIRegistry(String, Supplier<Player>) - Constructor for enum dev.roanh.convexmerger.player.AIRegistry
-
Constructs a new registry entry.
- aiSmall - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Small AI icon in the color for this player theme.
- all(BiFunction<T, SegmentPartitionTree.LineSegment, Boolean>) - Static method in interface dev.roanh.convexmerger.util.SegmentPartitionTree.PartitionTreeVisitor
-
Constructs a special partition tree visitor that does not distinguish
between inner and terminal nodes and reports both.
- all(BiConsumer<T, SegmentPartitionTree.LineSegment>) - Static method in interface dev.roanh.convexmerger.util.SegmentPartitionTree.PartitionTreeVisitor
-
Constructs a special partition tree visitor that does not distinguish
between inner and terminal nodes and reports both.
- angleBetweenLines(Line2D, Line2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the relative angle in counter-clockwise direction between
the two given directed line segments.
- angleFromVertical(Line2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the angle the given line makes with the
negative y-axis (going down along the y-axis).
- angleFromVertical(Point2D, Point2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the angle the given line makes with the
negative y-axis (going down along the y-axis).
- angleFromVertical(double, double, double, double) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the angle the given line makes with the
negative y-axis (going down along the y-axis).
- angularComparator(Line2D) - Static method in class dev.roanh.convexmerger.util.ConjugationTree
-
A comparator that compares points based on their angle to a
fixed point, relative to the angle of a fixed "base" vector.
- animate - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition
-
True if the vertical decomposition is animated and showing
individual segment updates.
- animated - Variable in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Whether this segment partition tree is animated.
- Animation - Class in dev.roanh.convexmerger.animation
-
Class to represent ongoing animations.
- Animation() - Constructor for class dev.roanh.convexmerger.animation.Animation
-
- animation - Variable in class dev.roanh.convexmerger.animation.RenderableObject
-
The active animation for this object.
- ANIMATION_RATE - Static variable in class dev.roanh.convexmerger.Constants
-
Number of milliseconds per animation frame (60FPS).
- animations - Variable in class dev.roanh.convexmerger.ui.GamePanel
-
List of global animations for the game, these are
rendered after all convex objects.
- approxEqual(Point2D, Point2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Checks if the two given points are approximately equal.
- area - Variable in class dev.roanh.convexmerger.animation.ScoreAnimation
-
Current area claimed by the player as
shown by the animation.
- area - Variable in class dev.roanh.convexmerger.player.Player
-
The total area claimed by this player.
- AREA_DIV_NUM - Static variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
The area of the base triangle is divided this to set the
minimum required area for an object
- areaObject(int) - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Function to determine the approximate minimum area for an object
- average - Variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Dummy player returning average player data.
- AveragePlayer() - Constructor for class dev.roanh.convexmerger.ui.ResultOverlay.AveragePlayer
-
Constructs a new average player.
- BACKGROUND - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Playfield background color.
- BAR_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Maximum height of a bar in the bar chart.
- BAR_NAME_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Result screen bar chart player name color.
- BAR_SCORE_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Result screen bar chart score color.
- BAR_WIDTH - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Width of a bar chart bar.
- barBody - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Player theme bar chart bar body color.
- barOutline - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Player theme bar chart bar outline color.
- baseOutline - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Player theme base outline color.
- bisector - Variable in class dev.roanh.convexmerger.util.ConjugationTree
-
The bisector of this tree node (a conjugate of the parent bisector).
- blue - Static variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
Second player.
- body - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Player theme object body color.
- BORDER_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Result screen border color.
- BORDER_GAP - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Space between titled borders.
- BORDER_STROKE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Stroke used to draw the menu panel gradient border.
- BORDER_TEXT_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Result screen titled border text color.
- botSegment - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
The segment that bound the trapezoid from the bottom.
- BOTTOM_OFFSET - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Offset from the bottom to the playfield rectangle.
- boundClip(Point2D, Point2D, Point2D, Point2D, int) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree.LineSegment
-
Computes the intersection of this line segment with
the given rectangle in the given direction.
- bounds - Variable in class dev.roanh.convexmerger.ui.ComboBox
-
The bounds for the main field of this combo box.
- bounds - Variable in class dev.roanh.convexmerger.ui.TextField
-
Text field bounds.
- bounds - Variable in class dev.roanh.convexmerger.util.KDTree
-
The axis aligned bounding rectangle defining the
bounds of this kd-tree cell.
- BOX_HEADER_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Height of a box title header.
- BOX_INSETS - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Inset into a drawn box and also the corner triangle size.
- BOX_SECONDARY_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Box text color for bullet points and such.
- BOX_SPACING - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Space between the boxes.
- BOX_TEXT_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Box header color.
- BOX_TEXT_OFFSET - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Text offset from the side of a box.
- boxSize - Static variable in class dev.roanh.convexmerger.ui.JoinMenu
-
Height of the details box.
- broadCast(Player, Packet) - Method in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Broadcasts a packet to all connected players
except for the given source player.
- broadCast(Packet) - Method in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Broadcasts a packet to all connected players.
- BUTTON_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.GamePanel
-
Dialog yes/no button height.
- BUTTON_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.MainMenu
-
Height of the buttons.
- BUTTON_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Height of the individual buttons.
- BUTTON_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Height of the buttons in the bottom left and right.
- BUTTON_HOVER_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Button on hover background color.
- BUTTON_INSET - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Border inset from the outside of the button.
- BUTTON_SELECT - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Button select color for the new game screen.
- BUTTON_STROKE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Stroke for the new game double lighten borders.
- BUTTON_TEXT_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Button text color.
- BUTTON_WIDTH - Static variable in class dev.roanh.convexmerger.ui.MainMenu
-
Width of the buttons.
- BUTTON_WIDTH - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Width of the individual buttons.
- BUTTON_WIDTH - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Width of the buttons in the bottom left and right.
- ButtonAssembly(int, String, String...) - Constructor for class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Constructs a new button assembly with the given initially
selected button, assembly title and button values.
- CalliperAnimation - Class in dev.roanh.convexmerger.animation
-
Animation to visualise the callipers used
when merging two convex objects.
- CalliperAnimation(ConvexObject, ConvexObject) - Constructor for class dev.roanh.convexmerger.animation.CalliperAnimation
-
Constructs a new calliper animation for the given objects.
- canClaim() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Checks if this objects is unowned and
thus claimable by any player.
- canStart() - Method in class dev.roanh.convexmerger.ui.HostMenu
-
- canStart() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
Checks if enough players are configured to start (at least 1).
- CELL_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.ComboBox
-
Height of the combo box field and drop down item fields.
- center - Variable in class dev.roanh.convexmerger.ui.TextField
-
True if text in this text field is centred.
- changeListener - Variable in class dev.roanh.convexmerger.ui.TextField
-
Listener called when the text field text changes.
- checkCollinear(int, int, int, int, int, int) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Function to check if 3 points are collinear.
- checkCollinear(Point2D, Point2D, Point2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Function to check if 3 points are collinear.
- checkCollinear(double, double, double, double, double, double) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Function to check if 3 points are collinear.
- checkInvariants(List<Point2D>) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Checks if the convex object represented by the given set
of points conforms to all the general invariants assumed
by most algorithms in this class.
- CHEVRON_ICON - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Chevron icon used for the combo box.
- CHEVRON_ICON_SIZE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Size of the chevron icon.
- claim(Player, ConvexObject) - Method in interface dev.roanh.convexmerger.game.GameStateListener
-
Called when a player claims a new object.
- claim(Player, ConvexObject) - Method in class dev.roanh.convexmerger.net.ClientConnection
-
- claim(Player, ConvexObject) - Method in class dev.roanh.convexmerger.net.InternalServer
-
- claim(Player, ConvexObject) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- claim(Player, ConvexObject) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
- ClaimAnimation - Class in dev.roanh.convexmerger.animation
-
Animation shown when claiming a single object.
- ClaimAnimation(ConvexObject, Point2D) - Constructor for class dev.roanh.convexmerger.animation.ClaimAnimation
-
Constructs a new claim animation for the given object.
- claimNewObject() - Method in class dev.roanh.convexmerger.player.LocalPlayer
-
Selects a new object to claim and start maximising area from.
- claimNewObject() - Method in class dev.roanh.convexmerger.player.SmallPlayer
-
- claimObject(ConvexObject) - Method in class dev.roanh.convexmerger.game.GameState
-
Attempts to claim the given convex object for the active player.
- claimObject(ConvexObject, Point2D) - Method in class dev.roanh.convexmerger.game.GameState
-
Attempts to claim the given convex object for the active player.
- ClaimResult - Class in dev.roanh.convexmerger.game
-
Object returned to describe the outcome of an attempted claim.
- ClaimResult() - Constructor for class dev.roanh.convexmerger.game.ClaimResult
-
Prevent direct instantiation.
- ClaimResult(MessageDialog) - Constructor for class dev.roanh.convexmerger.game.ClaimResult
-
Constructs a new claim result with the
given feedback message.
- ClaimResult(ConvexObject) - Constructor for class dev.roanh.convexmerger.game.ClaimResult
-
Constructs a new claim result with the
given claim result.
- claims - Variable in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Number of objects directly claimed by this player.
- clamp(double, double, double) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Clamps the given value to be between the given bounds.
- clearSelection() - Method in class dev.roanh.convexmerger.game.GameState
-
Clears the object selection for the active player,
meaning they are no longer selecting a second object for a merge.
- clickPoint - Variable in class dev.roanh.convexmerger.player.HumanPlayer
-
The point clicked to claim the next object to claim.
- ClientConnection - Class in dev.roanh.convexmerger.net
-
Represents a client connection to a remote game server.
- ClientConnection(Socket, Player) - Constructor for class dev.roanh.convexmerger.net.ClientConnection
-
Constructs a new client connection from the given socket
connection and with the given local player.
- clipAdd(Path2D, Point2D, Point2D, Point2D, Point2D, Point2D, Point2D, Point2D, Point2D) - Method in class dev.roanh.convexmerger.animation.MergeAnimation
-
Adds the given slope to the given point and then adds the
resulting point to the given path.
- clipLine(ConjugationTree<?>, Line2D, Point2D) - Static method in class dev.roanh.convexmerger.util.ConjugationTree
-
Clips the given line segment to be fully contained within the bounds
of the given conjugation tree node.
- close() - Method in class dev.roanh.convexmerger.net.Connection
-
Closes this connection.
- close() - Method in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Closes all connections held by this server thread.
- color - Variable in class dev.roanh.convexmerger.ui.ComboBox
-
Combo box accent color.
- color - Variable in class dev.roanh.convexmerger.ui.TextField
-
The accent color for this text field.
- ComboBox<T> - Class in dev.roanh.convexmerger.ui
-
Represents a UI combo box.
- ComboBox(T[], Function<T, String>, Color) - Constructor for class dev.roanh.convexmerger.ui.ComboBox
-
Constructs a new combo box with the given values, to string
function and accent color.
- computeArea(List<Point2D>) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the area of the given convex object.
- computeBarStart(int, int, int) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Computes the horizontal offset the left edge of the bar
for the player with the given index is at.
- computeBox(double, double, double, double, double) - Method in class dev.roanh.convexmerger.ui.Screen
-
Computes the bounds of a box if draw according to the given parameters.
- computeCentroid(List<Point2D>) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the centroid of the given convex object.
- computeConjugate(List<Point2D>, List<Point2D>, ConjugationTree<?>) - Static method in class dev.roanh.convexmerger.util.ConjugationTree
-
Computes a conjugate line for the given point sets and with
the given parent conjugation tree node.
- computeConvexHull(List<Point2D>) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the convex hull of the given point set
using the gift wrapping algorithm.
- computeDecompLines() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Computes and sets the decomposition lines related to this trapezoid.
- computeDepth(VerticalDecomposition.DecompVertex) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Computes the longest path from the given search structure vertex to
the vertex associated with this trapezoid.
- computeFlowPath(List<Point2D>, Point2D, Point2D, Point2D, Point2D, float) - Method in class dev.roanh.convexmerger.animation.MergeAnimation
-
Computes the flow path showing the merge progress, this
path slowly moves to fill the entire merge area (the
quadrilateral defined by the merge lines).
- computeMergeBounds(List<Point2D>, List<Point2D>) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Splits the given convex objects into segments that are
either on the outside or on the inside of the convex
object that is created when merging them.
- computeMergeBounds(List<Point2D>, List<Point2D>, Point2D[]) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Splits the given convex objects into segments that are
either on the outside or on the inside of the convex
object that is created when merging them.
- computeMergeBounds(List<Point2D>, Point2D, Point2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Splits the given hull into two parts, one part
that is contained between the two points going
from a
to b
and one
part that is contained between the two points
going from b
to a
.
- computeMergeLines(List<Point2D>, List<Point2D>, List<Point2D>) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the two lines that would be required to
combine the two given convex hulls into a single
convex hull using the convex hull of both objects.
- computeMergeLines(List<Point2D>, List<Point2D>, boolean) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the two lines that would be required to
combine the two given convex hulls into a single
convex hull in linear time.
- computeSinglePointMergeLines(List<Point2D>, Point2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the two lines that would be required to extend the
given convex hull with the given point.
- computeSlope(Point2D, Point2D, float) - Method in class dev.roanh.convexmerger.animation.MergeAnimation
-
Computes the 'slope' that needs to be added
to the given source point to get to the given
fraction in the direction of the given target.
- con - Variable in class dev.roanh.convexmerger.player.RemotePlayer
-
The remote player connection.
- con - Variable in class dev.roanh.convexmerger.ui.JoinMenu
-
Server connection.
- conjugate - Variable in class dev.roanh.convexmerger.util.ConjugationTree.ConjugateData
-
The conjugate line.
- ConjugateData(Point2D, Point2D, Line2D) - Constructor for class dev.roanh.convexmerger.util.ConjugationTree.ConjugateData
-
Constructs a new conjugate line data object.
- ConjugationTree<T> - Class in dev.roanh.convexmerger.util
-
Implementation of a conjugation tree inspired by the
description in a paper by Herbert Edelsbrunner and Emo Welzl.
- ConjugationTree(List<Point2D>) - Constructor for class dev.roanh.convexmerger.util.ConjugationTree
-
Constructs a new conjugation tree storing the given point set.
- ConjugationTree(ConjugationTree<T>, List<Point2D>, Point2D, Line2D, List<Point2D>) - Constructor for class dev.roanh.convexmerger.util.ConjugationTree
-
Constructs a new child conjugation tree node with the given parent node,
point set, conjugate bisector line and convex hull.
- ConjugationTree.ConjugateData - Class in dev.roanh.convexmerger.util
-
Class holding data about a single conjugate line.
- connect(String, Player) - Static method in class dev.roanh.convexmerger.net.ClientConnection
-
Attempts to establish a new multiplayer connection
to the given host and with the given local player.
- connect - Variable in class dev.roanh.convexmerger.ui.JoinMenu
-
Connect button bounds.
- connect() - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
Attempts to establish a connection to the server.
- CONNECT_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.JoinMenu
-
Height of the connect button.
- connecting - Variable in class dev.roanh.convexmerger.ui.JoinMenu
-
True is currently attempting to establish a connection.
- Connection - Class in dev.roanh.convexmerger.net
-
Base connection class for a server client connection.
- Connection(Socket) - Constructor for class dev.roanh.convexmerger.net.Connection
-
Constructs a new connection from the given socket.
- connections - Variable in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Map of active connections indexed by player ID.
- Constants - Class in dev.roanh.convexmerger
-
Class containing various game constants.
- Constants() - Constructor for class dev.roanh.convexmerger.Constants
-
- constructBorderGradient(GameState, int) - Static method in class dev.roanh.convexmerger.ui.Theme
-
Constructs a linear rainbow gradient whose colours depend on
the number of players in the given game state.
- constructShape() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Constructs the shape object for the bounds of this object.
- constructShape() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
Constructs the shape object for the bounds of this object.
- contained - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
A list of objects contained within the merge area.
- contains(double, double) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Checks if the given point is contained in this
convex object.
- contains(ConvexObject) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Checks if the given convex object is fully
contained within this convex object.
- CONTENT_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Height of the panel content.
- CONTENT_WIDTH - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Width of the panel content.
- context - Variable in class dev.roanh.convexmerger.ui.Screen
-
The active game context.
- ConvexMerger - Class in dev.roanh.convexmerger.ui
-
Main game entry point, manages the main state of the game.
- ConvexMerger() - Constructor for class dev.roanh.convexmerger.ui.ConvexMerger
-
- ConvexMerger.GameThread - Class in dev.roanh.convexmerger.ui
-
Thread responsible for managing the game turns,
generating the playfield and executing AI moves.
- ConvexObject - Class in dev.roanh.convexmerger.game
-
Defines a convex object shown in the game
the points on the boundary of the object
are given in counter clockwise order.
- ConvexObject(int, int, int, int, int, int, int, int) - Constructor for class dev.roanh.convexmerger.game.ConvexObject
-
Constructs a new convex object defined by the given four points.
- ConvexObject(double, double, double, double, double, double, double, double) - Constructor for class dev.roanh.convexmerger.game.ConvexObject
-
Constructs a new convex object defined by the given four points.
- ConvexObject(int, int, int, int, int, int) - Constructor for class dev.roanh.convexmerger.game.ConvexObject
-
Constructs a new convex object defined by the given three points.
- ConvexObject(List<Point2D>) - Constructor for class dev.roanh.convexmerger.game.ConvexObject
-
Constructs a new convex object defined by the given list of points.
- ConvexUtil - Class in dev.roanh.convexmerger.util
-
Class containing various utilities related
to convex objects and hulls.
- ConvexUtil() - Constructor for class dev.roanh.convexmerger.util.ConvexUtil
-
- coverage - Variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Desired playfield coverage.
- COVERAGE_VALUES - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Raw coverage values associated with the density buttons.
- coverageNum - Variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Coverage value in range 0-255.
- create() - Method in interface dev.roanh.convexmerger.game.GameConstructor
-
Constructs the game state for the configured game.
- createInstance() - Method in enum dev.roanh.convexmerger.player.AIRegistry
-
Creates a new instance of this AI.
- createPath(List<T>) - Method in class dev.roanh.convexmerger.animation.MergeAnimation
-
Creates a path from the given list of points.
- credits - Static variable in class dev.roanh.convexmerger.ui.InfoMenu
-
Entries in the credits box.
- CREDITS_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.InfoMenu
-
Height of the credits box.
- CROWN_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Leading crown icon color.
- CROWN_GAP - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Gap between the crown and the winning player name.
- CROWN_ICON - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Smaller crown image with size
18.
- CROWN_ICON_LARGE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Larger crown image with size
24.
- CROWN_ICON_LARGE_SIZE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Dimensions of the large crown image.
- CROWN_ICON_SIZE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Dimensions of the crown image.
- ctor - Variable in enum dev.roanh.convexmerger.player.AIRegistry
-
The construct for this AI.
- ctor - Variable in class dev.roanh.convexmerger.ui.ConvexMerger.GameThread
-
The constructor to use to create the game state.
- ctor - Variable in class dev.roanh.convexmerger.util.SegmentPartitionTree.SegmentPartitionTreeConstructor
-
The partition tree constructor.
- currentBox - Variable in class dev.roanh.convexmerger.ui.InfoMenu
-
Bounds of the current version link.
- failReason - Variable in class dev.roanh.convexmerger.net.ClientConnection
-
The reason a server connection could not be established (if any).
- fallback() - Method in class dev.roanh.convexmerger.player.RemotePlayer
-
Executes a fallback AI move if the player connection was lost.
- fieldHeight - Static variable in class dev.roanh.convexmerger.ui.JoinMenu
-
Height of the text fields.
- fieldWidth - Static variable in class dev.roanh.convexmerger.ui.JoinMenu
-
Width of the text fields.
- fillText(Graphics2D, int, int, int, int, List<String>) - Method in class dev.roanh.convexmerger.ui.Screen
-
Fills the given area with the given text.
- findBestMergeFrom(ConvexObject) - Method in class dev.roanh.convexmerger.player.Player
-
Finds the best possible merge (largest relative area gain)
from the given object for this player.
- findClosest(int[], int) - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
Finds the index of the element in the array
closest to the given value.
- findIntersectedTrapezoids(Line2D, ConvexObject) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Computes a list of trapezoids intersected by a line segment, excluding the leftmost and rightmost intersected trapezoids.
- findLargestUnownedObject() - Method in class dev.roanh.convexmerger.player.Player
-
Finds the largest unowned object left in the
current game state.
- findLargestUnownedObject(Comparator<Double>) - Method in class dev.roanh.convexmerger.player.Player
-
Finds the largest unowned object left in the
current game state according to the given comparator.
- findUnusedSegment(List<Point2D>, List<Point2D>, Set<Segment>, Segment) - Static method in class dev.roanh.convexmerger.util.ConjugationTree
-
Searches for lines that are not marked as used and similar to the segment
between the median points of two sorted point lists.
- finishBotTrapezoid(VerticalDecomposition.Trapezoid, VerticalDecomposition.Line, VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Finishes a trapezoid that has just received one of the given parent trapezoid's right points below the given segment,
and assigns neighbourhoods between itself and the current trapezoid's neighbours.
- finished - Variable in class dev.roanh.convexmerger.animation.Animation
-
When true indicates that the animation has no frames remaining.
- finishTopTrapezoid(VerticalDecomposition.Trapezoid, VerticalDecomposition.Line, VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Finishes a trapezoid that has just received one of the given parent trapezoid's right points above the given segment,
and assigns neighbourhoods between itself and the current trapezoid's neighbours.
- first - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
The first object in the merge.
- first - Static variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
Leftmost object.
- first - Variable in class dev.roanh.convexmerger.player.Player.MergeOption
-
The source object in the merge.
- firstAngle - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
The angle of the first merge line.
- firstCopy - Static variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
Copy of the leftmost object that is always owned by the first player.
- firstInner - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
Path for the inner (internal after the merge)
hull segment of the first (leftmost) object
- firstInnerData - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
Points defining the inner hull segment of the first object.
- firstLine - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
The first merge line.
- firstOuter - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
Path for the outer (not internal after the merge)
hull segment of the first (leftmost) object
- FLOW_DURATION - Static variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
Number of milliseconds the body merge drawing
phase lasts for.
- focus - Variable in class dev.roanh.convexmerger.ui.ComboBox
-
Whether this combo box currently has focus.
- focus - Variable in class dev.roanh.convexmerger.ui.TextField
-
Whether this text field has focus.
- focusListener - Variable in class dev.roanh.convexmerger.ui.TextField
-
Listener called when this text field loses focus.
- foreground - Variable in class dev.roanh.convexmerger.ui.TextField
-
The foreground (text) colour.
- formatScore(double) - Static method in class dev.roanh.convexmerger.ui.Theme
-
Formats the given area by rounding to an integer and
adding dots to separate digits into groups of three.
- formatTime(long) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Formats the given time in milliseconds to something
human readable with seconds as the smallest unit and
milliseconds as the precision.
- frame - Variable in class dev.roanh.convexmerger.ui.ConvexMerger
-
Application main frame.
- freeNeighbours() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Removes this trapezoid from the neighbour lists
of all neighbours and clears the neighbour list
of this trapezoid.
- fromLines(List<Line2D>) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree.SegmentPartitionTreeConstructor
-
Constructs a new segment partition tree from the line segments in the
given set.
- fromObjects(List<ConvexObject>) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree.SegmentPartitionTreeConstructor
-
Constructs a new segment partition tree from the line segments making up
the given set of convex objects.
- fromPoints(List<Point2D>) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree.SegmentPartitionTreeConstructor
-
Constructs a new empty segment partition tree with the given set
of points for the underlying partition tree.
- game - Variable in class dev.roanh.convexmerger.player.HumanPlayer
-
The panel visualising the game this player is playing in.
- game - Variable in class dev.roanh.convexmerger.ui.InfoMenu
-
The state for the current game.
- GameConstructor - Interface in dev.roanh.convexmerger.game
-
A simple interface used to execute the longer
calculations required to start a game on the
main game thread.
- gameEnd - Variable in class dev.roanh.convexmerger.game.GameState
-
Millisecond time the game ended or -1.
- GamePanel - Class in dev.roanh.convexmerger.ui
-
Main panel responsible for rendering the current game state.
- GamePanel(ConvexMerger, GameState) - Constructor for class dev.roanh.convexmerger.ui.GamePanel
-
Constructs a new game panel with the given game context.
- gameStart - Variable in class dev.roanh.convexmerger.game.GameState
-
Millisecond time the game started or -1 if the game has not started.
- GameState - Class in dev.roanh.convexmerger.game
-
Class managing the main game state, data,
players and general control flow.
- GameState(PlayfieldGenerator, List<Player>) - Constructor for class dev.roanh.convexmerger.game.GameState
-
Constructs a new game state with the given playfield generator and
list of participating players.
- GameState(List<ConvexObject>, String, List<Player>) - Constructor for class dev.roanh.convexmerger.game.GameState
-
Constructs a new game state with the given playfield objects, seed and
list of participating players.
- GameStateListener - Interface in dev.roanh.convexmerger.game
-
Interface that receives game state updates.
- gameThread - Variable in class dev.roanh.convexmerger.ui.ConvexMerger
-
The thread running the active game (if any).
- GameThread(GameConstructor) - Constructor for class dev.roanh.convexmerger.ui.ConvexMerger.GameThread
-
Constructs a new game thread with the given game constructor.
- GAP - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Gap between main result screen components (title, bars, stats, graph).
- gen - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
The playfield generator being configured.
- generatePlayfield() - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Generates a new game playfield with convex objects made up of 3 to 4 points.
- get(int) - Static method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the player theme for the player with the given ID.
- getAbsorbed() - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Gets the total number of unrelated objects absorbed by merges.
- getActivePlayer() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the active players whose turn it is currently.
- getAnimation() - Method in class dev.roanh.convexmerger.animation.RenderableObject
-
Gets the animation for this object.
- getArea() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Computes the area of this convex object.
- getArea() - Method in class dev.roanh.convexmerger.player.Player
-
Gets the total area claimed by this player.
- getArea() - Method in class dev.roanh.convexmerger.ui.ResultOverlay.AveragePlayer
-
- getAverageTurnTime() - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Gets the average number of milliseconds per turn for this player.
- getBarBody() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the bar chart body color for this theme.
- getBarOutline() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the bar chart outline color for this theme.
- getBaseOutline() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the base outline color for this theme.
- getBisector() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
Gets the bisector line for this tree node.
- getBody() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the object body color for this theme.
- getBounds() - Method in class dev.roanh.convexmerger.util.KDTree
-
Gets the bounding rectangle of this kd-tree node.
- getBounds2D() - Method in class dev.roanh.convexmerger.util.Segment
-
- getButtonMessage() - Method in class dev.roanh.convexmerger.ui.HostMenu
-
- getButtonMessage() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
Gets the status message to display on the start button.
- getCentroid() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Computes the centroid of this convex object.
- getCentroid() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
Gets the centroid of this conjugation tree node.
- getCentroid() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Returns the centroid of the trapezoid.
- getChildren() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
- getChildren() - Method in class dev.roanh.convexmerger.util.KDTree
-
- getChildren() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Gets the child nodes of this tree node.
- getClaims() - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Gets the total number of objects claimed by this player.
- getContext() - Method in class dev.roanh.convexmerger.ui.Screen
-
Gets the game context this screen is associated with.
- getCoverage() - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Gets the coverage number for this generator.
- getData() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Gets the data stored at this tree node.
- getDecompLines() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Gets a list of lines that represent the vertical
decomposition lines.
- getDecompLines() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Gets the vertical lines of this trapezoid.
- getDecompVertex() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Gets the decomposition vertex that this trapezoid is linked to.
- getDepth() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Gets the depth of this cell in the partition tree.
- getDepth() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Computes the maximum depth of this trapezoid in the search structure.
- getEndPoints() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Returns the points of the trapezoid in counterclockwise order.
- getFirstIntersectedTrapezoid(Line2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Gets the first trapezoid to the right that is run through by a given segment.
- getGameState() - Method in class dev.roanh.convexmerger.net.ClientConnection
-
Gets the gamestate for the remote game.
- getGameTime() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the total number of milliseconds this game took
or is taking up to this point in time.
- getHeight(Graphics2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Gets the height of this button assembly.
- getHeight() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Gets the height of the partition tree this
cell is a part of.
- getHeight() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Computes the height of the vertical decomposition as the
length of the longest path to any trapezoid in the search structure.
- getHelperLines(Point2D) - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the helper lines to be drawn from the currently
selected first object to the given point.
- getHighNode() - Method in class dev.roanh.convexmerger.util.KDTree
-
Gets the child node containing the high value
points stored in the children of this node.
- getIconAI() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the AI icon for this theme.
- getIconHuman() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the human icon for this theme.
- getID() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
- getID() - Method in interface dev.roanh.convexmerger.game.Identity
-
Gets the ID of this entity.
- getID() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerJoinAccept
-
Gets the ID assigned to the joining player.
- getID() - Method in class dev.roanh.convexmerger.net.PlayerProxy
-
Gets the ID of the player.
- getID() - Method in class dev.roanh.convexmerger.player.Player
-
- getIncrease() - Method in class dev.roanh.convexmerger.player.Player.MergeOption
-
Gets the relative area gain for this merge.
- getIntersectedTrapezoidToTheLeft(Line2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
Gets the trapezoid to the left that contains the given segment.
- getIntersectedTrapezoidToTheRight(Line2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
Gets the trapezoid to the right that contains the given segment.
- getLastLine() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Gets the last line segment added into the vertical decomposition.
- getLeftButtonText() - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- getLeftButtonText() - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
- getLeftButtonText() - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- getLeftButtonText() - Method in class dev.roanh.convexmerger.ui.MainMenu
-
- getLeftButtonText() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- getLeftButtonText() - Method in class dev.roanh.convexmerger.ui.Screen
-
Gets the text for the bottom left button.
- getLeftChild() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
Gets the left child node of this tree node (CCW -1).
- getLeftChild() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Gets the left child of the vertex.
- getLeftDecompLine() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Gets the left vertical line of this trapezoid.
- getLeftmostTrapAbove() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Gets the leftmost trapezoid that is above this line.
- getLeftmostTrapBelow() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Gets the leftmost trapezoid that is below this line.
- getLines() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Gets all lines that were ever added to the vertical decomposition.
- getLowNode() - Method in class dev.roanh.convexmerger.util.KDTree
-
Gets the child node containing the low value
points stored in the children of this node.
- getMaxWidth(int, double, int) - Static method in class dev.roanh.convexmerger.ui.Screen
-
Computes how wide the content should be given a screen
width, width usage ratio and maximum width.
- getMenuTitle() - Method in class dev.roanh.convexmerger.ui.HostMenu
-
- getMenuTitle() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
Gets the title of this menu.
- getMerges() - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Gets the total number of merges performed by this player.
- getMessage() - Method in class dev.roanh.convexmerger.game.ClaimResult
-
Gets the feedback message for this result.
- getMessage() - Method in enum dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject.RejectReason
-
Gets the help text message for this reject reason.
- getMessage() - Method in enum dev.roanh.convexmerger.ui.MessageDialog
-
Gets the feedback message for this dialog.
- getName() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerJoin
-
Gets the name of the player that wants to join.
- getName() - Method in class dev.roanh.convexmerger.net.PlayerProxy
-
Gets the name of the player.
- getName() - Method in enum dev.roanh.convexmerger.player.AIRegistry
-
Gets the name of this AI.
- getName() - Method in class dev.roanh.convexmerger.player.Player
-
Gets the name of this player.
- getNeighbours() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Getter for the neighbours of the trapezoid.
- getObject(Point2D) - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the object located at the given coordinates.
- getObject(double, double) - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the object located at the given coordinates.
- getObject() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Returns the convex object that contains this trapezoid.
- getObjectOfSegment(VerticalDecomposition.Line) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Gets the object that the segment points to.
- getObjects() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets all the objects in this game.
- getObjects() - Method in class dev.roanh.convexmerger.net.packet.PacketGameInit
-
Gets the objects for this game.
- getOrCreatePoint(Point2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Gets the decomposition point at the given point or adds a new point if it doesn't exist and returns it.
- getOriginalSegment() - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree.LineSegment
-
Gets the original line segment this line
segment was derived from.
- getOutline() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the object outline color for this theme.
- getOwner() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Gets the player that owns this object.
- getP1() - Method in class dev.roanh.convexmerger.util.Segment
-
- getP2() - Method in class dev.roanh.convexmerger.util.Segment
-
- getParent() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
- getParent() - Method in class dev.roanh.convexmerger.util.KDTree
-
- getParent() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Gets the parent tree node of this node.
- getPlayer() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Gets the player that made this move.
- getPlayer() - Method in class dev.roanh.convexmerger.ui.HostMenu.HostPanel
-
- getPlayer() - Method in class dev.roanh.convexmerger.ui.HostMenu.RemotePanel
-
- getPlayer() - Method in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Gets the configured player for this panel if it exists.
- getPlayerBody(ConvexObject) - Static method in class dev.roanh.convexmerger.ui.Theme
-
Gets the color to use to draw the body for the given convex object.
- getPlayerCount() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the total number of players in this game.
- getPlayerOutline(ConvexObject) - Static method in class dev.roanh.convexmerger.ui.Theme
-
Gets the color to use to draw the outline for the given convex object.
- getPlayers() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets a list of all the players in this game.
- getPlayers() - Method in class dev.roanh.convexmerger.net.packet.PacketGameInit
-
Gets the players for this game.
- getPoint() - Method in class dev.roanh.convexmerger.util.KDTree
-
Gets the point defining the line dividing this kd-tree
node into two child nodes.
- getPoint() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
Gets the point of this structure.
- getPoint() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Gets the point that the vertex points to.
- getPoint(Point2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Gets a decomposition point for a given query point.
- getPoints() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Gets the points that define this convex object.
- getPoints() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
Gets all the points located on the bisector for this tree cell.
- getProxy() - Method in class dev.roanh.convexmerger.player.Player
-
Gets a proxy for this player.
- getRangeMax() - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Gets the minimum size range for this generator.
- getRangeMin() - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Gets the maximum size range for this generator.
- getReason() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject
-
Gets the reason the player was not allowed to join.
- getRegisteryType() - Method in interface dev.roanh.convexmerger.net.packet.Packet
-
The registry type of this packet.
- getRegisteryType() - Method in class dev.roanh.convexmerger.net.packet.PacketGameEnd
-
- getRegisteryType() - Method in class dev.roanh.convexmerger.net.packet.PacketGameInit
-
- getRegisteryType() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerJoin
-
- getRegisteryType() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerJoinAccept
-
- getRegisteryType() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject
-
- getRegisteryType() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
- getRejectReason() - Method in class dev.roanh.convexmerger.net.ClientConnection
-
Gets the reason why the connection to the server failed (if any).
- getResult() - Method in class dev.roanh.convexmerger.game.ClaimResult
-
Gets the game state result for this claim result.
- getRightButtonText() - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- getRightButtonText() - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
- getRightButtonText() - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- getRightButtonText() - Method in class dev.roanh.convexmerger.ui.MainMenu
-
- getRightButtonText() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- getRightButtonText() - Method in class dev.roanh.convexmerger.ui.Screen
-
Gets the text for the bottom right button.
- getRightChild() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
Gets the right child node of this tree node (CCW 1).
- getRightChild() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Gets the right child of the vertex.
- getRightDecompLine() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Gets the right vertical line of this trapezoid.
- getRightmostTrapAbove() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Gets the rightmost trapezoid that is above this line.
- getRightmostTrapBelow() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Gets the rightmost trapezoid that is below this line.
- getRounds() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the number of rounds in this game.
- getScaling() - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Gets the scaling number for this generator.
- getScoreAnimation() - Method in class dev.roanh.convexmerger.player.Player
-
Getst the animation rendering the score for this player.
- getScoreHistory() - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Gets the score per turn for this player.
- getSeed() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the seed of the playfield generator that
was used to generate this game.
- getSeed() - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Gets the seed that describes this random generator.
- getSeed() - Method in class dev.roanh.convexmerger.net.packet.PacketGameInit
-
Gets the game seed.
- getSegment() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Gets the segment that the vertex points to.
- getSegments() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
Gets the list of segments that this point is part of.
- getSegmentTreeConj() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the conjugation tree based segment intersection tree for this game state.
- getSegmentTreeKD() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the kd-tree based segment intersection tree for this game state.
- getSelectedIndex(Point2D) - Method in class dev.roanh.convexmerger.ui.ComboBox
-
Computes the drop down list selected index given
the list bounds.
- getSelectedObject() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the (first) object selected by the player.
- getSelectedPath() - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Gets the bounds of the selected button.
- getSelf() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
- getSelf() - Method in class dev.roanh.convexmerger.util.KDTree
-
- getSelf() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Gets 'this' partition tree.
- getShape() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Gets a closed path representing the shape of
this convex object.
- getShape() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
- getShape() - Method in class dev.roanh.convexmerger.util.KDTree
-
- getShape() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Gets the shape defining the boundary of this tree cell.
- getSmallIconAI() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the small AI icon for this theme.
- getSmallIconHuman() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the small human icon for this theme.
- getSource() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Gets the ID of the source object in this move.
- getStats() - Method in class dev.roanh.convexmerger.player.Player
-
Gets the game stats for this player.
- getTarget() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Gets the ID of the target object in this move.
- getText() - Method in class dev.roanh.convexmerger.ui.TextField
-
Gets the text in this text field.
- getTextColor() - Method in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Gets the text color for this theme.
- getTheme() - Method in class dev.roanh.convexmerger.player.Player
-
Gets the color theme for this player.
- getTitle() - Method in enum dev.roanh.convexmerger.ui.MessageDialog
-
Gets the title for this dialog.
- getTrapezoid() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Gets the trapezoid that the vertex points to.
- getTrapezoids() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Gets all the trapezoids that make up the vertical decomposition.
- getTrapsAbove() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Retrieves the list of trapezoids above this line.
- getTrapsBelow() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Retrieves the list of trapezoids below this line.
- getTurns() - Method in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Gets the total number of turns for this player.
- getType() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Gets the type of move that was made by the player.
- getValue() - Method in class dev.roanh.convexmerger.ui.ComboBox
-
Gets the value selected in this combo box.
- getVersion() - Method in class dev.roanh.convexmerger.net.packet.PacketPlayerJoin
-
Gets the version of the game the player that wants to
join is currently running.
- getVerticalDecomposition() - Method in class dev.roanh.convexmerger.game.GameState
-
Gets the vertical decomposition for the game state.
- getWidth() - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Gets the width of this button assembly.
- getX() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
- getX1() - Method in class dev.roanh.convexmerger.util.Segment
-
- getX2() - Method in class dev.roanh.convexmerger.util.Segment
-
- getXLeft() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Getter for the X coordinate of the left wall of the trapezoid.
- getXRight() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Getter for the X coordinate of the right wall of the trapezoid.
- getY() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
- getY1() - Method in class dev.roanh.convexmerger.util.Segment
-
- getY2() - Method in class dev.roanh.convexmerger.util.Segment
-
- githubBox - Variable in class dev.roanh.convexmerger.ui.InfoMenu
-
Bounds of the GitHub link.
- giveFocus() - Method in class dev.roanh.convexmerger.ui.TextField
-
Gives focus to this text field.
- gradient - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Player theme gradient color.
- GRAPH_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Height of the graph.
- GRAPH_MARK_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Result screen graph marker text color.
- GRAPH_MARK_STROKE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Stroke used for the graph marker lines.
- GRAPH_MARKER_INTERVAL - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Score interval at which score markers are placed in the graph.
- GRAPH_MARKER_OFFSET - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
The minimum score a player score has to be past a marker for a
new top marker to be generated.
- GRAPH_STROKE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Stroke used for the graph player data lines.
- GreedyPlayer - Class in dev.roanh.convexmerger.player
-
Simple AI that follows the greedy
strategy of maximising relative
area gain in every turn.
- GreedyPlayer() - Constructor for class dev.roanh.convexmerger.player.GreedyPlayer
-
Constructs a new greedy player (Isla).
- GreedyPlayer(boolean, boolean, String) - Constructor for class dev.roanh.convexmerger.player.GreedyPlayer
-
Constructs a new greedy player with the given parameters.
- handleClaim(ConvexObject, Point2D) - Method in class dev.roanh.convexmerger.player.HumanPlayer
-
Handles a new object to try to claim for this player.
- handleClient(Socket) - Method in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Handles an incoming client connection.
- handleException(Exception) - Method in interface dev.roanh.convexmerger.net.InternalServer.InternalServerListener
-
Called when the server encountered a fatal exception
while accepting incoming player connections.
- handleException(Exception) - Method in class dev.roanh.convexmerger.ui.HostMenu
-
- handleFirstTrapezoid(VerticalDecomposition.Trapezoid, Point2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Handles the special case of the current trapezoid being the first
of the many intersected by the inserted segment.
- handleKeyEvent(KeyEvent) - Method in class dev.roanh.convexmerger.ui.TextField
-
Handles a key event on this text field.
- handleKeyPressed(KeyEvent) - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- handleKeyPressed(KeyEvent) - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- handleKeyPressed(KeyEvent) - Method in class dev.roanh.convexmerger.ui.Screen
-
Handles a key press event.
- handleKeyReleased(KeyEvent) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- handleKeyReleased(KeyEvent) - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- handleKeyReleased(KeyEvent) - Method in class dev.roanh.convexmerger.ui.Screen
-
Handles a key release event.
- handleLastTrapezoid(VerticalDecomposition.Trapezoid, Point2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Handles the special case of the current trapezoid being the last
of the many intersected by the inserted segment.
- handleLeftButtonClick() - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- handleLeftButtonClick() - Method in class dev.roanh.convexmerger.ui.HostMenu
-
- handleLeftButtonClick() - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
- handleLeftButtonClick() - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- handleLeftButtonClick() - Method in class dev.roanh.convexmerger.ui.MainMenu
-
- handleLeftButtonClick() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- handleLeftButtonClick() - Method in class dev.roanh.convexmerger.ui.Screen
-
Handles the bottom left button being clicked.
- handleMouseClick(Point2D) - Method in class dev.roanh.convexmerger.ui.ComboBox
-
Handles a mouse click on this combo box.
- handleMouseClick(Point2D) - Method in class dev.roanh.convexmerger.ui.HostMenu.RemotePanel
-
- handleMouseClick(Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Handles a mouse click on this button assembly.
- handleMouseClick(Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Handles a mouse click on this component.
- handleMouseClick(Point2D) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Handles a mouse click on the result screen.
- handleMouseClick(Point2D) - Method in class dev.roanh.convexmerger.ui.TextField
-
Handles a mouse event on this text field.
- handleMouseDrag(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- handleMouseDrag(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.Screen
-
Handles a mouse move on this screen.
- handleMouseMove(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- handleMouseMove(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.Screen
-
Handles a mouse move on this screen.
- handleMousePress(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- handleMousePress(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.Screen
-
Handles a mouse button press on this screen.
- handleMouseRelease(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- handleMouseRelease(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.HostMenu
-
- handleMouseRelease(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
- handleMouseRelease(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- handleMouseRelease(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.MainMenu
-
- handleMouseRelease(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- handleMouseRelease(Point2D, int, int) - Method in class dev.roanh.convexmerger.ui.Screen
-
Handles a mouse button release on this screen.
- handlePlayerJoin(Player) - Method in interface dev.roanh.convexmerger.net.InternalServer.InternalServerListener
-
Called when a new player joined the server.
- handlePlayerJoin(Player) - Method in class dev.roanh.convexmerger.ui.HostMenu
-
- handler - Variable in class dev.roanh.convexmerger.net.InternalServer
-
Listener to send server events to.
- handleRightButtonClick() - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- handleRightButtonClick() - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
- handleRightButtonClick() - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- handleRightButtonClick() - Method in class dev.roanh.convexmerger.ui.MainMenu
-
- handleRightButtonClick() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- handleRightButtonClick() - Method in class dev.roanh.convexmerger.ui.Screen
-
Handles the bottom right button being clicked.
- handleStart(List<Player>, PlayfieldGenerator) - Method in class dev.roanh.convexmerger.ui.HostMenu
-
- handleStart(List<Player>, PlayfieldGenerator) - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
Handles the start of the actual game given the
player and playfield generator configuration.
- hasAnimation() - Method in class dev.roanh.convexmerger.animation.RenderableObject
-
Checks if this convex object has an active animation.
- hasFocus() - Method in class dev.roanh.convexmerger.ui.ComboBox
-
Checks if this combo box currently has focus.
- hasFocus() - Method in class dev.roanh.convexmerger.ui.TextField
-
Checks if this text field currently has focus.
- hashCode() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
- hashCode() - Method in class dev.roanh.convexmerger.net.PlayerProxy
-
- hashCode() - Method in class dev.roanh.convexmerger.player.Player
-
- hashCode() - Method in class dev.roanh.convexmerger.util.Segment
-
- hashCode() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
- hasMergeFrom(ConvexObject) - Method in class dev.roanh.convexmerger.player.Player
-
Checks if there exists a possible valid merge from the
given object to any other object.
- hasMessage() - Method in class dev.roanh.convexmerger.game.ClaimResult
-
Checks if this result has a feedback message.
- hasPlayer() - Method in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Checks if this panel has a configured player.
- hasResult() - Method in class dev.roanh.convexmerger.game.ClaimResult
-
Checks if this claim result has a game state result.
- hasSeedMarker(long) - Static method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Checks if the given high order bits of a seed
represent a valid game seed.
- HEIGHT - Static variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
Height of the animation.
- HEIGHT - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
The height of the panels.
- HELPER_STROKE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Stroke used to draw the playfield merge helper lines.
- helperLines - Variable in class dev.roanh.convexmerger.ui.GamePanel
-
Currently showing merge helper lines.
- high - Variable in class dev.roanh.convexmerger.util.KDTree
-
The high child of this kd-tree.
- host - Variable in class dev.roanh.convexmerger.ui.JoinMenu
-
Host name input field.
- host - Variable in class dev.roanh.convexmerger.ui.MainMenu
-
Bounds of the multiplayer host button.
- HostMenu - Class in dev.roanh.convexmerger.ui
-
Menu used to host a multiplayer match.
- HostMenu(ConvexMerger) - Constructor for class dev.roanh.convexmerger.ui.HostMenu
-
Constructs a new host menu with the given game context.
- HostMenu.HostPanel - Class in dev.roanh.convexmerger.ui
-
Special player panel that cannot be removed.
- HostMenu.RemotePanel - Class in dev.roanh.convexmerger.ui
-
Special player panel that cannot be removed or edited.
- HostPanel(Theme.PlayerTheme) - Constructor for class dev.roanh.convexmerger.ui.HostMenu.HostPanel
-
Constructs a new host panel with the given theme.
- hull - Variable in class dev.roanh.convexmerger.util.ConjugationTree
-
The convex hull defining the bounds of this tree cell.
- human - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Human icon in the color for this player theme.
- HumanPlayer - Class in dev.roanh.convexmerger.player
-
Represents a player controlled by a local human.
- HumanPlayer(String) - Constructor for class dev.roanh.convexmerger.player.HumanPlayer
-
Constructs a new human player with the given name.
- humanSmall - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Small human icon in the color for this player theme.
- icon - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Current panel icon.
- ICON_TEXT_SPACING - Static variable in class dev.roanh.convexmerger.ui.GamePanel
-
Number of pixels between the player icon and the text.
- id - Variable in class dev.roanh.convexmerger.game.ConvexObject
-
The ID for this object.
- id - Variable in class dev.roanh.convexmerger.net.packet.PacketPlayerJoinAccept
-
The assigned player ID.
- id - Variable in enum dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject.RejectReason
-
Numeric ID of this reason.
- id - Variable in class dev.roanh.convexmerger.net.PlayerProxy
-
The ID of the player this proxy represents.
- id - Variable in class dev.roanh.convexmerger.player.Player
-
The ID of this player.
- Identity - Interface in dev.roanh.convexmerger.game
-
Interface for objects that can be
identified via some unique ID.
- in - Variable in class dev.roanh.convexmerger.net.Connection
-
The input stream for this connection.
- increase - Variable in class dev.roanh.convexmerger.player.Player.MergeOption
-
The relative area gain for this merge.
- indexFirst - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
Cached current index in the first object's points list.
- indexSecond - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
Cached current index in the second object's points list.
- info - Variable in class dev.roanh.convexmerger.ui.MainMenu
-
Bounds of the info button.
- InfoMenu - Class in dev.roanh.convexmerger.ui
-
Screen showing the rules, credits and version.
- InfoMenu(ConvexMerger, GameState, Screen) - Constructor for class dev.roanh.convexmerger.ui.InfoMenu
-
Constructs a new info menu with the given game context and state
and screen to return to.
- init() - Method in class dev.roanh.convexmerger.game.GameState
-
Initialises the game state running tasks that
need to run on the main game thread.
- init(long, int, int, int, int) - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Initialises the internal generator state.
- init(GameState, Theme.PlayerTheme) - Method in class dev.roanh.convexmerger.player.Player
-
Initialises this player with the given game state and theme.
- INIT_SIZE - Static variable in class dev.roanh.convexmerger.Constants
-
Initial frame size scaling factor
- initialiseGame(GameConstructor) - Method in class dev.roanh.convexmerger.ui.ConvexMerger
-
Initialises a new game with the given game constructor.
- interceptClosed(Line2D, Line2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the intersection point of the two given closed line segments.
- interceptClosed(Point2D, Point2D, Point2D, Point2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the intersection point of the two given closed line segments.
- interceptOpen(Line2D, Line2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the intersection point of the two given infinite line segments.
- interceptOpen(Point2D, Point2D, Point2D, Point2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Computes the intersection point of the two given infinite line segments.
- InternalServer - Class in dev.roanh.convexmerger.net
-
Server responsible for hosting multiplayer games.
- InternalServer(InternalServer.InternalServerListener) - Constructor for class dev.roanh.convexmerger.net.InternalServer
-
Constructs a new server with the given listener.
- InternalServer.InternalServerListener - Interface in dev.roanh.convexmerger.net
-
Interface that receives server events.
- InternalServer.ServerThread - Class in dev.roanh.convexmerger.net
-
Main thread managing all connections and initially
responsible for accepting joining players.
- interpolate(Point2D, Point2D, float) - Method in class dev.roanh.convexmerger.animation.MergeAnimation
-
Interpolates between the given two points starting
from the source and ending at the given fraction to
the target point.
- intersects(Point2D, Point2D) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Checks if this convex object intersects the line segment
defined by the given end points.
- intersects(ConvexObject) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Checks if the given convex object intersects
this convex object.
- intersects(Line2D) - Method in class dev.roanh.convexmerger.util.KDTree
-
Checks if the given line intersects this kd-tree node.
- intersects(Point2D, Point2D) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Checks if the line segment defined by the given points
intersects any of the segments stored in this tree.
- intersects(Line2D) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Checks if the line segment defined by the given points
intersects any of the segments stored in this tree.
- intersectsAny(List<SegmentPartitionTree.LineSegment>, SegmentPartitionTree.LineSegment) - Static method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Checks if the given line segment intersects any of the line segments
in the given set of line segments.
- intersectsInternal(SegmentPartitionTree.LineSegment) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Checks if the line segment defined by the given points
intersects any of the segments stored in this tree.
- intersectsLeft(Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Checks if the given point is on the left button.
- intersectsMiddle(Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Checks if the given point is on the middle button.
- intersectsRight(Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Checks if the given point is on the right button.
- intersectsSegment(Line2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Checks whether a given line segment intersects with this trapezoid.
- isAI() - Method in class dev.roanh.convexmerger.net.PlayerProxy
-
Checks if the player is an AI.
- isAI() - Method in class dev.roanh.convexmerger.player.Player
-
Checks if this player is an AI.
- isAnimated() - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Checks if this segment partition tree is animated.
- isAnimated() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Checks if the vertical decomposition is animated,
meaning it is showing individual segment updates.
- isClosed() - Method in class dev.roanh.convexmerger.net.Connection
-
Checks if this connection is closed.
- isConnected() - Method in class dev.roanh.convexmerger.net.ClientConnection
-
Checks if this client was connected to the server.
- isEnabled() - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Checks if this overlay is enabled and showing.
- isFinished() - Method in class dev.roanh.convexmerger.game.GameState
-
Checks if the game is finished.
- isLeafCell() - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
- isLeafCell() - Method in class dev.roanh.convexmerger.util.KDTree
-
- isLeafCell() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Checks if this tree node is a leaf cell.
- isLeftButtonEnabled() - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- isLeftButtonEnabled() - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
- isLeftButtonEnabled() - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- isLeftButtonEnabled() - Method in class dev.roanh.convexmerger.ui.MainMenu
-
- isLeftButtonEnabled() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- isLeftButtonEnabled() - Method in class dev.roanh.convexmerger.ui.Screen
-
Checks if the bottom left button is enabled.
- isLocal() - Method in class dev.roanh.convexmerger.player.Player
-
Checks if this player is executing locally or
acting as a remote proxy.
- isLost() - Method in class dev.roanh.convexmerger.net.PlayerProxy
-
Checks if the connection to the player was lost.
- isLost() - Method in class dev.roanh.convexmerger.player.RemotePlayer
-
Checks if the connection to the remote player was lost.
- isOwned() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Checks if this object is owned by a player.
- isOwnedBy(Player) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Tests if this convex object is owned by the given player.
- isRightButtonEnabled() - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- isRightButtonEnabled() - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
- isRightButtonEnabled() - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- isRightButtonEnabled() - Method in class dev.roanh.convexmerger.ui.MainMenu
-
- isRightButtonEnabled() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- isRightButtonEnabled() - Method in class dev.roanh.convexmerger.ui.Screen
-
Checks if the bottom right button is enabled.
- isSelectingSecond() - Method in class dev.roanh.convexmerger.game.GameState
-
True if the active player is currently selecting
a second object to merge with.
- isValidSeed(String) - Static method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Tests if the given seed is a valid game seed.
- p1 - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Configuration for player 1.
- p1 - Variable in class dev.roanh.convexmerger.util.Segment
-
First end point of the line.
- p1Clipped - Variable in class dev.roanh.convexmerger.util.SegmentPartitionTree.LineSegment
-
Whether the first end point of this line was
clipped, meaning the original line segment
continues beyond the new first end point.
- p2 - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Configuration for player 2.
- p2 - Variable in class dev.roanh.convexmerger.util.Segment
-
Second end point of the line.
- p2Clipped - Variable in class dev.roanh.convexmerger.util.SegmentPartitionTree.LineSegment
-
Whether the second end point of this line was
clipped, meaning the original line segment
continues beyond the new second end point.
- p3 - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Configuration for player 3.
- p4 - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Configuration for player 4.
- Packet - Interface in dev.roanh.convexmerger.net.packet
-
Interface for packets that get sent across the network.
- PacketGameEnd - Class in dev.roanh.convexmerger.net.packet
-
Packet sent when the game ends.
- PacketGameEnd() - Constructor for class dev.roanh.convexmerger.net.packet.PacketGameEnd
-
- PacketGameInit - Class in dev.roanh.convexmerger.net.packet
-
Packet sent when the game starts.
- PacketGameInit(List<ConvexObject>, String, List<Player>) - Constructor for class dev.roanh.convexmerger.net.packet.PacketGameInit
-
Constructs a new game init packet with the given objects and players.
- PacketPlayerJoin - Class in dev.roanh.convexmerger.net.packet
-
Packet sent when a players wants to join a game.
- PacketPlayerJoin(String, String) - Constructor for class dev.roanh.convexmerger.net.packet.PacketPlayerJoin
-
Constructs a new player join packet.
- PacketPlayerJoinAccept - Class in dev.roanh.convexmerger.net.packet
-
Packet sent when a player is accepted into a game.
- PacketPlayerJoinAccept(int) - Constructor for class dev.roanh.convexmerger.net.packet.PacketPlayerJoinAccept
-
Constructs a new join accept packet with the given
assigned ID for the joining player.
- PacketPlayerJoinReject - Class in dev.roanh.convexmerger.net.packet
-
Packet sent when a player is not accepted into a game.
- PacketPlayerJoinReject(PacketPlayerJoinReject.RejectReason) - Constructor for class dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject
-
Constructs a new join reject packet with the given reason.
- PacketPlayerJoinReject.RejectReason - Enum in dev.roanh.convexmerger.net.packet
-
Enum of join reject reasons.
- PacketPlayerMove - Class in dev.roanh.convexmerger.net.packet
-
Packet sent when a player finishes their move.
- PacketPlayerMove() - Constructor for class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Constructs a new player move no more remaining moves
being available to the player.
- PacketPlayerMove(Player, ConvexObject) - Constructor for class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Constructs a new player move packet for a claim with the given data.
- PacketPlayerMove(Player, ConvexObject, ConvexObject) - Constructor for class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Constructs a new player move packet for a merge with the given data.
- PacketPlayerMove(Player, ConvexObject, ConvexObject, PacketPlayerMove.MoveType) - Constructor for class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Constructs a new player move packet with the given data.
- PacketPlayerMove.MoveType - Enum in dev.roanh.convexmerger.net.packet
-
Player move types.
- PacketRegistry - Enum in dev.roanh.convexmerger.net.packet
-
Enum of all packet types.
- PacketRegistry() - Constructor for enum dev.roanh.convexmerger.net.packet.PacketRegistry
-
- paintComponent(Graphics) - Method in class dev.roanh.convexmerger.ui.ScreenRenderer
-
- parent - Variable in class dev.roanh.convexmerger.util.ConjugationTree
-
The parent node of this tree node.
- parent - Variable in class dev.roanh.convexmerger.util.KDTree
-
The parent kd-tree this kd-tree is a cell in.
- partitions - Variable in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
The partition tree used for store points for this segment partition tree.
- PartitionTree<T,S extends PartitionTree<T,S>> - Class in dev.roanh.convexmerger.util
-
Abstract base class for partition tree implementations.
- PartitionTree() - Constructor for class dev.roanh.convexmerger.util.PartitionTree
-
- partitionVisitor - Variable in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
A search function that can be used to traverse the used partition tree.
- pink - Static variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
First player.
- player - Variable in class dev.roanh.convexmerger.animation.ScoreAnimation
-
Player whose score to display.
- player - Variable in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
The player that made the move.
- Player - Class in dev.roanh.convexmerger.player
-
Abstract base class for player instances.
- Player(boolean, boolean, String) - Constructor for class dev.roanh.convexmerger.player.Player
-
Constructs a new player instance.
- player - Variable in class dev.roanh.convexmerger.ui.HostMenu.RemotePanel
-
The remote player associated with this panel.
- Player.MergeOption - Class in dev.roanh.convexmerger.player
-
Class describing a possible merge that a player could perform.
- Player.PlayerStats - Class in dev.roanh.convexmerger.player
-
Class holding various game related player statistics.
- PLAYER_ADD - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Player add image.
- PLAYER_ADD_HIGHLIGHT - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Player add image when highlighted.
- PLAYER_ICON_SIZE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Dimensions of the player icon.
- PLAYER_ICON_SIZE_SMALL - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Dimensions of the small player icon.
- PLAYER_TEXT_OFFSET - Static variable in class dev.roanh.convexmerger.ui.GamePanel
-
Number of pixels from the left text border to the player info.
- PlayerPanel(Theme.PlayerTheme) - Constructor for class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Constructs a new player panel with the given theme.
- PlayerProxy - Class in dev.roanh.convexmerger.net
-
Proxy representative of players across a connection.
- PlayerProxy(Player) - Constructor for class dev.roanh.convexmerger.net.PlayerProxy
-
Constructs a new player proxy from the given player.
- players - Variable in class dev.roanh.convexmerger.game.GameState
-
The players playing in this game.
- players - Variable in class dev.roanh.convexmerger.net.packet.PacketGameInit
-
The players participating in this game.
- PlayerStats() - Constructor for class dev.roanh.convexmerger.player.Player.PlayerStats
-
- PlayerTheme(int, int, int, int, int, int, int, int, int, int, int, int, int, int, int) - Constructor for enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Constructs a new player theme with the given colours.
- PlayerTheme(int, int, int, int, int, int, int, int, int, int, int, int) - Constructor for enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Constructs a new player theme with the given colours.
- PlayerTheme(int, int, int, int, int, int, int, int, int, int, int, int, Color) - Constructor for enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Constructs a new player theme with the given colours.
- PLAYFIELD_HEIGHT - Static variable in class dev.roanh.convexmerger.Constants
-
The playfield height (from 0 to 900).
- PLAYFIELD_WIDTH - Static variable in class dev.roanh.convexmerger.Constants
-
The playfield height (from 0 to 1600).
- PlayfieldGenerator - Class in dev.roanh.convexmerger.game
-
Generator to generate a playfield of randomly placed convex objects
on a rectangular plane.
- PlayfieldGenerator() - Constructor for class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Constructs a new playfield generator with a random seed,
range of 0-100, coverage of 0.2745 and scale of 0.78.
- PlayfieldGenerator(String) - Constructor for class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Constructs a new playfield generate with the given seed.
- PlayfieldGenerator.GeneratorProgressListener - Interface in dev.roanh.convexmerger.game
-
Listener interface for classes that want to
informed of playfield generation progress.
- point - Variable in class dev.roanh.convexmerger.util.KDTree
-
The point defining the line splitting this kd-tree
cell into a low and high cell.
- point - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
The point of this structure.
- point - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
If the vertex represents a point, it points to it.
- pointInside(double, double) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Checks whether a point given by its coordinates is strictly inside a trapezoid.
- pointInside(Point2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Checks whether a given point is strictly inside a trapezoid.
- points - Variable in class dev.roanh.convexmerger.game.ConvexObject
-
The points that make up this convex object, starting
with the left most point in counter clockwise order.
- points - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition
-
The list of points added to the decomposition.
- POLY_STROKE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Stroke used to draw the outline of playfield convex objects.
- PORT - Static variable in class dev.roanh.convexmerger.Constants
-
Multiplayer server port.
- prev - Variable in class dev.roanh.convexmerger.ui.InfoMenu
-
The screen to switch to after this screen is closed.
- PRIDI_MEDIUM_10 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi medium font with size 10, used for graph markers.
- PRIDI_MEDIUM_12 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi medium font with size 12, used for titled borders.
- PRIDI_MEDIUM_13 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi medium font with size 13, used for bar chart scores.
- PRIDI_MEDIUM_14 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi medium font with size 14, used for text fields.
- PRIDI_MEDIUM_16 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi medium font with size 16, used for bar chart names and result overlay stats.
- PRIDI_MEDIUM_24 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi medium font with size 24, used for playfield player names.
- PRIDI_MEDIUM_30 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi medium font with size 30, used for the info menu title.
- PRIDI_MEDIUM_36 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi medium font with size 36, used for the result overlay title.
- PRIDI_REGULAR_12 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi regular font with size 12, used for the rules.
- PRIDI_REGULAR_14 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi regular font with size 14, used for the rules.
- PRIDI_REGULAR_16 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi regular font with size 18, used for the playfield hint.
- PRIDI_REGULAR_18 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi regular font with size 16, used for the playfield hint.
- PRIDI_REGULAR_24 - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Pridi regular font with size 24, used for buttons.
- PRIMARY_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Color used for the result screen divider and graph markers.
- progress - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Playfield generation progress (0~1).
- ProxyAnimation - Class in dev.roanh.convexmerger.animation
-
Animation that renders the object it is initialised with.
- ProxyAnimation(RenderableObject...) - Constructor for class dev.roanh.convexmerger.animation.ProxyAnimation
-
Constructs a new proxy animation with the
given list of objects to render.
- ProxyAnimation(RenderableObject, RenderableObject, List<? extends RenderableObject>) - Constructor for class dev.roanh.convexmerger.animation.ProxyAnimation
-
Constructs a new proxy animation with the
given objects to render.
- random - Variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Local random instance to use the generate the playfield.
- RANGE_VALUES_MAX - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Raw maximum range values associated with the object size buttons.
- RANGE_VALUES_MIN - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Raw minimum range values associated with the object size buttons.
- rangeMax - Variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Maximum object size.
- rangeMin - Variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Minimum object size.
- readPacket() - Method in class dev.roanh.convexmerger.net.Connection
-
Reads a new packet from the connection.
- ready() - Method in class dev.roanh.convexmerger.game.GameState
-
Checks if the game state is ready to handle the next turn.
- reason - Variable in class dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject
-
They ID of the reject reason.
- registerStateListener(GameStateListener) - Method in class dev.roanh.convexmerger.game.GameState
-
Registers a listener to receive game status updates.
- RejectReason(int, String) - Constructor for enum dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject.RejectReason
-
Constructs a new reject reason with the given ID and text.
- RemotePanel(Theme.PlayerTheme, Player) - Constructor for class dev.roanh.convexmerger.ui.HostMenu.RemotePanel
-
Constructs a new remote panel for the given player.
- RemotePlayer - Class in dev.roanh.convexmerger.player
-
Proxy representative for a player playing on a remote system.
- RemotePlayer(Connection, boolean, String) - Constructor for class dev.roanh.convexmerger.player.RemotePlayer
-
Constructs a new remote player with the given
player connection, AI status and name.
- remove - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Bounds of the remove button.
- REMOVE_BUTTON_HIGHLIGHT - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Remove button highlight color.
- REMOVE_ICON - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Remove icon.
- REMOVE_ICON_HIGHLIGHT - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Remove icon when highlighted.
- REMOVE_ICON_SIZE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Size of the remove thrash can icon.
- removeArea(double) - Method in class dev.roanh.convexmerger.player.Player
-
Removes some claimed area from this player.
- removeFocus() - Method in class dev.roanh.convexmerger.ui.TextField
-
Removes the focus from this text field.
- removeNeighbour(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Removes a neighbour from the list of neighbours.
- removePoint(VerticalDecomposition.DecompositionPoint) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Removes a decomposition point from the list of decomposition points.
- removeSegment(VerticalDecomposition.Line) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
Removes a segment from the list of segments that this point is part of.
- removeTrapAbove(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Removes a given trapezoid from the list of trapezoids above this line.
- removeTrapBelow(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Removes a given trapezoid from the list of trapezoids below this line.
- removeTrapezoid(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Removes a trapezoid from the structure, freeing its neighbours
and disassociating it from its decomposition vertex.
- render(Graphics2D) - Method in class dev.roanh.convexmerger.animation.Animation
-
Renders the next frame of this animation.
- render(Graphics2D) - Method in class dev.roanh.convexmerger.animation.CalliperAnimation
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.animation.ClaimAnimation
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.animation.ExampleAnimation
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.animation.MergeAnimation
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.animation.ProxyAnimation
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.animation.RenderableObject
-
Renders this object.
- render(Graphics2D) - Method in class dev.roanh.convexmerger.animation.ScoreAnimation
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
- render(Graphics2D, double, double, double, double, Point2D) - Method in class dev.roanh.convexmerger.ui.ComboBox
-
Renders this combo box according to the given parameters.
- render(Graphics2D, int, int, Point2D) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
- render(Graphics2D, int, int, Point2D) - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
- render(Graphics2D, int, int, Point2D) - Method in class dev.roanh.convexmerger.ui.JoinMenu
-
- render(Graphics2D, int, int, Point2D) - Method in class dev.roanh.convexmerger.ui.MainMenu
-
- render(Graphics2D, Shape, Theme.PlayerTheme) - Method in class dev.roanh.convexmerger.ui.MainMenu
-
Renders the given shape in
the convex object style.
- render(Graphics2D, double, double, double, Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Renders this button assembly at the given location.
- render(Graphics2D, double, double, Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Renders this panel at the given location.
- render(Graphics2D, int, int, Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
- render(Graphics2D, int, int, Point2D) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Renders this overlay if it is enabled.
- render(Graphics2D, int, int) - Method in class dev.roanh.convexmerger.ui.Screen
-
Renders this screen with the given graphics and dimensions.
- render(Graphics2D, int, int, Point2D) - Method in class dev.roanh.convexmerger.ui.Screen
-
Renders the content of this screen with the given graphics.
- render(Graphics2D, double, double, double, double) - Method in class dev.roanh.convexmerger.ui.TextField
-
Renders this text field.
- render(Graphics2D) - Method in class dev.roanh.convexmerger.util.ConjugationTree
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.util.KDTree
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.util.PartitionTree
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree.SearchAnimation
-
- render(Graphics2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
- RenderableObject - Class in dev.roanh.convexmerger.animation
-
Represents an object that can be rendered and animated.
- RenderableObject() - Constructor for class dev.roanh.convexmerger.animation.RenderableObject
-
- renderAddButtons(Graphics2D, double, double, Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Renders the add player/AI buttons at the given location.
- renderBars(Graphics2D, int) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Renders the bar chart shown on the result screen.
- renderBorder(Graphics2D, float, float, float, float, String) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Renders a titled border with the given location, dimensions and title.
- renderCredits(Graphics2D, Paint, double, double, double, double) - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
Renders the credits box.
- renderer - Variable in class dev.roanh.convexmerger.ui.ConvexMerger
-
The renderer rending the active game screen.
- renderExample(Graphics2D, Paint, double, double, double, double) - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
Renders the example box.
- renderGraph(Graphics2D, int) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Renders the graph shown on the result screen.
- renderInterface(Graphics2D, int, int) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
Renders the user interface with the given graphics.
- renderKeys(Graphics2D, Paint, double, double, double, double) - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
Renders the shortcuts box.
- renderMainInterface(Graphics2D, int, int, GameState) - Method in class dev.roanh.convexmerger.ui.Screen
-
Renders the main interface, the top panel and button left and
right buttons.
- renderMenuTitle(Graphics2D, int, String) - Method in class dev.roanh.convexmerger.ui.Screen
-
Renders a screen sub title.
- renderOrAnimate(Graphics2D) - Method in class dev.roanh.convexmerger.animation.RenderableObject
-
Renders this object or runs its animation
if it has one set.
- renderPlayfield(Graphics2D, int, int) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
Renders the playfield with the given graphics.
- renderRemoveButton(Graphics2D, double, double, Point2D) - Method in class dev.roanh.convexmerger.ui.HostMenu.HostPanel
-
- renderRemoveButton(Graphics2D, double, double, Point2D) - Method in class dev.roanh.convexmerger.ui.HostMenu.RemotePanel
-
- renderRemoveButton(Graphics2D, double, double, Point2D) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Renders the remove button at the given location.
- renderRules(Graphics2D, Paint, double, double, double, double) - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
Renders the rules box.
- renderStats(Graphics2D, int) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Renders the statistics shown on the result screen.
- renderVersion(Graphics2D, Paint, double, double, double, double, Point2D) - Method in class dev.roanh.convexmerger.ui.InfoMenu
-
Renders the version box.
- replaceOverlappedSegment(VerticalDecomposition.Line, VerticalDecomposition.Line) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Replaces a given line segment and line segments between its end points and points collinear with the line,
with a segment that overlaps the union of the shorter line segments.
- requireInput() - Method in class dev.roanh.convexmerger.player.HumanPlayer
-
Checks if this player currently requires input via the UI.
- reset() - Method in class dev.roanh.convexmerger.ui.NewGameMenu
-
Resets this menu keeping the selected options
but resetting that the game was started.
- result - Static variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
The result of merging the first and third object.
- result - Variable in class dev.roanh.convexmerger.game.ClaimResult
-
The newly claimed or created convex object
as a result of the claim that was made.
- resultOverlay - Variable in class dev.roanh.convexmerger.ui.GamePanel
-
Result overlay.
- ResultOverlay - Class in dev.roanh.convexmerger.ui
-
Overlay that shows at the end of a game with a lot of stats.
- ResultOverlay(GameState) - Constructor for class dev.roanh.convexmerger.ui.ResultOverlay
-
Constructs a new result overlay for the given game.
- ResultOverlay.AveragePlayer - Class in dev.roanh.convexmerger.ui
-
Dummy player instance that averages play results.
- RESULTS_STROKE - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Stroke used for borders on the result screen.
- right - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
The bounds for the right button.
- right - Variable in class dev.roanh.convexmerger.util.ConjugationTree
-
The right child node of this node (containing CCW 1 points).
- right - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
The right child of the vertex in the search structure.
- rightOn - Variable in class dev.roanh.convexmerger.util.ConjugationTree.ConjugateData
-
The point from the right point set
defining the conjugate line, possibly
null if the left point set was empty.
- rightPoints - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
The points that bound the trapezoid from the right.
- rightPoly - Variable in class dev.roanh.convexmerger.ui.Screen
-
Bottom right button polygon.
- ROUND_RADIUS - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Bar chart bar corner rounding radius.
- rules - Static variable in class dev.roanh.convexmerger.ui.InfoMenu
-
Strings in the rules box.
- run(Graphics2D) - Method in class dev.roanh.convexmerger.animation.Animation
-
Renders the next frame of the animation.
- run() - Method in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
- run() - Method in class dev.roanh.convexmerger.ui.ConvexMerger.GameThread
-
- runAnimation(Graphics2D) - Method in class dev.roanh.convexmerger.animation.RenderableObject
-
Renders the animation for this convex object
using the given graphics instance.
- running - Variable in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Whether the server is running and accepting new connections.
- sanitizeNeighbours() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Removes undesired neighbourhoods of trapezoids.
- scale(double) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Scales this object by the given scaling factor.
- scale - Variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Object scaling factor.
- scaleNum - Variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Scaling value in range 0-255.
- SCALING_VALUES - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Raw scaling values associated with the spacing buttons.
- SCORE_COLOR - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Playfield player score color.
- SCORE_COLOR_LEAD - Static variable in class dev.roanh.convexmerger.ui.Theme
-
Playfield leading player score color.
- SCORE_PER_MS - Static variable in class dev.roanh.convexmerger.animation.ScoreAnimation
-
Number of score points to add each millisecond.
- ScoreAnimation - Class in dev.roanh.convexmerger.animation
-
Animation that shows the player score increasing or decreasing.
- ScoreAnimation(Player) - Constructor for class dev.roanh.convexmerger.animation.ScoreAnimation
-
Constructs a new score animation for the given player.
- scoreAnimation - Variable in class dev.roanh.convexmerger.player.Player
-
The score animation for this player.
- scoreHistory - Variable in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Player score at the end of each turn.
- Screen - Class in dev.roanh.convexmerger.ui
-
Base class for all screens containing shared rendering subroutines.
- Screen(ConvexMerger) - Constructor for class dev.roanh.convexmerger.ui.Screen
-
Constructs a new screen with the given game context.
- screen - Variable in class dev.roanh.convexmerger.ui.ScreenRenderer
-
The active screen to render.
- ScreenRenderer - Class in dev.roanh.convexmerger.ui
-
Main game renderer responsible for rendering screens.
- ScreenRenderer(Screen) - Constructor for class dev.roanh.convexmerger.ui.ScreenRenderer
-
Constructs a new screen renderer with the given
initial screen to render.
- SearchAnimation(SegmentPartitionTree.LineSegment) - Constructor for class dev.roanh.convexmerger.util.SegmentPartitionTree.SearchAnimation
-
Constructs a new search animation with the given query line.
- searchStructure - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition
-
The search structure of the decomposition.
- second - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
The second object in the merge.
- second - Static variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
Middle object.
- second - Variable in class dev.roanh.convexmerger.player.Player.MergeOption
-
The target object in the merge.
- secondAngle - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
The angle of the second merge line.
- secondInner - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
Path for the inner (internal after the merge)
hull segment of the second object
- secondInnerData - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
Points defining the inner hull segment of the second object.
- secondLine - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
The second merge line.
- secondOuter - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
Path for the outer (not internal after the merge)
hull segment of the second object
- seed - Variable in class dev.roanh.convexmerger.game.GameState
-
The seed of the generator that generated this game's playfield.
- seed - Variable in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
The random seed for this playfield generator.
- seed - Variable in class dev.roanh.convexmerger.net.packet.PacketGameInit
-
The game seed.
- seed - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Text field showing the game seed.
- seedBounds - Variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
The bounds of the seed display field.
- Segment - Class in dev.roanh.convexmerger.util
-
A line segment instance with equality based
on its end points.
- Segment(Point2D, Point2D) - Constructor for class dev.roanh.convexmerger.util.Segment
-
Constructs a new line segment with the given end points.
- segment - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
If the vertex represents a segment, it points to it.
- SegmentPartitionTree<T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> - Class in dev.roanh.convexmerger.util
-
Segment partition tree for efficient detection
of line intersections with the stored line set.
- SegmentPartitionTree(T, SegmentPartitionTree.VisitingFunction<T>) - Constructor for class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Constructs a new segment partition tree with the given
partitioning tree data structure.
- SegmentPartitionTree.LineSegment - Class in dev.roanh.convexmerger.util
-
Represents a line segment between two end points.
- SegmentPartitionTree.PartitionTreeVisitor<T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> - Interface in dev.roanh.convexmerger.util
-
Interface for a function that nodes visited in a partition tree search are reported to.
- SegmentPartitionTree.SearchAnimation - Class in dev.roanh.convexmerger.util
-
Implementation of a search animation with a segment in the tree.
- SegmentPartitionTree.SegmentPartitionTreeConstructor<T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> - Class in dev.roanh.convexmerger.util
-
A class that can create new instances of a segment partition tree
based on a specific partition tree type.
- SegmentPartitionTree.VisitingFunction<T extends PartitionTree<SegmentPartitionTree.LineSegment,T>> - Interface in dev.roanh.convexmerger.util
-
Interface for a function that can be used to search a partition tree.
- SegmentPartitionTreeConstructor(Function<List<Point2D>, T>, SegmentPartitionTree.VisitingFunction<T>) - Constructor for class dev.roanh.convexmerger.util.SegmentPartitionTree.SegmentPartitionTreeConstructor
-
Constructs a new segment partition tree constructor.
- segmentProjectionComparator(Line2D) - Static method in class dev.roanh.convexmerger.util.ConjugationTree
-
Sorts the points on the order of their projections onto a segment,
from the direction of its first point to the direction of its second point.
- segments - Variable in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
The segments stored in this segment partition tree.
- segments - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
The segments that this point bounds.
- segmentTreeConj - Variable in class dev.roanh.convexmerger.game.GameState
-
The conjugation tree based segment intersection tree.
- segmentTreeKD - Variable in class dev.roanh.convexmerger.game.GameState
-
The kd-tree based segment intersection tree.
- segToObj - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Map of segments to the object above them or to null
if that object is the playing field.
- selected - Variable in class dev.roanh.convexmerger.game.GameState
-
The convex object currently selected by the player,
or null
if there is no selected object.
- selected - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
The index of the currently selected button (0~2).
- self - Variable in class dev.roanh.convexmerger.net.ClientConnection
-
The local player that wants to join.
- self - Variable in class dev.roanh.convexmerger.ui.JoinMenu
-
Local player.
- sendPacket(Packet) - Method in class dev.roanh.convexmerger.net.Connection
-
Sends a new packet over this connection.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.game.ConvexObject
-
Serial ID.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.net.packet.PacketGameEnd
-
Serial ID.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.net.packet.PacketGameInit
-
Serial ID.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.net.packet.PacketPlayerJoin
-
Serial ID.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.net.packet.PacketPlayerJoinAccept
-
Serial ID.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject
-
Serial ID.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
Serial ID.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.net.PlayerProxy
-
Serial ID.
- serialVersionUID - Static variable in class dev.roanh.convexmerger.ui.ScreenRenderer
-
Serial ID.
- server - Variable in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Main server socket.
- server - Variable in class dev.roanh.convexmerger.ui.HostMenu
-
The multiplayer server.
- ServerThread() - Constructor for class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Constructs a new server thread.
- setAnimated(boolean) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Sets whether this segment partition tree is animated.
- setAnimated(boolean) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition
-
Sets whether the vertical decomposition is animated and
showing individual segment updates.
- setAnimation(Animation) - Method in class dev.roanh.convexmerger.animation.RenderableObject
-
Sets the active animation for this convex object.
- setCentred(boolean) - Method in class dev.roanh.convexmerger.ui.TextField
-
Sets whether the text in this text field should be centred.
- setChangeListener(IntConsumer) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Sets the listener called when the selected button changes.
- setChangeListener(TextField.TextChangeListener) - Method in class dev.roanh.convexmerger.ui.TextField
-
Sets the change listener for this text field.
- setCoverage(int) - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Sets the minimum total area of the whole playfield that should be
covered by convex objects before scaling.
- setDecompVertex(VerticalDecomposition.DecompVertex) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Links the trapezoid to a Decomposition vertex.
- setEnabled(boolean) - Method in class dev.roanh.convexmerger.ui.ResultOverlay
-
Enables or disables this overlay.
- setFocusListener(TextField.FocusLossListener) - Method in class dev.roanh.convexmerger.ui.TextField
-
Sets the focus loss listener for this text field.
- setForegroundColor(Color) - Method in class dev.roanh.convexmerger.ui.TextField
-
Sets the foreground (text) colour for this text field.
- setGamePanel(GamePanel) - Method in class dev.roanh.convexmerger.player.HumanPlayer
-
Sets the game panel visualising the game this player is playing in.
- setHuman(String) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Sets the player currently being configured to a human
and activates the corresponding UI elements.
- setID(int) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
- setID(int) - Method in interface dev.roanh.convexmerger.game.Identity
-
Sets the ID of this entity.
- setID(int) - Method in class dev.roanh.convexmerger.player.Player
-
- setLeftChild(VerticalDecomposition.DecompVertex) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Sets the right child of the vertex
- setLine(double, double, double, double) - Method in class dev.roanh.convexmerger.util.Segment
-
- setLocation(double, double) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompositionPoint
-
- setMarked(boolean) - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Sets whether this partition tree is marked or not.
- setMessage(MessageDialog) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
Sets the active display message for the game.
- setName(String) - Method in class dev.roanh.convexmerger.player.Player
-
Sets the name of this player.
- setOwner(Player) - Method in class dev.roanh.convexmerger.game.ConvexObject
-
Sets the player that owns this object.
- setPoint(Point2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Sets the point that the vertex points to to a given point, if the vertex is a point vertex.
- setProgressListener(PlayfieldGenerator.GeneratorProgressListener) - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Sets the listener to notify of playfield generation progress.
- setRange(int, int) - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Sets the size range of generated objects.
- setRightChild(VerticalDecomposition.DecompVertex) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Sets the right child of the vertex.
- setScaling(int) - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Sets the factor by with which to scale all objects after generation.
- setScreen(Screen) - Method in class dev.roanh.convexmerger.ui.ScreenRenderer
-
Sets the screen to render.
- setSeed(String) - Method in class dev.roanh.convexmerger.game.PlayfieldGenerator
-
Sets the seed of this generator to the given seed.
- setSegment(Line2D) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Sets the segment that the vertex points to to a given segment, if the vertex is a segment vertex.
- setSelected(int) - Method in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Sets the selected button for this assembly.
- setSelectedObject(ConvexObject) - Method in class dev.roanh.convexmerger.game.GameState
-
Sets the object selected by the current player.
- setText(String) - Method in class dev.roanh.convexmerger.ui.TextField
-
Sets the text for this text field.
- setToPoint(Point2D, VerticalDecomposition.DecompVertex, VerticalDecomposition.DecompVertex) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Converts the vertex to a point vertex, associating it to a
point, assigning children to the left and right, and
removing the associated trapezoid and segment.
- setToSegment(VerticalDecomposition.Line, VerticalDecomposition.DecompVertex, VerticalDecomposition.DecompVertex) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Converts the vertex to a segment vertex, associating it to a
segment, assigning children to the left and right (bottom and
top respectively), and removing the associated trapezoid and
point, if any.
- setTrapezoid(VerticalDecomposition.Trapezoid) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Sets the trapezoid that the vertex points to to a given trapezoid, if the vertex is a leaf.
- setType(VerticalDecomposition.DecompVertexType) - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
Sets the type of this decomposition vertex.
- shape - Variable in class dev.roanh.convexmerger.game.ConvexObject
-
The shape of this convex object.
- shape - Variable in class dev.roanh.convexmerger.util.ConjugationTree
-
The shape defining the bounds of this cell as constructed
from the convex hull points in
ConjugationTree.hull
.
- showAnimation(Point2D, Point2D) - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Animates a search for intersections with the given line segment.
- showCallipers - Variable in class dev.roanh.convexmerger.ui.GamePanel
-
True if the callipers for merges should be rendered.
- showCentroids - Variable in class dev.roanh.convexmerger.ui.GamePanel
-
True if the centroid of objects objects should be rendered.
- showDecomp - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Whether to show the vertical decomposition
from the start of the game.
- showFPS - Variable in class dev.roanh.convexmerger.ui.ScreenRenderer
-
Whether to render the FPS counter.
- showGame() - Method in class dev.roanh.convexmerger.ui.ConvexMerger
-
Shows the main game window.
- showNewGame() - Method in class dev.roanh.convexmerger.ui.ConvexMerger
-
Shows the new game menu.
- shutdown() - Method in class dev.roanh.convexmerger.net.InternalServer.ServerThread
-
Shuts down the part of this server responsible
for accepting incoming players.
- shutdown() - Method in class dev.roanh.convexmerger.net.InternalServer
-
Immediately shuts down this server and closes
all the connections it had open.
- SIDE_OFFSET - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Offset from the side to the playfield rectangle.
- single - Variable in class dev.roanh.convexmerger.ui.MainMenu
-
Bounds of the single player button.
- size - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Configuration for the playfield object size.
- SmallPlayer - Class in dev.roanh.convexmerger.player
-
AI that focuses on maximising local area gain
starting from small objects.
- SmallPlayer() - Constructor for class dev.roanh.convexmerger.player.SmallPlayer
-
Constructs a new small player (Shiro).
- socket - Variable in class dev.roanh.convexmerger.net.Connection
-
The socket for this connection.
- source - Variable in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
The source object involved (the ID of the claimed
object or the ID of the object a merge started from).
- spacing - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Configuration for the playfield spacing.
- SPACING - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Spacing between various components.
- splitHull(List<Point2D>, Line2D) - Static method in class dev.roanh.convexmerger.util.ConvexUtil
-
Splits the given convex hull into two new hulls along the given
splitting line.
- start - Variable in class dev.roanh.convexmerger.animation.CalliperAnimation
-
The epoch millisecond start time of the animation.
- start - Variable in class dev.roanh.convexmerger.animation.ClaimAnimation
-
Millisecond time this animation started.
- start - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
Time in milliseconds when the animation started.
- start - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Bounds of the start button.
- start - Variable in class dev.roanh.convexmerger.util.SegmentPartitionTree.SearchAnimation
-
The millisecond start time of the animation.
- START_HEIGHT - Static variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Height of the start button.
- started - Variable in class dev.roanh.convexmerger.ui.NewGameMenu
-
Whether the start button was clicked.
- startGame(List<Player>, PlayfieldGenerator, boolean) - Method in class dev.roanh.convexmerger.net.InternalServer
-
Gets the game constructor required to start
a game with the given set of players and with
the given playfield generator.
- state - Variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
Current animation state.
- state - Variable in class dev.roanh.convexmerger.player.Player
-
The game this player is associated with.
- state - Variable in class dev.roanh.convexmerger.ui.GamePanel
-
The game state to visualise.
- state - Variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
The active/completed game.
- stats - Variable in class dev.roanh.convexmerger.player.Player
-
The game stats for this player.
- stream() - Method in class dev.roanh.convexmerger.game.GameState
-
Streams all the objects in this game.
- stream() - Method in class dev.roanh.convexmerger.player.Player
-
Streams all the objects owned by this player.
- streamCells() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Streams all the cells (both leaf and internal) in this tree.
- streamCells() - Method in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Returns a stream over all the nodes of the underlying partition tree.
- streamLeafCells() - Method in class dev.roanh.convexmerger.util.PartitionTree
-
Streams all the leaf cells in this tree.
- switchScene(Screen) - Method in class dev.roanh.convexmerger.ui.ConvexMerger
-
Switches the scene being displayed to the user
to the given screen.
- switchScene(Screen) - Method in class dev.roanh.convexmerger.ui.Screen
-
Switches the context from the current screen to the given screen.
- target - Variable in class dev.roanh.convexmerger.animation.MergeAnimation
-
The target object of the merge (possibly unowned)
- target - Variable in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
The ID of the target object of a merge move.
- target - Variable in class dev.roanh.convexmerger.player.LocalPlayer
-
Object currently being worked on.
- terminal(BiConsumer<T, SegmentPartitionTree.LineSegment>) - Static method in interface dev.roanh.convexmerger.util.SegmentPartitionTree.PartitionTreeVisitor
-
Constructs a special partition tree visitor that only receives terminal nodes.
- text - Variable in class dev.roanh.convexmerger.ui.TextField
-
Current text field text.
- text - Variable in enum dev.roanh.convexmerger.ui.Theme.PlayerTheme
-
Player theme text color.
- TEXT_OFFSET - Static variable in class dev.roanh.convexmerger.ui.ResultOverlay
-
Internal titled border offset to the text inside.
- TextField - Class in dev.roanh.convexmerger.ui
-
Text field UI component.
- TextField(Color) - Constructor for class dev.roanh.convexmerger.ui.TextField
-
Constructs a new text field with the given accent color.
- TextField.FocusLossListener - Interface in dev.roanh.convexmerger.ui
-
Listener called when the user stops editing a text field.
- TextField.TextChangeListener - Interface in dev.roanh.convexmerger.ui
-
Listener called when the text field context changes.
- theme - Variable in class dev.roanh.convexmerger.player.Player
-
The theme for this player.
- theme - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.PlayerPanel
-
Panel theme.
- Theme - Class in dev.roanh.convexmerger.ui
-
Class holding various UI design related constants.
- Theme() - Constructor for class dev.roanh.convexmerger.ui.Theme
-
- Theme.PlayerTheme - Enum in dev.roanh.convexmerger.ui
-
Enum with specific colours for the different players.
- third - Static variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
Rightmost object.
- thread - Variable in class dev.roanh.convexmerger.net.InternalServer
-
Thread executing the main server logic.
- time - Variable in class dev.roanh.convexmerger.animation.ExampleAnimation
-
Saved timestamp for animation.
- TITLE - Static variable in class dev.roanh.convexmerger.Constants
-
Game and window title.
- title - Variable in enum dev.roanh.convexmerger.ui.MessageDialog
-
The title for this dialog.
- title - Variable in class dev.roanh.convexmerger.ui.NewGameMenu.ButtonAssembly
-
Title of this assembly.
- TOP_MIDDLE_OFFSET - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Height of the middle text area attached to the top part.
- TOP_MIDDLE_TEXT_OFFSET - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Text offset from the bottom in the top middle text area.
- TOP_MIDDLE_WIDTH - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Width of the middle text area attached to the top part.
- TOP_OFFSET - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Offset from the score display part of the game panel to the playfield rectangle.
- TOP_SIDE_TRIANGLE - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Dimensions of the triangles on the left and right side of the top part.
- TOP_SPACE - Static variable in class dev.roanh.convexmerger.ui.Screen
-
Height of the top score display part of the game panel.
- topSegment - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
The segment that bound the trapezoid from the top.
- toShape() - Method in class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Computes the shape for this trapezoid.
- toString() - Method in class dev.roanh.convexmerger.game.ConvexObject
-
- toString() - Method in enum dev.roanh.convexmerger.net.packet.PacketPlayerJoinReject.RejectReason
-
- toString() - Method in class dev.roanh.convexmerger.player.Player
-
- toString - Variable in class dev.roanh.convexmerger.ui.ComboBox
-
The function to use to turn the values into strings.
- toString() - Method in class dev.roanh.convexmerger.util.Segment
-
- totalTurnTime - Variable in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Total time spent across all turns.
- translateToGameSpace(double, double, int, int) - Method in class dev.roanh.convexmerger.ui.GamePanel
-
Translates the given point from window coordinate space
to game coordinate space.
- trapezoid - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
If the vertex is a leaf, it points to a trapezoid.
- Trapezoid(Point2D, Point2D, VerticalDecomposition.Line, VerticalDecomposition.Line) - Constructor for class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Constructs a trapezoid given a left and a right bounding point, and the top and bottom bounding segments.
- Trapezoid(List<Point2D>, Point2D, VerticalDecomposition.Line, VerticalDecomposition.Line) - Constructor for class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Constructs a trapezoid given a list of left bounding points and a right bounding point, and the top and bottom bounding segments.
- Trapezoid(Point2D, List<Point2D>, VerticalDecomposition.Line, VerticalDecomposition.Line) - Constructor for class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Constructs a trapezoid given a left bounding point and a list of right bounding points, and the top and bottom bounding segments.
- Trapezoid(List<Point2D>, List<Point2D>, VerticalDecomposition.Line, VerticalDecomposition.Line) - Constructor for class dev.roanh.convexmerger.util.VerticalDecomposition.Trapezoid
-
Constructs a trapezoid given lists of left and right bounding points, and the top and bottom bounding segments.
- trapezoids - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition
-
The trapezoids of the decomposition.
- trapsAbove - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Trapezoids with this line as its bottom segment.
- trapsBelow - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.Line
-
Trapezoids with this line as its top segment.
- turns - Variable in class dev.roanh.convexmerger.game.GameState
-
The number of individual player turns so far in this game.
- turns - Variable in class dev.roanh.convexmerger.player.Player.PlayerStats
-
Total number of player turns.
- type - Variable in class dev.roanh.convexmerger.net.packet.PacketPlayerMove
-
The type of move.
- type - Variable in class dev.roanh.convexmerger.util.VerticalDecomposition.DecompVertex
-
The type of the vertex.
- TYPE_CONJUGATION_TREE - Static variable in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Constructor for conjugation tree based segment partition trees.
- TYPE_KD_TREE - Static variable in class dev.roanh.convexmerger.util.SegmentPartitionTree
-
Constructor for kd-tree based segment partition trees.