Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

# Tools/FieldDimensions.h File Reference

Description of the dimensions of the field. More...

`#include "Math/Geometry.h"`
`#include "Math/Common.h"`

Include dependency graph for FieldDimensions.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
class | Landmark
| Points that can act as landmarks! For the goal and the corner posts these points (in 3D) lie on the top-most point of the landmarks. More...
class | FieldDimensions
| Static class containing some useful functions regarding field dimensions. More...
## Defines
#define | HUGE_FIELD
## Functions
const Vector2< int > | ownGroundlineLeft (xPosOwnGroundline, yPosLeftGroundline)
const Vector2< int > | ownGroundlineRight (xPosOwnGroundline, yPosRightGroundline)
const Vector2< int > | ownGoalRearPanelMiddle (xPosOwnGoal, yPosCenterGoal)
const Vector2< int > | opponentGoalRearPanelMiddle (xPosOpponentGoal, yPosCenterGoal)
const Vector2< int > | opponentGroundlineLeft (xPosOpponentGroundline, yPosLeftGroundline)
const Vector2< int > | opponentGroundlineRight (xPosOpponentGroundline, yPosRightGroundline)
const Vector2< int > | leftSideLineOwnEnd (xPosOwnSideCorner, yPosLeftSideline)
const Vector2< int > | leftSideLineOpponentEnd (xPosOpponentSideCorner, yPosLeftSideline)
const Vector2< int > | rightSideLineOwnEnd (xPosOwnSideCorner, yPosRightSideline)
const Vector2< int > | rightSideLineOpponentEnd (xPosOpponentSideCorner, yPosRightSideline)
const Vector2< int > | ownGoalLeftPost (xPosOwnGroundline, yPosLeftGoal)
const Vector2< int > | ownGoalRightPost (xPosOwnGroundline, yPosRightGoal)
const Vector2< int > | opponentGoalLeftPost (xPosOpponentGroundline, yPosLeftGoal)
const Vector2< int > | opponentGoalRightPost (xPosOpponentGroundline, yPosRightGoal)
const Vector2< int > | ownGoalLeftRearPanel (xPosOwnGoal, yPosLeftGoal)
const Vector2< int > | ownGoalRightRearPanel (xPosOwnGoal, yPosRightGoal)
const Vector2< int > | opponentGoalLeftRearPanel (xPosOpponentGoal, yPosLeftGoal)
const Vector2< int > | opponentGoalRightRearPanel (xPosOpponentGoal, yPosRightGoal)
const Geometry::Line | leftWall (leftSideLineOwnEnd, leftSideLineOpponentEnd-leftSideLineOwnEnd)
const Geometry::Line | opponentLeftCorner (leftSideLineOpponentEnd, opponentGroundlineLeft-leftSideLineOpponentEnd)
const Geometry::Line | opponentLeftGroundline (opponentGroundlineLeft, opponentGoalLeftPost-opponentGroundlineLeft)
const Geometry::Line | opponentGoalLeftWall (opponentGoalLeftPost, opponentGoalLeftRearPanel-opponentGoalLeftPost)
const Geometry::Line | opponentGoalRearWall (opponentGoalLeftRearPanel, opponentGoalRightRearPanel-opponentGoalLeftRearPanel)
const Geometry::Line | opponentGoalRightWall (opponentGoalRightRearPanel, opponentGoalRightPost-opponentGoalRightRearPanel)
const Geometry::Line | opponentRightGroundline (opponentGoalRightPost, opponentGroundlineRight-opponentGoalRightPost)
const Geometry::Line | opponentRightCorner (opponentGroundlineRight, rightSideLineOpponentEnd-opponentGroundlineRight)
const Geometry::Line | rightWall (rightSideLineOpponentEnd, rightSideLineOwnEnd-rightSideLineOpponentEnd)
const Geometry::Line | ownRightCorner (rightSideLineOwnEnd, ownGroundlineRight-rightSideLineOwnEnd)
const Geometry::Line | ownRightGroundline (ownGroundlineRight, ownGoalRightPost-ownGroundlineRight)
const Geometry::Line | ownGoalRightWall (ownGoalRightPost, ownGoalRightRearPanel-ownGoalRightPost)
const Geometry::Line | ownGoalRearWall (ownGoalRightRearPanel, ownGoalLeftRearPanel-ownGoalRightRearPanel)
const Geometry::Line | ownGoalLeftWall (ownGoalLeftRearPanel, ownGoalLeftPost-ownGoalLeftRearPanel)
const Geometry::Line | ownLeftGroundline (ownGoalLeftPost, ownGroundlineLeft-ownGoalLeftPost)
const Geometry::Line | ownLeftCorner (ownGroundlineLeft, leftSideLineOwnEnd-ownGroundlineLeft)
## Variables
const int | xPosOpponentFieldBorder = 3000
const int | xPosOpponentGoal = 3000
const int | xPosFrontFlags = 1350
const int | xPosOpponentGoalpost = 2700
const int | xPosOpponentGroundline = 2700
const int | xPosOpponentSideCorner = 2700
const int | xPosOpponentPenaltyArea = 2050
const int | xPosHalfWayLine = 0
const int | xPosOwnPenaltyArea = -xPosOpponentPenaltyArea
const int | xPosOwnSideCorner = -xPosOpponentSideCorner
const int | xPosOwnGroundline = -xPosOpponentGroundline
const int | xPosOwnGoalpost = -xPosOpponentGoalpost
const int | xPosBackFlags = -xPosFrontFlags
const int | xPosOwnGoal = -xPosOpponentGoal
const int | xPosOwnFieldBorder = -xPosOpponentFieldBorder
const int | yPosLeftFieldBorder = 2000
const int | yPosLeftFlags = 1950
const int | yPosLeftSideline = 1800
const int | yPosLeftGroundline = 1800
const int | yPosLeftPenaltyArea = 650
const int | yPosLeftGoal = 400
const int | yPosCenterGoal = 0
const int | yPosRightGoal = -yPosLeftGoal
const int | yPosRightPenaltyArea = -yPosLeftPenaltyArea
const int | yPosRightGroundline = -yPosLeftGroundline
const int | yPosRightSideline = -yPosLeftSideline
const int | yPosRightFlags = -yPosLeftFlags
const int | yPosRightFieldBorder = -yPosLeftFieldBorder
const int | xPosYellowGroundline = xPosOpponentGroundline
const int | xPosYellowSideCorner = xPosOpponentSideCorner
const int | xPosYellowPenaltyArea = xPosOpponentPenaltyArea
const int | xPosBluePenaltyArea = xPosOwnPenaltyArea
const int | xPosBlueSideCorner = xPosOwnSideCorner
const int | xPosBlueGroundline = xPosOwnGroundline
const int | centerCircleRadius = 180
const double | flagRadius = 51.5
const int | flagHeight = 200
const int | flagColorHeight = 100
const int | goalHeight = 300
const int | goalWidth = 2*yPosLeftGoal
const int | goalDepth = xPosOpponentGoal - xPosOpponentGroundline
const double | ballRadius = 43
const int | fieldLinesWidth = 25
const int | xPosThrowInPointOpponentHalf = 1700
const int | xPosThrowInPointCenter = 0
const int | xPosThrowInPointOwnHalf = -xPosThrowInPointOpponentHalf
const int | yPosThrowInPointLeft = yPosLeftSideline - 400
const int | yPosThrowInPointRight = -yPosThrowInPointLeft
const int | numOfLandmarks = 13
const class Landmark | targetPointOnLandmark [numOfLandmarks]
| Points that can act as landmarks! For the goal and the corner posts these points (in 3D) lie on the top-most point of the landmarks.

