public class SearchWorldState extends WorldState
Contact: Don Brutzman (web.nps.navy.mil/~brutzman) brutzman@nps.navy.mil
Modifier and Type | Field and Description |
---|---|
protected double[] |
buffer |
static double |
FORTY_FIVE_DEGREES |
static double[] |
HEADINGS |
static double |
NINETY_DEGREES |
static double |
ONE_FIFTY_DEGREES |
static double |
ONE_THIRTY_FIVE_DEGREES |
static double |
ONE_TWENTY_DEGREES |
protected boolean |
pointFocus
Set to true if the search is a point search (false means area search)
|
protected GeoArea |
searchArea
Reference to the Geographic area that his search planner is to generate a search pattern for
|
protected List<double[]> |
searchPoints
List of double[2] (x, y) positions that must be visited to complete the search
|
static double |
SIXTY_DEGREES |
static double |
THIRTY_DEGREES |
static double |
THREE_FIFTEEN_DEGREES |
static double |
THREE_HUNDRED_DEGREES |
static double |
THREE_THIRTY_DEGREES |
protected double |
trackLengthMultiple
Applied to individual search legs to expedite the search
|
protected double |
trackSpacing
Spacing between tracks (used to compute estimate of remaining distance to goal)
|
static double |
TWO_FORTY_DEGREES |
static double |
TWO_SEVENTY_DEGREES |
static double |
TWO_TEN_DEGREES |
static double |
TWO_TWENTY_FIVE_DEGREES |
protected double[] |
vehiclePosition
Position of the vehicle in the world upon completion of this step
|
protected double |
vehiclePsi
Current heading (radians) of the vehicle at the end of this step
|
Modifier | Constructor and Description |
---|---|
protected |
SearchWorldState()
Creates a new instance of SearchWorldState
|
protected |
SearchWorldState(List<double[]> searchPoints,
GeoArea searchArea,
double spacing,
double[] position)
Creates a new instance of SearchWorldState
|
protected |
SearchWorldState(List<double[]> searchPoints,
GeoArea searchArea,
double spacing,
double[] position,
boolean pointFocus)
Creates a new instance of SearchWorldState
|
protected |
SearchWorldState(List<double[]> searchPoints,
GeoArea searchArea,
List<double[]> complete,
double spacing,
double[] position)
Creates a new instance of SearchWorldState
|
protected |
SearchWorldState(List<double[]> searchPoints,
GeoArea searchArea,
List<double[]> complete,
double spacing,
double[] position,
boolean pointFocus)
Creates a new instance of SearchWorldState
|
Modifier and Type | Method and Description |
---|---|
protected void |
addVisited(double[] point)
Adds a condition for visiting a search point
|
void |
computePsi(SearchWorldState previousState)
Computes the heading of the vehicle in this state based on the previous vehicle position
|
WorldState |
computeStepEffect(PlanStep step)
Computes the effect of a plan step on the world state conditions
|
protected void |
generateConditions(List<double[]> points)
Generates the conditions that describe the world state based on a set of searched points
|
List<SearchPlanStep> |
possibleSteps()
Returns an ArrayList containing all steps that are possible from the current state
|
protected boolean |
visited(double[] point)
Determines whether the search has covered the test point
|
double |
worldStateDistance(WorldState candidate)
Compares this state with another to measure how different they are
in order to provide an estimate of how much effort will be required to go
from this state to the candidate state.
|
addCondition, addCondition, getCondition, hasCondition, match, numberOfConditions, toString
public static final double THIRTY_DEGREES
public static final double FORTY_FIVE_DEGREES
public static final double SIXTY_DEGREES
public static final double NINETY_DEGREES
public static final double ONE_TWENTY_DEGREES
public static final double ONE_THIRTY_FIVE_DEGREES
public static final double ONE_FIFTY_DEGREES
public static final double TWO_TEN_DEGREES
public static final double TWO_TWENTY_FIVE_DEGREES
public static final double TWO_FORTY_DEGREES
public static final double TWO_SEVENTY_DEGREES
public static final double THREE_HUNDRED_DEGREES
public static final double THREE_FIFTEEN_DEGREES
public static final double THREE_THIRTY_DEGREES
public static final double[] HEADINGS
protected List<double[]> searchPoints
protected double trackSpacing
protected double[] vehiclePosition
protected double vehiclePsi
protected GeoArea searchArea
protected double trackLengthMultiple
protected boolean pointFocus
protected double[] buffer
protected SearchWorldState()
protected SearchWorldState(List<double[]> searchPoints, GeoArea searchArea, List<double[]> complete, double spacing, double[] position)
searchPoints
- List of points that are to be visited during the searchsearchArea
- Geographic area that the planner is to devise a search pattern forcomplete
- List of points that have been visited to datespacing
- track spacing to be used during the searchposition
- double[2] containing the current (x, y) position of the vehicleprotected SearchWorldState(List<double[]> searchPoints, GeoArea searchArea, double spacing, double[] position)
searchPoints
- List of points that are to be visited during the searchsearchArea
- Geographic area that the planner is to devise a search pattern forspacing
- track spacing to be used during the searchposition
- double[2] containing the current (x, y) position of the vehicleprotected SearchWorldState(List<double[]> searchPoints, GeoArea searchArea, List<double[]> complete, double spacing, double[] position, boolean pointFocus)
searchPoints
- List of points that are to be visited during the searchsearchArea
- Geographic area that the planner is to devise a search pattern forcomplete
- List of points that have been visited to datespacing
- track spacing to be used during the searchposition
- double[2] containing the current (x, y) position of the vehiclepointFocus
- protected SearchWorldState(List<double[]> searchPoints, GeoArea searchArea, double spacing, double[] position, boolean pointFocus)
searchPoints
- List of points that are to be visited during the searchsearchArea
- Geographic area that the planner is to devise a search pattern forspacing
- track spacing to be used during the searchposition
- double[2] containing the current (x, y) position of the vehiclepointFocus
- public WorldState computeStepEffect(PlanStep step)
computeStepEffect
in class WorldState
step
- PlanStep object.public double worldStateDistance(WorldState candidate)
worldStateDistance
in class WorldState
candidate
- WorldState object.public List<SearchPlanStep> possibleSteps()
possibleSteps
in class WorldState
protected final void generateConditions(List<double[]> points)
points
- points that are searched when the world is in this stateprotected void addVisited(double[] point)
point
- double[2] with the (x, y) position of the visited pointprotected boolean visited(double[] point)
point
- double[2] containing the (x,y) position of the point being testedpublic void computePsi(SearchWorldState previousState)
previousState
-