Astro-App-Satpass2
view release on metacpan or search on metacpan
t/format_value.t view on Meta::CPAN
package main;
use 5.008;
use strict;
use warnings;
use Test2::V0;
use lib qw{ inc };
use My::Module::Test::App qw{ load_or_skip };
use Astro::Coord::ECI 0.059;
use Astro::Coord::ECI::Moon 0.059;
use Astro::Coord::ECI::TLE 0.059;
use Astro::Coord::ECI::Utils 0.059 qw{ deg2rad PI };
use Astro::App::Satpass2::FormatTime;
use Astro::App::Satpass2::FormatValue;
# Note that the following are _not_ real Keplerian elements for the
# International Space Station, or in fact any other orbiting body. The
# only data known to be real are the id, the name, and the internatinal
# launch designator. Instead of doing an actual position calculation, we
# simply set the model to 'null', and then set the ECI position we want.
my $time = 1223594621; # 09-Oct-2008 23:23:41
my $epoch = 1223549582; # 09-Oct-2008 10:53:02
my $body = Astro::Coord::ECI::TLE->new(
model => 'null',
id => 25544,
name => 'ISS',
classification => 'U',
effective => $epoch - 1800,
epoch => $epoch,
meanmotion => °2rad(3.930270155),
eccentricity => 0.0004029,
inclination => °2rad(51.6426),
international => '98067A',
firstderivative => °2rad(1.23456789e-8),
secondderivative => °2rad(1.23456789e-20),
bstardrag => 8.2345e-5,
ephemeristype => 0,
ascendingnode => °2rad(159.8765),
argumentofperigee => °2rad(198.7654),
meananomaly => °2rad(279.8765),
elementnumber => 456,
revolutionsatepoch => 56789,
intrinsic_magnitude => -0.5,
)->geodetic(°2rad(34.0765), °2rad(-74.2084), 353.9
)->universal($time);
my $moon = Astro::Coord::ECI::Moon->new();
my $station = Astro::Coord::ECI->new(
name => '1600 Pennsylvania Ave NW, Washington DC 20502'
)->geodetic(
deg2rad( 38.898748 ),
deg2rad( -77.037684 ),
16.68 / 1000,
);
my %default;
my $time_formatter = Astro::App::Satpass2::FormatTime->new()->gmt( 1 );
create( data => {
almanac => {
event => 'horizon',
detail => 1,
description => 'Sun rise',
},
},
default => \%default,
'Create formatter for almanac description data' );
call_m( almanac => [],
'Sun rise ',
'Almanac event description' );
call_m( almanac => [ field => 'description', width => '' ],
'Sun rise',
'Almanac event description (explicit, no width)' );
( run in 0.382 second using v1.01-cache-2.11-cpan-39bf76dae61 )