protected static class VerticalDecomposition.DecompVertex
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private VerticalDecomposition.DecompVertex |
left
The left child of the vertex in the search structure.
|
private java.awt.geom.Point2D |
point
If the vertex represents a point, it points to it.
|
private VerticalDecomposition.DecompVertex |
right
The right child of the vertex in the search structure.
|
private java.awt.geom.Line2D |
segment
If the vertex represents a segment, it points to it.
|
private VerticalDecomposition.Trapezoid |
trapezoid
If the vertex is a leaf, it points to a trapezoid.
|
private VerticalDecomposition.DecompVertexType |
type
The type of the vertex.
|
Constructor and Description |
---|
DecompVertex(VerticalDecomposition.DecompVertex left,
VerticalDecomposition.DecompVertex right,
java.awt.geom.Line2D segment)
Constructs a Decomposition Vertex of the segment type with a corresponding line segment.
|
DecompVertex(VerticalDecomposition.DecompVertex left,
VerticalDecomposition.DecompVertex right,
java.awt.geom.Point2D point)
Constructs a Decomposition Vertex of the point type with a corresponding point.
|
DecompVertex(VerticalDecomposition.Trapezoid trapezoid)
Constructs a Decomposition Vertex of the leaf type with a linked trapezoid.
|
Modifier and Type | Method and Description |
---|---|
VerticalDecomposition.DecompVertex |
getLeftChild()
Gets the left child of the vertex.
|
java.awt.geom.Point2D |
getPoint()
Gets the point that the vertex points to.
|
VerticalDecomposition.DecompVertex |
getRightChild()
Gets the right child of the vertex.
|
java.awt.geom.Line2D |
getSegment()
Gets the segment that the vertex points to.
|
VerticalDecomposition.Trapezoid |
getTrapezoid()
Gets the trapezoid that the vertex points to.
|
VerticalDecomposition.Trapezoid |
queryPoint(java.awt.geom.Point2D query)
Queries which trapezoid a point lies in.
|
void |
setLeftChild(VerticalDecomposition.DecompVertex vert)
Sets the right child of the vertex
|
void |
setPoint(java.awt.geom.Point2D point)
Sets the point that the vertex points to to a given point, if the vertex is a point vertex.
|
void |
setRightChild(VerticalDecomposition.DecompVertex vert)
Sets the right child of the vertex.
|
void |
setSegment(java.awt.geom.Line2D segment)
Sets the segment that the vertex points to to a given segment, if the vertex is a segment vertex.
|
void |
setToPoint(java.awt.geom.Point2D point,
VerticalDecomposition.DecompVertex left,
VerticalDecomposition.DecompVertex right)
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.
|
void |
setToSegment(VerticalDecomposition.Line segment,
VerticalDecomposition.DecompVertex bottom,
VerticalDecomposition.DecompVertex top)
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.
|
void |
setTrapezoid(VerticalDecomposition.Trapezoid trapezoid)
Sets the trapezoid that the vertex points to to a given trapezoid, if the vertex is a leaf.
|
void |
setType(VerticalDecomposition.DecompVertexType type)
Sets the type of this decomposition vertex.
|
private VerticalDecomposition.DecompVertexType type
private VerticalDecomposition.DecompVertex left
private VerticalDecomposition.DecompVertex right
private VerticalDecomposition.Trapezoid trapezoid
private java.awt.geom.Point2D point
private java.awt.geom.Line2D segment
public DecompVertex(VerticalDecomposition.Trapezoid trapezoid)
trapezoid
- The trapezoid to link to.public DecompVertex(VerticalDecomposition.DecompVertex left, VerticalDecomposition.DecompVertex right, java.awt.geom.Point2D point)
left
- The child of the vertex.right
- The right child of the vertex.point
- The corresponding point in the decomposition.public DecompVertex(VerticalDecomposition.DecompVertex left, VerticalDecomposition.DecompVertex right, java.awt.geom.Line2D segment)
left
- The left child of the vertex. (above the segment).right
- The right child of the vertex. (below the segment).segment
- The corresponding line segment in the decomposition.public VerticalDecomposition.Trapezoid queryPoint(java.awt.geom.Point2D query)
query
- The point whose containing trapezoid is to be determined.public void setType(VerticalDecomposition.DecompVertexType type)
type
- The new type to set.public void setToPoint(java.awt.geom.Point2D point, VerticalDecomposition.DecompVertex left, VerticalDecomposition.DecompVertex right)
point
- The point to associate the vertex to.left
- The left child of the vertex, corresponding to
the area to the left of the point.right
- The right child of the vertex, corresponding
to the area to the right of the point.public void setToSegment(VerticalDecomposition.Line segment, VerticalDecomposition.DecompVertex bottom, VerticalDecomposition.DecompVertex top)
segment
- The segment to associate the vertex to.bottom
- The left child of the vertex, corresponding to
the area below the segment.top
- The right child of the vertex, corresponding to
the area above the segment.public VerticalDecomposition.DecompVertex getLeftChild()
null
if there is none.public void setLeftChild(VerticalDecomposition.DecompVertex vert)
vert
- The vertex to set the left child to.public VerticalDecomposition.DecompVertex getRightChild()
public void setRightChild(VerticalDecomposition.DecompVertex vert)
vert
- The vertex to set the right child to.public VerticalDecomposition.Trapezoid getTrapezoid()
public void setTrapezoid(VerticalDecomposition.Trapezoid trapezoid)
trapezoid
- The trapezoid to associate with the vertex.public java.awt.geom.Point2D getPoint()
public void setPoint(java.awt.geom.Point2D point)
point
- The point to associate with the vertex.public java.awt.geom.Line2D getSegment()
public void setSegment(java.awt.geom.Line2D segment)
segment
- The point to associate with the vertex.