## Detailed Description

Description of the dimensions of the field.

Author:
  Matthias Jüngel

  Thomas Röfer

Definition in file FieldDimensions.h.

## Define Documentation

#define HUGE_FIELD

| Definition at line 18 of file FieldDimensions.h.

## Function Documentation

const Vector2<int> ownGroundlineLeft | ( | xPosOwnGroundline | ,
|  | yPosLeftGroundline |
| ) | `[static]`

const Vector2<int> ownGroundlineRight | ( | xPosOwnGroundline | ,
|  | yPosRightGroundline |
| ) | `[static]`

const Vector2<int> ownGoalRearPanelMiddle | ( | xPosOwnGoal | ,
|  | yPosCenterGoal |
| ) | `[static]`

const Vector2<int> opponentGoalRearPanelMiddle | ( | xPosOpponentGoal | ,
|  | yPosCenterGoal |
| ) | `[static]`

const Vector2<int> opponentGroundlineLeft | ( | xPosOpponentGroundline | ,
|  | yPosLeftGroundline |
| ) | `[static]`

const Vector2<int> opponentGroundlineRight | ( | xPosOpponentGroundline | ,
|  | yPosRightGroundline |
| ) | `[static]`

const Vector2<int> leftSideLineOwnEnd | ( | xPosOwnSideCorner | ,
|  | yPosLeftSideline |
| ) | `[static]`

