public PolarisCameraController()
 {
     for (int i = 0; i < RigidBodies.Length; i++)
     {
         RigidBodies[i] = new PolarisRigidBodyManager();
     }
     UpdateRigidBodies();
 }
        void ParseSinglePolarisString(string bodyString, ref PolarisRigidBodyManager rbodyMan)
        {
            int    offset = 2;
            string qo     = bodyString.Substring(offset, 6);

            offset += 6;
            string qx = bodyString.Substring(offset, 6);

            offset += 6;
            string qy = bodyString.Substring(offset, 6);

            offset += 6;
            string qz = bodyString.Substring(offset, 6);

            offset += 6;
            string tx = bodyString.Substring(offset, 7);

            offset += 7;
            string ty = bodyString.Substring(offset, 7);

            offset += 7;
            string tz = bodyString.Substring(offset, 7);

            offset += 7;

            PolarisRigidBody rbody;

            rbody.qo               = ConvertRotationToDouble(qo);
            rbody.qx               = ConvertRotationToDouble(qx);
            rbody.qy               = ConvertRotationToDouble(qy);
            rbody.qz               = ConvertRotationToDouble(qz);
            rbody.x                = ConvertPositionToDouble(tx);
            rbody.y                = ConvertPositionToDouble(ty);
            rbody.z                = ConvertPositionToDouble(tz);
            rbody.isInRange        = true;
            rbody.numberOfAverages = 0;

            rbodyMan.PushRBodyReading(rbody);
        }
 void ClearRigidBodyData(ref PolarisRigidBodyManager rigid)
 {
     rigid.ClearReadings();
 }