Skip to main content

Football features

The features a football surface is drawn from (sportypy._feature_classes.football).

BaseFootballFeature​

An extension of the BaseFeature class for football features.

The following attributes are specific to football features only. For more information on inherited attributes, please see the BaseFeature class definition. The default values are provided to ensure that the feature can at least be created.

Attributes​

  • field_length (float): The length of the field in TV view. The default is 0.0
  • field_width (float): The width of the field in TV view. The default is 0.0
  • feature_radius (float): The radius needed to draw the feature. This may not be needed for all features. The default is 0.0
  • feature_thickness (float): The thickness with which to draw the feature. This is normally given as the horizontal width of the feature in TV view, however it may be used to specify other thicknesses as needed. The default is 0.0
  • field_units (str): The units with which the feature is drawn. The default is "yd"

FieldConstraint​

The constraint around the interior edge of the field's boundary lines.

This confines all interior features to be constrained inside the field, as well as any interior plots.

Attributes​

  • endzone_length (float): The length of the endzone in TV view. This is measured from the field side of the goal line

HalfField​

The half of the field.

This may be either the offensive or defensive half of the field

FieldApron​

The apron of the field.

The field should have an apron to appropriately see all out-of-bounds features. This is typically the same color as the field itself, but will be created separately so as to allow for more customized plotting

Attributes​

  • endzone_length (float): The length of the endzone in TV view. This is measured from the field side of the goal line
  • boundary_line_thickness (float): The thickness of the boundary lines. This should not include any border around the sidelines, the restricted areas, or team bench areas
  • field_border_thickness (float): The thickness of the border around the field. This will be uniform around the entirety of the field. This should not include the thickness of the boundary lines
  • restricted_area_length (float): The length of the restricted area in the direction parallel to the sideline of the field
  • coaching_box_length (float): The length of the coaching box in the direction parallel to the sideline of the field
  • coaching_box_width (float): The width of the coaching box
  • team_bench_length_field_side (float): The length of the team bench's edge closest to the field
  • team_bench_length_back_side (float): The length of the team bench's edge furthest from the field
  • team_bench_width (float): The width of the team bench area
  • team_bench_area_border_thickness (float): The thickness of the border around the team bench area. This should not include any borders around the field
  • extra_apron_padding (float): Any additional padding around the field apron
  • bench_shape (str): The shape of the bench area. This should be either "rectangle" or "trapezoid"

Endzone​

The endzones.

The area beyond the goal line.

Attributes​

  • endzone_length (float): The length of the endzone in TV view. This is measured from the field side of the goal line

EndLine​

The line beyond the endzone.

The end line is typically white in color, and its interior edge is out of bounds

Sideline​

The lines that run the length of the field.

The sidelines are typically white in color, and its interior edge is out of bounds

Attributes​

  • endzone_length (float): The length of the endzone in TV view. This is measured from the field side of the goal line

FieldBorder​

The border around the outside of the sideline and end line.

This is not present on every field, but is not the same as the sideline or end line (although they may be the same in color)

Attributes​

  • endzone_length (float): The length of the endzone in TV view. This is measured from the field side of the goal line
  • boundary_line_thickness (float): The thickness of the boundary lines. This should not include any border around the sidelines, the restricted areas, or team bench areas
  • field_border_thickness (float): The thickness of the border around the field. This will be uniform around the entirety of the field. This should not include the thickness of the boundary lines
  • restricted_area_length (float): The length of the restricted area in the direction parallel to the sideline of the field
  • restricted_area_width (float): The width of the restricted area
  • coaching_box_length (float): The length of the coaching box in the direction parallel to the sideline of the field
  • coaching_box_width (float): The width of the coaching box
  • team_bench_length_field_side (float): The length of the team bench's edge closest to the field
  • team_bench_length_back_side (float): The length of the team bench's edge furthest from the field
  • team_bench_width (float): The width of the team bench area
  • team_bench_border_thickness (float): The thickness of the border around the team bench area. This should not include any borders around the field
  • surrounds_team_bench_area (bool): Whether or not the field border should surround the team bench area
  • bench_shape (str): The shape of the bench area. This should be either "rectangle" or "trapezoid"

RedZoneBorder​

The border of the red zone.

The field border may have a different color along the red zone than it does along the rest of the field. This is not always the case, but the feature is provided for convenience

RedZoneBorderOutline​

The outline of the border of the red zone.

The outline of the border of the red zone may be a different color than the rest of the field border outline. THis is not always the case, but the feature is provided for convenience