const Vector2<int> leftSideLineOpponentEnd | ( | xPosOpponentSideCorner | ,
|  | yPosLeftSideline |
| ) | `[static]`

const Vector2<int> rightSideLineOwnEnd | ( | xPosOwnSideCorner | ,
|  | yPosRightSideline |
| ) | `[static]`

const Vector2<int> rightSideLineOpponentEnd | ( | xPosOpponentSideCorner | ,
|  | yPosRightSideline |
| ) | `[static]`

const Vector2<int> ownGoalLeftPost | ( | xPosOwnGroundline | ,
|  | yPosLeftGoal |
| ) | `[static]`

const Vector2<int> ownGoalRightPost | ( | xPosOwnGroundline | ,
|  | yPosRightGoal |
| ) | `[static]`

const Vector2<int> opponentGoalLeftPost | ( | xPosOpponentGroundline | ,
|  | yPosLeftGoal |
| ) | `[static]`

const Vector2<int> opponentGoalRightPost | ( | xPosOpponentGroundline | ,
|  | yPosRightGoal |
| ) | `[static]`

const Vector2<int> ownGoalLeftRearPanel | ( | xPosOwnGoal | ,
|  | yPosLeftGoal |
| ) | `[static]`

const Vector2<int> ownGoalRightRearPanel | ( | xPosOwnGoal | ,
|  | yPosRightGoal |
| ) | `[static]`

const Vector2<int> opponentGoalLeftRearPanel | ( | xPosOpponentGoal | ,
|  | yPosLeftGoal |
| ) | `[static]`

const Vector2<int> opponentGoalRightRearPanel | ( | xPosOpponentGoal | ,
|  | yPosRightGoal |
| ) | `[static]`

const Geometry::Line leftWall | ( | leftSideLineOwnEnd | ,
|  | leftSideLineOpponentEnd- | leftSideLineOwnEnd
| ) | `[static]`

const Geometry::Line opponentLeftCorner | ( | leftSideLineOpponentEnd | ,
|  | opponentGroundlineLeft- | leftSideLineOpponentEnd
| ) | `[static]`

const Geometry::Line opponentLeftGroundline | ( | opponentGroundlineLeft | ,
|  | opponentGoalLeftPost- | opponentGroundlineLeft
| ) | `[static]`

const Geometry::Line opponentGoalLeftWall | ( | opponentGoalLeftPost | ,
|  | opponentGoalLeftRearPanel- | opponentGoalLeftPost
| ) | `[static]`

const Geometry::Line opponentGoalRearWall | ( | opponentGoalLeftRearPanel | ,
|  | opponentGoalRightRearPanel- | opponentGoalLeftRearPanel
| ) | `[static]`

const Geometry::Line opponentGoalRightWall | ( | opponentGoalRightRearPanel | ,
|  | opponentGoalRightPost- | opponentGoalRightRearPanel
| ) | `[static]`

