######################################################## # convert prism angle to its vertical and horizontal components ######################################################## sub convertPrismData { my($lr) = $_[0]; my($q2q3,$q1q4); if ($lr == 0) { # OD setup $q2q3 = "OUT"; $q1q4 = "IN"; } else { # OS setup $q2q3 = "IN"; $q1q4 = "OUT"; } my $vertical_component = round($_[1]->[0] * sin($_[1]->[2] * PI/180.0) * 100.0) / 100.0; my $horizontal_component = round($_[1]->[0] * cos($_[1]->[2] * PI/180.0) * 100.0) / 100.0; $_[1]->[0] = abs($vertical_component); $_[1]->[1] = (($vertical_component < 0) ? "DOWN" : "UP"); $_[1]->[3] = abs($horizontal_component); $_[1]->[4] = (($horizontal_component < 0) ? $q2q3 : $q1q4); return; }