Rinchi::CIGIPP::PositionResponse - Perl extension for the Common Image Generator Interface - Position Response data packet. data packet. =head1 SYNOPSIS
use Rinchi::CIGIPP::PositionResponse; my $pos_resp = Rinchi::CIGIPP::PositionResponse->new(); $packet_type = $pos_resp->packet_type(); $packet_size = $pos_resp->packet_size(); $object_ident = $pos_resp->object_ident(8699); $articulated_part_ident = $pos_resp->articulated_part_ident(116); $coordinate_system = $pos_resp->coordinate_system(Rinchi::CIGIPP->ParentEntityCS); $object_class = $pos_resp->object_class(Rinchi::CIGIPP->ArticulatedPartOC); $latitude = $pos_resp->latitude(27.645); $x_offset = $pos_resp->x_offset(26.409); $longitude = $pos_resp->longitude(55.496); $y_offset = $pos_resp->y_offset(48.675); $altitude = $pos_resp->altitude(24.851); $z_offset = $pos_resp->z_offset(47.335); $roll = $pos_resp->roll(8.422); $pitch = $pos_resp->pitch(84.2); $yaw = $pos_resp->yaw(42.084);
The Position Response packet is sent by the IG in response to a Position Request packet. This packet describes the position and orientation of an entity, articulated part, view, view group, or motion tracker.
None by default.
#==============================================================================
Constructor for Rinchi::PositionResponse.
$value = $pos_resp->packet_type();
Data Packet Identifier.
This attribute identifies this data packet as the Position Response packet. The value of this attribute must be 108.
$value = $pos_resp->packet_size();
Data Packet Size.
This attribute indicates the number of bytes in this data packet. The value of this attribute must be 48.
$value = $pos_resp->object_ident($newValue);
Object ID.
This attribute identifies the entity, view, view group, or motion tracking device whose position is being reported. If Object Class is set to Articulated Part (1), this attribute indicates the entity whose part is identified by the Articulated Part ID attribute.
$value = $pos_resp->articulated_part_ident($newValue);
Articulated Part ID.
This attribute identifies the articulated part whose position is being reported. The entity to which the part belongs is specified by the Object ID attribute. This attribute is valid only when Object Class is set to Articulated Part (1).
$value = $pos_resp->coordinate_system($newValue);
Coordinate System.
This attribute indicates the coordinate system in which the position and orientation are specified.
Geodetic – Position is specified as a geodetic latitude, longitude, and altitude. Orientation is given with respect to the reference plane.
Parent Entity – Position and orientation are with respect to the entity to which the specified child entity, articulated part, view, or view group is attached. This value is invalid for top-level entities.
Submodel – Position and orientation are with respect to the articulated part's reference coordinate system. This value is valid only when Object Class is set to Articulated Part (1).
Note: If Object Class is set to Motion Tracker (4), this attribute is ignored and the positional and rotational data are relative to the tracking device boresight state.
GeodeticCS 0 ParentEntityCS 1 SubmodelCS 2
$value = $pos_resp->object_class($newValue);
Object Class.
This attribute indicates the type of object whose position is being reported.
EntityOC 0 ArticulatedPartOC 1 ViewOC 2 ViewGroupOC 3 MotionTrackerOC 4
$value = $pos_resp->latitude($newValue);
Latitude.
If Coordinate System is set to Geodetic (0), this attribute indicates the geodetic latitude of the entity, articulated part, view, or view group.
$value = $pos_resp->x_offset($newValue);
X Offset.
If Coordinate System is set to Parent Entity (1), this attribute indicates the X offset from the parent entity's origin to the child entity, articulated part, view, or view group.
If Coordinate System is set to Submodel (2), this attribute indicates the X offset from the articulated part submodel's reference point.
If Object Class is set to Motion Tracker (4), this attribute indicates the X position reported by the tracking device.
$value = $pos_resp->longitude($newValue);
Longitude.
If Coordinate System is set to Geodetic (0), this attribute indicates the geodetic longitude of the entity, articulated part, view, or view group.
$value = $pos_resp->y_offset($newValue);
Y Offset.
If Coordinate System is set to Parent Entity (1), this attribute indicates the Y offset from the parent entity's origin to the child entity, articulated part, view, or view group.
If Coordinate System is set to Submodel (2), this attribute indicates the Y offset from the articulated part submodel's reference point.
If Object Class is set to Motion Tracker (4), this attribute indicates the Y position reported by the tracking device.
$value = $pos_resp->altitude($newValue);
Altitude.
If Coordinate System is set to Geodetic (0), this attribute indicates the geodetic altitude of the entity, articulated part, view, or view group.
$value = $pos_resp->z_offset($newValue);
Z Offset.
If Coordinate System is set to Parent Entity (1), this attribute indicates the Z offset from the parent entity's origin to the child entity, articulated part, view, or view group.
If Coordinate System is set to Submodel (2), this attribute indicates the Z offset from the articulated part submodel's reference point.
If Object Class is set to Motion Tracker (4), this attribute indicates the Z position reported by the tracking device.
$value = $pos_resp->roll($newValue);
Roll.
This attribute indicates the roll angle of the specified entity, articulated part, view, or view group.
If Object Class is set to Motion Tracker (4), this attribute indicates the roll angle reported by the tracking device.
$value = $pos_resp->pitch($newValue);
Pitch.
This attribute indicates the pitch angle of the specified entity, articulated part, view, or view group.
If Object Class is set to Motion Tracker (4), this attribute indicates the pitch angle reported by the tracking device.
$value = $pos_resp->yaw($newValue);
Yaw.
This attribute indicates the yaw angle of the specified entity, articulated part, view, or view group.
If Object Class is set to Motion Tracker (4), this attribute indicates the yaw angle reported by the tracking device.
$value = $pos_resp->pack();
Returns the packed data packet.
$value = $pos_resp->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.
3 POD Errors
The following errors were encountered while parsing the POD:
'=item' outside of any '=over'
Non-ASCII character seen before =encoding in '–'. Assuming UTF-8
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.