const Geometry::Line opponentRightGroundline | ( | opponentGoalRightPost | ,
|  | opponentGroundlineRight- | opponentGoalRightPost
| ) | `[static]`

const Geometry::Line opponentRightCorner | ( | opponentGroundlineRight | ,
|  | rightSideLineOpponentEnd- | opponentGroundlineRight
| ) | `[static]`

const Geometry::Line rightWall | ( | rightSideLineOpponentEnd | ,
|  | rightSideLineOwnEnd- | rightSideLineOpponentEnd
| ) | `[static]`

const Geometry::Line ownRightCorner | ( | rightSideLineOwnEnd | ,
|  | ownGroundlineRight- | rightSideLineOwnEnd
| ) | `[static]`

const Geometry::Line ownRightGroundline | ( | ownGroundlineRight | ,
|  | ownGoalRightPost- | ownGroundlineRight
| ) | `[static]`

const Geometry::Line ownGoalRightWall | ( | ownGoalRightPost | ,
|  | ownGoalRightRearPanel- | ownGoalRightPost
| ) | `[static]`

const Geometry::Line ownGoalRearWall | ( | ownGoalRightRearPanel | ,
|  | ownGoalLeftRearPanel- | ownGoalRightRearPanel
| ) | `[static]`

const Geometry::Line ownGoalLeftWall | ( | ownGoalLeftRearPanel | ,
|  | ownGoalLeftPost- | ownGoalLeftRearPanel
| ) | `[static]`

const Geometry::Line ownLeftGroundline | ( | ownGoalLeftPost | ,
|  | ownGroundlineLeft- | ownGoalLeftPost
| ) | `[static]`

const Geometry::Line ownLeftCorner | ( | ownGroundlineLeft | ,
|  | leftSideLineOwnEnd- | ownGroundlineLeft
| ) | `[static]`

## Variable Documentation

const int xPosOpponentFieldBorder = 3000`[static]`

| Definition at line 22 of file FieldDimensions.h.

const int xPosOpponentGoal = 3000`[static]`

| Definition at line 23 of file FieldDimensions.h.

const int xPosFrontFlags = 1350`[static]`

| Definition at line 24 of file FieldDimensions.h.

const int xPosOpponentGoalpost = 2700`[static]`

| Definition at line 25 of file FieldDimensions.h.

const int xPosOpponentGroundline = 2700`[static]`

| Definition at line 26 of file FieldDimensions.h.

const int xPosOpponentSideCorner = 2700`[static]`

| Definition at line 27 of file FieldDimensions.h.

const int xPosOpponentPenaltyArea = 2050`[static]`

| Definition at line 28 of file FieldDimensions.h.

const int xPosHalfWayLine = 0`[static]`

| Definition at line 29 of file FieldDimensions.h.

const int xPosOwnPenaltyArea = -xPosOpponentPenaltyArea`[static]`

| Definition at line 31 of file FieldDimensions.h.

const int xPosOwnSideCorner = -xPosOpponentSideCorner`[static]`

| Definition at line 32 of file FieldDimensions.h.

const int xPosOwnGroundline = -xPosOpponentGroundline`[static]`

| Definition at line 33 of file FieldDimensions.h.

const int xPosOwnGoalpost = -xPosOpponentGoalpost`[static]`

| Definition at line 34 of file FieldDimensions.h.

const int xPosBackFlags = -xPosFrontFlags`[static]`

| Definition at line 35 of file FieldDimensions.h.

const int xPosOwnGoal = -xPosOpponentGoal`[static]`

| Definition at line 36 of file FieldDimensions.h.

const int xPosOwnFieldBorder = -xPosOpponentFieldBorder`[static]`

| Definition at line 37 of file FieldDimensions.h.

const int yPosLeftFieldBorder = 2000`[static]`

| Definition at line 39 of file FieldDimensions.h.

const int yPosLeftFlags = 1950`[static]`

| Definition at line 40 of file FieldDimensions.h.

const int yPosLeftSideline = 1800`[static]`

| Definition at line 41 of file FieldDimensions.h.

