Main Content

GroundTrack

Ground track object belonging to satellite in scenario

    Description

    The GroundTrack object defines a ground track object belonging to a satellite in a scenario.

    Creation

    You can create a GroundTrack object using the groundTrack object function of the Satellite object.

    Properties

    expand all

    Period of the ground track to be visualized in the satellite scenario viewer, specified as a comma-separated pair consisting of 'LeadTime' and a real positive scalar in seconds.

    Period of the ground track history to be visualized in Viewer, specified as a comma-separated pair consisting of 'TrailTime' and a real positive scalar in seconds.

    Visual width of the ground track in pixels, specified as a comma-separated pair consisting of 'LineWidth' and a scalar in the range (0 10].

    The line width cannot be thinner than the width of a pixel. If you set the line width to a value that is less than the width of a pixel on your system, the line displays as one pixel wide.

    Color of the future ground track line, specified as a comma-separated pair consisting of 'LeadLineColor' and an RGB triplet, a hexadecimal color code, a color name, or a short name.

    For a custom color, specify an RGB triplet or a hexadecimal color code.

    • An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1]; for example, [0.4 0.6 0.7].

    • A hexadecimal color code is a character vector or a string scalar that starts with a hash symbol (#) followed by three or six hexadecimal digits, which can range from 0 to F. The values are not case sensitive. Thus, the color codes '#FF8800', '#ff8800', '#F80', and '#f80' are equivalent.

    Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.

    Color NameShort NameRGB TripletHexadecimal Color CodeAppearance
    'red''r'[1 0 0]'#FF0000'

    Sample of the color red

    'green''g'[0 1 0]'#00FF00'

    Sample of the color green

    'blue''b'[0 0 1]'#0000FF'

    Sample of the color blue

    'cyan' 'c'[0 1 1]'#00FFFF'

    Sample of the color cyan

    'magenta''m'[1 0 1]'#FF00FF'

    Sample of the color magenta

    'yellow''y'[1 1 0]'#FFFF00'

    Sample of the color yellow

    'black''k'[0 0 0]'#000000'

    Sample of the color black

    'white''w'[1 1 1]'#FFFFFF'

    Sample of the color white

    'none'Not applicableNot applicableNot applicableNo color

    Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB® uses in many types of plots.

    RGB TripletHexadecimal Color CodeAppearance
    [0 0.4470 0.7410]'#0072BD'

    Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

    [0.8500 0.3250 0.0980]'#D95319'

    Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

    [0.9290 0.6940 0.1250]'#EDB120'

    Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

    [0.4940 0.1840 0.5560]'#7E2F8E'

    Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

    [0.4660 0.6740 0.1880]'#77AC30'

    Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

    [0.3010 0.7450 0.9330]'#4DBEEE'

    Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

    [0.6350 0.0780 0.1840]'#A2142F'

    Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

    Example: 'blue'

    Example: [0 0 1]

    Example: '#0000FF'

    Color of the ground track line history, specified as a comma-separated pair consisting of 'TrailLineColor' and an RGB triplet, a hexadecimal color code, a color name, or a short name.

    For a custom color, specify an RGB triplet or a hexadecimal color code.

    • An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1]; for example, [0.4 0.6 0.7].

    • A hexadecimal color code is a character vector or a string scalar that starts with a hash symbol (#) followed by three or six hexadecimal digits, which can range from 0 to F. The values are not case sensitive. Thus, the color codes '#FF8800', '#ff8800', '#F80', and '#f80' are equivalent.

    Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.

    Color NameShort NameRGB TripletHexadecimal Color CodeAppearance
    'red''r'[1 0 0]'#FF0000'

    Sample of the color red

    'green''g'[0 1 0]'#00FF00'

    Sample of the color green

    'blue''b'[0 0 1]'#0000FF'

    Sample of the color blue

    'cyan' 'c'[0 1 1]'#00FFFF'

    Sample of the color cyan

    'magenta''m'[1 0 1]'#FF00FF'

    Sample of the color magenta

    'yellow''y'[1 1 0]'#FFFF00'

    Sample of the color yellow

    'black''k'[0 0 0]'#000000'

    Sample of the color black

    'white''w'[1 1 1]'#FFFFFF'

    Sample of the color white

    'none'Not applicableNot applicableNot applicableNo color

    Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB uses in many types of plots.

    RGB TripletHexadecimal Color CodeAppearance
    [0 0.4470 0.7410]'#0072BD'

    Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

    [0.8500 0.3250 0.0980]'#D95319'

    Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

    [0.9290 0.6940 0.1250]'#EDB120'

    Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

    [0.4940 0.1840 0.5560]'#7E2F8E'

    Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

    [0.4660 0.6740 0.1880]'#77AC30'

    Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

    [0.3010 0.7450 0.9330]'#4DBEEE'

    Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

    [0.6350 0.0780 0.1840]'#A2142F'

    Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

    Example: 'blue'

    Example: [0 0 1]

    Example: '#0000FF'

    Visibility mode of the ground track, specified as either one of these values:

    • 'inherit' — Visibility of the graphic matches that of the parent

    • 'manual' — Visibility of the graphic is not inherited and is independent of that of the parent

    Object Functions

    showShow object in satellite scenario viewer

    Examples

    collapse all

    Create a satellite scenario object.

    startTime = datetime(2020,5,10);
    stopTime = startTime + days(5);
    sampleTime = 60;                                       % seconds
    sc = satelliteScenario(startTime,stopTime,sampleTime);

    Calculate the semimajor axis of the geosynchronous satellite.

    earthAngularVelocity = 0.0000729211585530;                                             % rad/s
    orbitalPeriod = 2*pi/earthAngularVelocity;                                             % seconds
    earthStandardGravitationalParameter = 398600.4418e9;                                   % m^3/s^2
    semiMajorAxis = (earthStandardGravitationalParameter*((orbitalPeriod/(2*pi))^2))^(1/3);

    Define the remaining orbital elements of the geosynchronous satellite.

    eccentricity = 0;
    inclination = 60;                  % degrees
    rightAscensionOfAscendingNode = 0; % degrees
    argumentOfPeriapsis = 0;           % degrees
    trueAnomaly = 0;                   % degrees

    Add the geosynchronous satellite to the scenario.

    sat = satellite(sc,semiMajorAxis,eccentricity,inclination,rightAscensionOfAscendingNode,...
            argumentOfPeriapsis,trueAnomaly,"OrbitPropagator","two-body-keplerian","Name","GEO Sat");

    Visualize the scenario using the Satellite Scenario Viewer.

    v = satelliteScenarioViewer(sc);

    Add a ground track of the satellite to the visualization and adjust how much of the future and history of the ground track to display.

    leadTime = 2*24*3600;                                          % seconds
    trailTime = leadTime;
    gt = groundTrack(sat,"LeadTime",leadTime,"TrailTime",trailTime)
    gt = 
      GroundTrack with properties:
    
              LeadTime: 172800
             TrailTime: 172800
             LineWidth: 1
         LeadLineColor: [1 0 1]
        TrailLineColor: [1 0.5000 0]
        VisibilityMode: 'inherit'
    
    

    Visualize the satellite movement and its trace on the ground. The satellite covers the area around Japan during one half of the day and Australia during the other half.

    play(sc);

    Introduced in R2021a