Class Point

java.lang.Object
All Implemented Interfaces:
java.io.Serializable

public class Point
extends TCSResource<Point>
implements java.io.Serializable
Describes a position in the driving course at which a Vehicle may be located.
See Also:
Path, Serialized Form
  • Constructor Details

    • Point

      public Point​(java.lang.String name)
      Creates a new point with the given name.
      Parameters:
      name - This point's name.
  • Method Details

    • withProperty

      public Point withProperty​(java.lang.String key, java.lang.String value)
      Description copied from class: TCSObject
      Creates a copy of this object, with the given property integrated.
      Specified by:
      withProperty in class TCSObject<Point>
      Parameters:
      key - The key of the property to be changed.
      value - The new value of the property, or null, if the property is to be removed.
      Returns:
      A copy of this object, with the given property integrated.
    • withProperties

      public Point withProperties​(java.util.Map<java.lang.String,​java.lang.String> properties)
      Description copied from class: TCSObject
      Creates a copy of this object, with the given properties.
      Specified by:
      withProperties in class TCSObject<Point>
      Parameters:
      properties - The properties.
      Returns:
      A copy of this object, with the given properties.
    • withHistoryEntry

      public TCSObject<Point> withHistoryEntry​(ObjectHistory.Entry entry)
      Description copied from class: TCSObject
      Creates a copy of this object, with the given history entry integrated.
      Specified by:
      withHistoryEntry in class TCSObject<Point>
      Parameters:
      entry - The history entry to be integrated.
      Returns:
      A copy of this object, with the given history entry integrated.
    • withHistory

      public TCSObject<Point> withHistory​(ObjectHistory history)
      Description copied from class: TCSObject
      Creates a copy of this object, with the given history.
      Specified by:
      withHistory in class TCSObject<Point>
      Parameters:
      history - The history.
      Returns:
      A copy of this object, with the given history.
    • getPosition

      public Triple getPosition()
      Returns the physical coordinates of this point in mm.
      Returns:
      The physical coordinates of this point in mm.
    • withPosition

      public Point withPosition​(Triple position)
      Creates a copy of this object, with the given position.
      Parameters:
      position - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getVehicleOrientationAngle

      public double getVehicleOrientationAngle()
      Returns a vehicle's orientation angle at this position. (-360..360, or Double.NaN, if an orientation angle is not specified for this point.)
      Returns:
      The vehicle's orientation angle when it's at this position.
    • withVehicleOrientationAngle

      public Point withVehicleOrientationAngle​(double vehicleOrientationAngle)
      Creates a copy of this object, with the given vehicle orientation angle.
      Parameters:
      vehicleOrientationAngle - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getType

      public Point.Type getType()
      Returns this point's type.
      Returns:
      This point's type.
    • withType

      public Point withType​(Point.Type type)
      Creates a copy of this object, with the given type.
      Parameters:
      type - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • isParkingPosition

      public boolean isParkingPosition()
      Checks whether parking a vehicle on this point is allowed.

      This method is a convenience method; its return value is equal to getType().equals(Point.Type.PARK_POSITION).

      Returns:
      true if, and only if, parking is allowed on this point.
    • isHaltingPosition

      public boolean isHaltingPosition()
      Checks whether halting on this point is allowed.

      This method is a convenience method; its return value is equal to getType().equals(Point.Type.PARK_POSITION) || getType().equals(Point.Type.HALT_POSITION).

      Returns:
      true if, and only if, halting is allowed on this point.
    • getOccupyingVehicle

      public TCSObjectReference<Vehicle> getOccupyingVehicle()
      Returns a reference to the vehicle occupying this point.
      Returns:
      A reference to the vehicle occupying this point, or null, if this point isn't currently occupied by any vehicle.
    • withOccupyingVehicle

      public Point withOccupyingVehicle​(TCSObjectReference<Vehicle> occupyingVehicle)
      Creates a copy of this object, with the given occupying vehicle.
      Parameters:
      occupyingVehicle - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getIncomingPaths

      public java.util.Set<TCSObjectReference<Path>> getIncomingPaths()
      Returns a set of references to paths ending in this point.
      Returns:
      A set of references to paths ending in this point.
    • withIncomingPaths

      public Point withIncomingPaths​(java.util.Set<TCSObjectReference<Path>> incomingPaths)
      Creates a copy of this object, with the given incoming paths.
      Parameters:
      incomingPaths - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getOutgoingPaths

      public java.util.Set<TCSObjectReference<Path>> getOutgoingPaths()
      Returns a set of references to paths originating in this point.
      Returns:
      A set of references to paths originating in this point.
    • withOutgoingPaths

      public Point withOutgoingPaths​(java.util.Set<TCSObjectReference<Path>> outgoingPaths)
      Creates a copy of this object, with the given outgoing paths.
      Parameters:
      outgoingPaths - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.
    • getAttachedLinks

      public java.util.Set<Location.Link> getAttachedLinks()
      Returns a set of links attached to this point.
      Returns:
      A set of links attached to this point.
    • withAttachedLinks

      public Point withAttachedLinks​(java.util.Set<Location.Link> attachedLinks)
      Creates a copy of this object, with the given attached links.
      Parameters:
      attachedLinks - The value to be set in the copy.
      Returns:
      A copy of this object, differing in the given value.