亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? timetable.cpp

?? gpstk1.5的有關(guān)內(nèi)容 對于剛剛接觸gps有一定的幫助 很有用的啊
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
         oflog << "Found the begin time: " << *ttit << endl;         TTab.push_back(*ttit);         beg = ttit->end;         TTS.erase(ttit);         break;      }   }   if(beg == endcount) {      // one segment covers it all - done!      oflog << "One segment covers it all!" << endl;      end = endcount;   }   else {      // find the end point      for(ttit=TTS.begin(); ttit != TTS.end(); ttit++) {         if(ttit->end == endcount) {            oflog << "Found the   end time: " << *ttit << endl;            TTab.push_back(*ttit);            end = ttit->start;            TTS.erase(ttit);            break;         }      }      if(TTab.size() != 2) {         // error, we didn't find the beg and end -- throw?         return -2;      }   }   // start list of segs with the ones that contain endpoints   ttit = TTab.begin();   Segs.push_back(make_pair(ttit->start,ttit->end));   ttit++;   if(ttit != TTab.end())      Segs.push_back(make_pair(ttit->start,ttit->end));   if(beg >= end) { // two segments cover it all      if(Segs.size() > 1) {            // TD unsure if the logic is wrong here...         ljt = lit = Segs.begin();         ljt++;         lit->second = ljt->second;         if(CI.Debug) oflog << "Two segments cover it all: erase seg ("            << ljt->first << "-" << ljt->second << ")" << endl;         Segs.erase(ljt);      }   }   else {      // 2.      // start with       // |======1st Seg======|            gap                 |=====last Seg======|      //      // in general, new segs can be added, so Segs looks like this:      // |===1st Seg===|    gap       |===2nd Seg===|    gap       |===last Seg===|      //      // consider 8 cases of new segments from TTS:      // 1.   |--------------|                               covers end of seg      // 2.               |-------|                          lies entirely w/in gap      // 3.                     |--------|                   covers beg of seg      // 4.         |--------------------|                   covers entire gap      // 5.                      |----------------------|    covers entire seg      // 6. covers seg and gap   |-------------------------------------|      // 7.         |-------------------------------------|  covers gap and seg      // 8.                               |-----|            lies entirely w/in seg      //      // Here is the algorithm:      // for each new segment extending from b to e      // for each i in list of segments in list (extending bi to ei) {      // if(b > ei) skip to the next i      // if(e > ei) {                              // b <= ei and e > ei      //    mod seg i so that ei -> e              // case 1,4,7      //    if(b < bi) mod seg i so that bi -> b   // case 5,6      //    while (e >= bj) where j > i,      //       merge segments i and j and delete j // case 4,6,7      //    keep this segment      // }      // else {                                    // b <= ei and e <= ei      //    if(e >= bi) {      //       if(b < bi) {      //          mod segment i so bi -> b         // case 3      //          keep this segment      //       }      //       //else { ignore this segment }      // case 8      //    }      //    else {      //       make a new segment (b,e),      //          and insert it before segment i   // case 2      //       keep this segment      //    }      // }      // } // end of loop over segments i      // if(keep) add this segment to the time table      //       // loop over all segments, in decreasing order of metric()      for(i=1,ttit=TTS.begin(); ttit != TTS.end(); i++,ttit++) { // i temp         if(CI.Debug) { // temp            oflog << "Here is the current time table (" << TTab.size() << ")"               << endl;            for(ttjt=TTab.begin(); ttjt != TTab.end(); ttjt++)               oflog << " " << *ttjt << endl;         }         if(CI.Debug) {            oflog << "and here is the seg list";            for(lit=Segs.begin(); lit != Segs.end(); lit++)               oflog << " (" << lit->first << "-" << lit->second << ")";            oflog << endl;         }         // done if one segment covers all         lit = Segs.begin();         if(Segs.size() == 1 && lit->first == begcount && lit->second == endcount)            break;         // keep this? you don't want metric to become very small -> failure         if(ttit->metric() <= 100.0) break;        // TD input param         beg = ttit->start;         end = ttit->end;         if(CI.Debug) oflog << "consider new segment ("            << beg << "-" << end << ")" << endl;         // loop over the segs         keep = false;         lit = Segs.begin();         while(lit != Segs.end()) {            if(beg > lit->second) {               if(CI.Debug) oflog << " skip seg ("                  << lit->first << "-" << lit->second << ")" << endl;               lit++;               continue;            }            if(end > lit->second) {               if(CI.Debug) oflog << " mod 1 seg ("                  << lit->first << "-" << lit->second << ")";               lit->second = end;               if(beg < lit->first) lit->first=beg;               if(CI.Debug) oflog << " to ("                  << lit->first << "-" << lit->second << ")" << endl;               ljt = lit;               while(++ljt != Segs.end() && end >= ljt->first) {                  // merge i and j                  if(CI.Debug) oflog << " merge segs ("                     << lit->first << "-" << lit->second << ") and ("                     << ljt->first << "-" << ljt->second << ")";                  lit->second = ljt->second;                  if(CI.Debug) oflog << " and erase seg ("                     << ljt->first << "-" << ljt->second << ")" << endl;                  Segs.erase(ljt);                  ljt = lit;               }               keep = true;            }            else {               if(end >= lit->first) {                  if(beg < lit->first) {                     if(CI.Debug) oflog << " mod 2 seg ("                        << lit->first << "-" << lit->second << ")";                     lit->first = beg;                     keep = true;                     if(CI.Debug) oflog << " to ("                        << lit->first << "-" << lit->second << ")" << endl;                  }                  //else { keep=false; ignore -- this seg has nothing new }               }               else {                  seg newseg(beg,end);                  if(CI.Debug) oflog << " add seg ("                     << newseg.first << "-" << newseg.second << ")" << endl;                  Segs.insert(lit,newseg);                  keep = true;               }            }            break;         }  // end while loop over segs         if(keep) {            TTab.push_back(*ttit);            TTab.sort(startSort);       // temp         }         if(CI.Debug) if(i > 100) break;      // temp      }  // end for loop over segments TTS   }  // end if(initial gap is non-zero)   // 3. are there gaps?   if(Segs.size() != 1) {      oflog << "There are real gaps in the data; segments with data:" << endl;      for(lit=Segs.begin(); lit != Segs.end(); lit++)         oflog << " (" << lit->first << "-" << lit->second << ")";      oflog << endl;   }   else oflog << "There are no gaps in the data" << endl;   // sort the timetable   TTab.sort(startSort);   // TD 4. edit TTab, removing segments that do not create gaps   // decide on actual transition times   for(ttit=TTab.begin(); ttit != TTab.end(); ttit++) {      if(CI.Verbose) oflog << " " << *ttit << endl;      // compute the count at which to switch      if(ttit == TTab.begin()) {         ttit->first = ttit->start;       // first = start for first segment         ttjt = ttit;                     // initialize ttjt      }      else {         // switch at the mid-point of overlap         ttit->first = (ttjt->end + ttit->start)/2;      }      ttit->last = ttit->end;             // change later, except for last segment      if(ttit != TTab.begin()) {         ttjt->last = ttit->first;        // count at the switch point         ttjt++;                          // ttjt lags behind ttit by 1      }   }   return 0;}catch(Exception& e) { GPSTK_RETHROW(e); }catch(exception& e) { Exception E("std except: "+string(e.what())); GPSTK_THROW(E); }catch(...) { Exception e("Unknown exception"); GPSTK_THROW(e); }}//------------------------------------------------------------------------------------void TTSegment::findElev(void){   int i,k;   double elevi;   RawData& rd=Stations[site1].RawDataBuffers[sat];   minelev = 99.0;   maxelev = -1.0;   k = index(rd.count,start);   if(k == -1) return;   for(i=k; i<k+length; i++) {      elevi = RotatedAntennaElevation(rd.elev.at(i),rd.az.at(i));      if(elevi > maxelev) maxelev = elevi;      if(elevi < minelev) minelev = elevi;   }}//------------------------------------------------------------------------------------// friends of TTSegment, defined therebool startSort(const TTSegment& left, const TTSegment& right){ return (left.start < right.start); }bool increasingMetricSort(const TTSegment& left, const TTSegment& right){ return (left.metric() < right.metric()); }bool decreasingMetricSort(const TTSegment& left, const TTSegment& right){ return (left.metric() > right.metric()); }//------------------------------------------------------------------------------------ostream& operator<<(ostream& os, const TTSegment& t){try {   os << " " << t.site1      << " " << t.site2      << " " << t.sat      << " " << setw(5) << t.length      << " " << setw(5) << t.start      << " - " << setw(5) << t.end      //<< " (" << t.first << "-" << t.last << ")"      << " " << fixed << setw(4) << setprecision(1) << t.minelev      << " - " << fixed << setw(4) << setprecision(1) << t.maxelev      << " " << setw(7) << setprecision(2) << t.metric();   return os;}catch(Exception& e) { GPSTK_RETHROW(e); }catch(exception& e) { Exception E("std except: "+string(e.what())); GPSTK_THROW(E); }catch(...) { Exception e("Unknown exception"); GPSTK_THROW(e); }}//------------------------------------------------------------------------------------//------------------------------------------------------------------------------------

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99国内精品| 欧美日韩一区二区在线观看| 亚洲私人黄色宅男| 91麻豆精品国产自产在线| 国精品**一区二区三区在线蜜桃| 亚洲一区二区高清| 亚洲欧洲日韩在线| 中文字幕av不卡| 精品国产一区二区在线观看| 欧美日韩国产影片| 99精品1区2区| av中文字幕一区| 国产乱码字幕精品高清av | 91麻豆视频网站| 国产99久久久国产精品潘金网站| 另类小说视频一区二区| 图片区日韩欧美亚洲| 亚洲最大的成人av| 亚洲午夜免费电影| 国产精品久久久久7777按摩| 日本一区二区综合亚洲| 日韩午夜小视频| 欧美tickling挠脚心丨vk| 欧美一区二区三级| 日韩免费观看2025年上映的电影 | 视频一区二区不卡| 蜜臀av性久久久久蜜臀aⅴ四虎| 香蕉久久一区二区不卡无毒影院| 亚洲国产精品久久不卡毛片| 国产精品影视在线| 日韩一卡二卡三卡| 一区二区三区在线视频播放| 国产盗摄精品一区二区三区在线| 激情国产一区二区 | 欧美极品另类videosde| 青青草国产精品97视觉盛宴| 韩国欧美一区二区| 欧美在线观看禁18| 欧美成va人片在线观看| 亚洲高清不卡在线观看| 99久久99久久精品免费观看| 国产香蕉久久精品综合网| 亚洲黄色免费网站| 久久精品国产99国产| 欧美久久久影院| 中文字幕av不卡| 懂色av一区二区三区蜜臀| 国产三级久久久| 国产精品白丝jk黑袜喷水| 国产精品家庭影院| 色呦呦一区二区三区| 欧美一级日韩不卡播放免费| 日韩二区在线观看| 成人a区在线观看| 91精品中文字幕一区二区三区| 亚洲国产综合91精品麻豆| 欧美精品久久99久久在免费线 | 99免费精品视频| 1区2区3区精品视频| 欧美又粗又大又爽| 久久女同性恋中文字幕| 韩国一区二区视频| 国产精品久久久久久久久搜平片| 欧洲激情一区二区| 国精品**一区二区三区在线蜜桃| 日韩毛片高清在线播放| 欧美日韩aaaaaa| 九一久久久久久| 亚洲综合无码一区二区| 日韩高清在线观看| 国产精品欧美综合在线| 99国产精品久| 国产伦精品一区二区三区视频青涩| 欧美日韩免费一区二区三区| 久久精品国产免费| 亚洲综合色网站| 精品粉嫩超白一线天av| 99国产精品久久久久久久久久| 日本不卡一区二区| 中文字幕一区三区| 欧美大黄免费观看| 在线观看视频一区| 成人黄页毛片网站| 日本伊人午夜精品| 亚洲国产日韩综合久久精品| 久久久精品人体av艺术| 这里只有精品电影| 97久久精品人人澡人人爽| 国产成a人亚洲精品| 国内精品国产成人国产三级粉色| 男女男精品视频网| 免费人成黄页网站在线一区二区| 亚洲成人免费看| 亚洲五码中文字幕| 天堂成人免费av电影一区| 亚洲成人免费视| 青草av.久久免费一区| 天堂影院一区二区| 亚洲3atv精品一区二区三区| 亚洲综合精品自拍| 亚洲欧美日韩国产另类专区| 欧美精品高清视频| 色综合 综合色| 欧洲av一区二区嗯嗯嗯啊| 在线免费精品视频| 欧美日高清视频| 日韩午夜在线观看| 欧美一级片免费看| 欧美国产在线观看| 中文字幕一区二区在线观看| 亚洲国产一区二区三区青草影视| 亚洲女子a中天字幕| 婷婷丁香久久五月婷婷| 日韩高清不卡在线| 国产精品自拍av| 国产v日产∨综合v精品视频| 国产成人精品免费视频网站| 国产麻豆午夜三级精品| 国产呦萝稀缺另类资源| 国产在线精品一区二区不卡了 | 成人激情免费视频| 在线观看一区二区精品视频| 国产精一区二区三区| 91在线视频播放| 欧美伊人久久大香线蕉综合69| 日韩午夜激情免费电影| 久久网这里都是精品| 成人做爰69片免费看网站| 久久国产精品无码网站| 成人午夜在线视频| 欧美色综合影院| 久久久精品影视| 亚洲国产美国国产综合一区二区| 国产一区二区三区高清播放| 波多野结衣中文字幕一区| 欧美日韩国产一二三| 欧美激情中文字幕一区二区| 奇米一区二区三区av| 成人一级视频在线观看| 日韩欧美国产三级电影视频| 精品国产成人系列| 天天色天天爱天天射综合| 亚洲国产成人91porn| 国产成人综合在线| 日韩一区二区三区视频在线| 中文幕一区二区三区久久蜜桃| 亚洲大片在线观看| 国产成人啪免费观看软件| 欧美丰满嫩嫩电影| 亚洲色欲色欲www| 成人免费的视频| 欧美中文字幕一区二区三区亚洲| 精品国偷自产国产一区| 秋霞午夜av一区二区三区| 色域天天综合网| 一区二区三区中文在线| 日本在线不卡一区| 日韩视频免费直播| 免费av成人在线| 欧美专区日韩专区| 一区二区三区视频在线看| 成人小视频免费在线观看| 欧美电影精品一区二区| 日韩综合小视频| 日韩欧美国产高清| 一区二区三区欧美视频| 欧美日韩国产综合草草| 日韩高清一区在线| 久久网站最新地址| 成人精品高清在线| 国产精品视频一区二区三区不卡| 97久久超碰国产精品| 亚洲精品综合在线| 欧美丰满少妇xxxbbb| 日韩av一级片| 亚洲精品在线观看网站| jlzzjlzz亚洲日本少妇| ●精品国产综合乱码久久久久 | 亚洲欧美激情一区二区| 欧美色大人视频| 久久电影国产免费久久电影| 久久免费电影网| 欧美体内she精视频| 久久精品国产一区二区三| 国产欧美综合在线观看第十页| 91在线你懂得| 亚洲成av人片一区二区梦乃| 在线视频欧美区| 日韩成人免费电影| 国产精品美女久久久久久久网站| 色视频欧美一区二区三区| 韩国一区二区视频| 亚洲3atv精品一区二区三区| 国产精品色婷婷久久58| 欧美三级韩国三级日本一级| 韩国精品在线观看| 天天影视涩香欲综合网| 国产精品国产三级国产aⅴ原创| 91精品免费在线观看| av在线这里只有精品|