FieldBorderOutline​

The outline of the border around the field.

This is not present on every field, but is not the same as the sideline or end line (although they may be the same in color)

Attributes​

  • endzone_length (float): The length of the endzone in TV view. This is measured from the field side of the goal line
  • boundary_line_thickness (float): The thickness of the boundary lines. This should not include any border around the sidelines, the restricted areas, or team bench areas
  • field_border_thickness (float): The thickness of the border around the field. This will be uniform around the entirety of the field. This should not include the thickness of the boundary lines
  • restricted_area_length (float): The length of the restricted area in the direction parallel to the sideline of the field
  • restricted_area_width (float): The width of the restricted area
  • coaching_box_length (float): The length of the coaching box in the direction parallel to the sideline of the field
  • coaching_box_width (float): The width of the coaching box
  • team_bench_length_field_side (float): The length of the team bench's edge closest to the field
  • team_bench_length_back_side (float): The length of the team bench's edge furthest from the field
  • team_bench_width (float): The width of the team bench area
  • team_bench_border_thickness (float): The thickness of the border around the team bench area. This should not include any borders around the field
  • surrounds_team_bench_area (bool): Whether or not the field border should surround the team bench area
  • bench_shape (str): The shape of the bench area. This should be either "rectangle" or "trapezoid"

MajorYardLine​

The major yard lines on the field.

These are the yard lines that span the entire width of the field

Attributes​

  • dist_to_sideline (float): The distance separating the major yard line from the interior edge of the boundary lines
  • cross_hash_length (float): The length, in TV view, of the hash mark that crosses major yard lines
  • cross_hash_separation (float): The separation between the hash marks (i.e. the minor yard lines) when measured from their interior edges
  • yard_line_name (str): The name of the yard line. This is to make identifying them easier, but have no bearing on the final plot

GoalLine​

The goal line.

The interior edge (relative to the field of play) should lie at the 0 yard line. The center of the 1 yard line should be exactly 1 yard from this edge of the goal line

MinorYardLine​

The minor yard lines on the field.

These are the yard lines spaced closer than every five yards on the field

Attributes​

  • yard_line_height (float): The height of the minor yard lines on the field in the y direction when viewing the field in TV view
  • yard_line_name (str): The name of the yard line. This is to make identifying them easier, but have no bearing on the final plot

Arrow​

The arrows pointing to the nearest end zone.

These arrows are described by their base (which runs parallel to the goal line) and their length, which extends from the tip to the base

Attributes​

  • arrow_base (float): The length of the base of the directional arrow. This is the component of the arrow that is parallel to the major yard line to which the arrow corresponds
  • arrow_length (float): The distance between the tip of the directional arrow and the base

TryMark​

The marking where a two-point try begins.

This is usually around the two or three yard line and located in the vertical center of the field (in TV view)

Attributes​

  • try_mark_width (float): The width of the try mark

RestrictedArea​

The restricted area.

This is the area between the coaching box and the exterior edge of the sideline

Attributes​

  • restricted_area_length (float): The length of the restricted area

CoachingBoxLine​

The line separating the coaching box from the team bench area.

The line should be a different color than either the team bench area or the coaching box

Attributes​

  • coaching_box_line_length (float): The length of the coaching box line in the x direction when viewing the field in TV view

CoachingBox​

The coaching box.

This is the area beyond the restricted area designated for coaches. It is between the restricted area and the team area

Attributes​

  • coaching_box_length (float): The length of the coaching box in the direction parallel to the sideline of the field

TeamBenchArea​

The team bench area.

This is the area beyond the restricted area and coaching box. It is where the team benches, non-playing players, and team staff are to remain during the game

Attributes​

  • team_bench_length_field_side (float): The length of the team bench's edge closest to the field
  • team_bench_length_back_side (float): The length of the team bench's edge furthest from the field
  • team_bench_width (float): The width of the team bench area

TeamBenchAreaOutline​

The outline of the bench area (border, not broken line).

The border may not be necessary in all drawings

Attributes​

  • restricted_area_length (float): The length of the restricted area in the direction parallel to the sideline of the field
  • restricted_area_width (float): The width of the restricted area
  • coaching_box_length (float): The length of the coaching box in the direction parallel to the sideline of the field
  • coaching_box_width (float): The width of the coaching box
  • team_bench_length_field_side (float): The length of the team bench's edge closest to the field
  • team_bench_length_back_side (float): The length of the team bench's edge furthest from the field
  • team_bench_width (float): The width of the team bench area