const int yPosLeftGroundline = 1800`[static]`

| Definition at line 42 of file FieldDimensions.h.

const int yPosLeftPenaltyArea = 650`[static]`

| Definition at line 43 of file FieldDimensions.h.

const int yPosLeftGoal = 400`[static]`

| Definition at line 44 of file FieldDimensions.h.

const int yPosCenterGoal = 0`[static]`

| Definition at line 45 of file FieldDimensions.h.

const int yPosRightGoal = -yPosLeftGoal`[static]`

| Definition at line 46 of file FieldDimensions.h.

const int yPosRightPenaltyArea = -yPosLeftPenaltyArea`[static]`

| Definition at line 47 of file FieldDimensions.h.

const int yPosRightGroundline = -yPosLeftGroundline`[static]`

| Definition at line 48 of file FieldDimensions.h.

const int yPosRightSideline = -yPosLeftSideline`[static]`

| Definition at line 49 of file FieldDimensions.h.

const int yPosRightFlags = -yPosLeftFlags`[static]`

| Definition at line 50 of file FieldDimensions.h.

const int yPosRightFieldBorder = -yPosLeftFieldBorder`[static]`

| Definition at line 51 of file FieldDimensions.h.

const int xPosYellowGroundline = xPosOpponentGroundline`[static]`

| Definition at line 54 of file FieldDimensions.h.

const int xPosYellowSideCorner = xPosOpponentSideCorner`[static]`

| Definition at line 55 of file FieldDimensions.h.

const int xPosYellowPenaltyArea = xPosOpponentPenaltyArea`[static]`

| Definition at line 56 of file FieldDimensions.h.

const int xPosBluePenaltyArea = xPosOwnPenaltyArea`[static]`

| Definition at line 57 of file FieldDimensions.h.

const int xPosBlueSideCorner = xPosOwnSideCorner`[static]`

| Definition at line 58 of file FieldDimensions.h.

const int xPosBlueGroundline = xPosOwnGroundline`[static]`

| Definition at line 59 of file FieldDimensions.h.

const int centerCircleRadius = 180`[static]`

| Definition at line 62 of file FieldDimensions.h.

const double flagRadius = 51.5`[static]`

| Definition at line 63 of file FieldDimensions.h.

const int flagHeight = 200`[static]`

| Definition at line 64 of file FieldDimensions.h.

const int flagColorHeight = 100`[static]`

| Definition at line 65 of file FieldDimensions.h.

const int goalHeight = 300`[static]`

| Definition at line 66 of file FieldDimensions.h.

const int goalWidth = 2*yPosLeftGoal`[static]`

| Definition at line 67 of file FieldDimensions.h.

const int goalDepth = xPosOpponentGoal - xPosOpponentGroundline`[static]`

| Definition at line 68 of file FieldDimensions.h.

const double ballRadius = 43`[static]`

| Definition at line 69 of file FieldDimensions.h.

const int fieldLinesWidth = 25`[static]`

| Definition at line 70 of file FieldDimensions.h.

const int xPosThrowInPointOpponentHalf = 1700`[static]`

| Definition at line 73 of file FieldDimensions.h.

const int xPosThrowInPointCenter = 0`[static]`

| Definition at line 74 of file FieldDimensions.h.

const int xPosThrowInPointOwnHalf = -xPosThrowInPointOpponentHalf`[static]`

| Definition at line 75 of file FieldDimensions.h.

const int yPosThrowInPointLeft = yPosLeftSideline - 400`[static]`

| Definition at line 76 of file FieldDimensions.h.

const int yPosThrowInPointRight = -yPosThrowInPointLeft`[static]`

| Definition at line 77 of file FieldDimensions.h.

const int numOfLandmarks = 13`[static]`

| Definition at line 365 of file FieldDimensions.h.

const class Landmark targetPointOnLandmark[numOfLandmarks]`[static]`

| Points that can act as landmarks! For the goal and the corner posts these points (in 3D) lie on the top-most point of the landmarks. This is because when looking at them, headcontrol looks