Rinchi::CIGIPP::MaritimeSurfaceConditionsControl - Perl extension for the Common Image Generator Interface - Maritime Surface Conditions Control data packet. data packet. =head1 SYNOPSIS
use Rinchi::CIGIPP::MaritimeSurfaceConditionsControl; my $msc_ctl = Rinchi::CIGIPP::MaritimeSurfaceConditionsControl->new(); $packet_type = $msc_ctl->packet_type(); $packet_size = $msc_ctl->packet_size(); $entity_ident = $msc_ctl->entity_ident(51957); $region_ident = $msc_ctl->region_ident(64233); $scope = $msc_ctl->scope(Rinchi::CIGIPP->GlobalScope); $whitecap_enable = $msc_ctl->whitecap_enable(Rinchi::CIGIPP->Disable); $surface_conditions_enable = $msc_ctl->surface_conditions_enable(Rinchi::CIGIPP->Disable); $sea_surface_height = $msc_ctl->sea_surface_height(32.113); $surface_water_temperature = $msc_ctl->surface_water_temperature(0.898); $surface_clarity = $msc_ctl->surface_clarity(56.091);
The Maritime Surface Conditions Control packet is used to specify the surface behavior for seas and other bodies of water. This packet is used in conjunction with the Weather Control and Wave Control packets to define sea states.
Regional maritime surface conditions always take precedence over the global surface conditions. Once the surface conditions of a region are set, global changes will not affect the surface conditions within that region unless it is disabled. Global changes will, however, contribute to the conditions within a region's transition perimeter.
If two or more regions overlap, the value of each surface condition attribute defining the sea state within the area of overlap should be the average of the values determined by overlapping the regions.
To determine the maritime surface conditions within areas of overlap or through a transition perimeter, the Host can request the conditions at a specific latitude and longitude by issuing an Environmental Conditions Request packet. The Host can request the instantaneous height of the water surface at a specific latitude and longitude by sending a HAT/HOT Request packet.
None by default.
#==============================================================================
Constructor for Rinchi::MaritimeSurfaceConditionsControl.
$value = $msc_ctl->packet_type();
Data Packet Identifier.
This attribute identifies this data packet as the Maritime Surface Conditions Control packet. The value of this attribute must be 13.
$value = $msc_ctl->packet_size();
Data Packet Size.
This attribute indicates the number of bytes in this data packet. The value of this attribute must be 24.
$value = $msc_ctl->entity_ident($newValue);
Entity ID. (Entity-based Surface Conditions)
This attribute specifies the entity to which the surface attributes in this packet are applied.
$value = $msc_ctl->region_ident($newValue);
Region ID. (Regional Surface Conditions)
This attribute specifies the region to which the surface attributes are confined. Note: Entity ID/Region ID is ignored if Scope is set to Global (0).
$value = $msc_ctl->scope($newValue);
Scope.
This attribute specifies whether this packet is applied globally, applied to a region, or assigned to an entity. If this value is set to Regional (1), the surface condition properties are applied only within the region specified by Region ID. If this value is set to Entity (2), the properties are applied to the area defined by the moving model specified by Entity ID.
GlobalScope 0 RegionalScope 1 EntityScope 2
$value = $msc_ctl->whitecap_enable($newValue);
Whitecap Enable.
This attribute determines whether whitecaps are enabled.
Disable 0 Enable 1
$value = $msc_ctl->surface_conditions_enable($newValue);
Surface Conditions Enable.
This attribute determines the state of the specified surface conditions. If this attribute is set to Disable (0), the surface conditions within the region or entity are the same as the global maritime surface conditions. If the attribute is set to Enable (1), the surface conditions are defined by this packet. This attribute is ignored if Scope is set to Global (0).
$value = $msc_ctl->sea_surface_height($newValue);
Sea Surface Height.
This attribute specifies the height of the water above MSL at equilibrium. This attribute can also be used to specify the tide level within the surf zone.
$value = $msc_ctl->surface_water_temperature($newValue);
Surface Water Temperature.
This attribute specifies in degrees Celsius the water temperature at the surface.
$value = $msc_ctl->surface_clarity($newValue);
Surface Clarity.
This attribute specifies the clarity of the water at its surface. This is used to control the visual effect of the water's turbidity and sediment type. A value of 100% indicates pristine water. A value of 0% indicates extremely turbid water.
$value = $msc_ctl->pack();
Returns the packed data packet.
$value = $msc_ctl->unpack();
Unpacks the packed data packet.
$obj_name->byte_swap();
Byte swaps the packed data packet.
Refer the the Common Image Generator Interface ICD which may be had at this URL: http://cigi.sourceforge.net/specification.php
Brian M. Ames, <bmames@apk.net>
Copyright (C) 2009 by Brian M. Ames
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.6 or, at your option, any later version of Perl 5 you may have available.
2 POD Errors
The following errors were encountered while parsing the POD:
'=item' outside of any '=over'
You forgot a '=back' before '=head1'
To install Rinchi::CIGIPP, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Rinchi::CIGIPP
CPAN shell
perl -MCPAN -e shell install Rinchi::CIGIPP
For more information on module installation, please visit the detailed CPAN module installation guide.