青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

  C++博客 :: 首頁 :: 聯系 ::  :: 管理
  163 Posts :: 4 Stories :: 350 Comments :: 0 Trackbacks

常用鏈接

留言簿(48)

我參與的團隊

搜索

  •  

積分與排名

  • 積分 - 402521
  • 排名 - 59

最新評論

閱讀排行榜

評論排行榜

自從LOD地形第一節推出以來,受到不少朋友的關注,本人真是受寵若驚,無奈自己水平有限,怕寫不好讓大家對自己失望,我只能勉為其難,努力去寫,同時歡迎高人能手給于指正,大家共同學習,共同提高!
LOD地形的四叉樹算法原理就是對地形進行四叉樹分割,同時檢查該節點是否位于視截體內部,如果在視截體內部且滿足視距,周圍點高程誤差等條件時,則對該節點繼續分割,否則不予分割。其中重點是視截體的計算,以及地形的分割及渲染。下面介紹幾個系統中用到的類。
首先介紹標志節點是否分割的類Bit
類定義:

//該類根據節點的位置,為每個節點在標志段里相應位設一個標識。
/***********************************************************************
*    Copyrights Reserved by QinGeSoftware
*    Author : Qinge
*    Filename : Bit.h 1.0
*    Date: 2008-1-10
************************************************************************/
#pragma once

class Bit
{
public:
    void SetScale(int nScale);                        //伸縮系數
    void Set(int x, int y, BOOL bFlog=TRUE);          //設置標志位
    void Reset();                                     //標志清零
    BOOL CreateBits(int nXBites, int nRows);          //創建標志數組
    BOOL IsTrue(int x, int y);                        //查詢該位標志
public:
    Bit();
    virtual ~Bit(void);
private:
    unsigned char *m_pBits;   //存儲位標志的指針
    int m_nXBytes;            //X方向的字節數
    int m_nZRows;             //Z方向的行數
    int m_nScale;             //伸縮系數
};



//類實現文件
/***********************************************************************
*    Copyrights Reserved by QinGeSoftware
*    Author : Qinge
*    Filename : Bit.cpp 1.0
*    Date: 2008-1-10
************************************************************************/
#include "StdAfx.h"
#include "Bit.h"

Bit::Bit(void)
{
    m_pBits  = NULL;                                     //指針初始化為NULL   
    m_nXBytes = 0;
    m_nZRows  = 0;
    m_nScale = 1;                                         //不能初始化為0,因為是除數

}

Bit::~Bit(void)
{
    if(m_pBits != NULL)
    {
        delete [] m_pBits;                              //釋放指針
        m_pBits = NULL;                                 //置為空,否則會成為野指針
    }
}

BOOL Bit::CreateBits(int nXBites, int nRows)
{
    //nXBits 必須是8的倍數
    m_nXBytes = nXBites/8+1;                            //想想為什么加1
    m_nZRows   = nRows;
    m_pBits = new unsigned char[m_nXBytes * m_nZRows];  //分配空間
    memset(m_pBits, 0, m_nZRows * m_nXBytes);           //標志段全部初始化0
    return 0;
}

void Bit::SetScale(int nScale)
{
    m_nScale = nScale;                                 //提供操作私有變量的接口
}

void Bit::Set(int x, int y, BOOL bFlog )
{
     x = x / m_nScale;                                 //每隔m_nScale采樣
     y = y / m_nScale;
     unsigned char &c = m_pBits[y * m_nXBytes + x/8];  //獲得某字符的引用,注意賦值方式,否則
     unsigned char d = 0x80;                           //后面改了白該。
     d = d >>(x%8);                                    //根據X值得不同,首位右移相應位數。移位
                                                       // 使得每個節點對應一位。 
     if(bFlog)
     {
         c|=d;                                         //把字符C與X相應的位置為1

     }
     else
     {
         d = ~d;                                       //和某節點對應的位為0,其余位為1
         c &= d;                                       //把字符C與X相應的位置為0

     }

}

void Bit::Reset()
{
    memset(m_pBits, 0, m_nXBytes * m_nZRows);

}

BOOL Bit::IsTrue(int x, int y)
{
   x = x/m_nScale;
   y = y/m_nScale;
   unsigned char c = m_pBits[y*m_nXBytes+x/8];                       //這次不是引用,想想為什么
   unsigned char d = 0x80;                                          
   c = c << (x%8);                                                   //為什么不是d移位?
   return c&d;             //把與X對應的位返回,其余位為0


}
//該函數得到字符包含包含8個節點的標志,必須根據X的值進行移位方能找到對應的節點,這次是取得標識而不是設置標識,故不用引用。c移位而不是d移位,是為了把標識移到首位。然后和0x80進行位與操作得到BOOL值。d移位操作效果是一樣的,但不是左移而是右移。 
posted on 2008-01-14 21:15 sdfasdf 閱讀(3003) 評論(3)  編輯 收藏 引用 所屬分類: OPENGL

Feedback

# re: LOD地形設計(二) 2008-01-15 08:50 minidxer
很不錯很不錯~
努力加油哈  回復  更多評論
  

# re: LOD地形設計(二) 2008-01-15 10:36 yayv
多講原理,少貼代碼不是更好么?  回復  更多評論
  

# re: LOD地形設計(二) 2011-07-23 11:06 cgsgood
不錯,代碼很明了  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美在线视频免费播放| 欧美成人国产va精品日本一级| 欧美电影在线观看| 亚洲第一伊人| 新片速递亚洲合集欧美合集| 91久久精品www人人做人人爽| 国产日韩欧美夫妻视频在线观看| 欧美日韩亚洲91| 欧美顶级少妇做爰| 麻豆av一区二区三区| 欧美成人精品不卡视频在线观看| 久久狠狠亚洲综合| 亚洲综合日韩在线| 亚洲综合好骚| 久久国产66| 美女主播精品视频一二三四| 欧美91大片| 亚洲第一天堂无码专区| 久久精品国产一区二区三区免费看 | 伊人一区二区三区久久精品| 国内外成人在线| 曰本成人黄色| 99国产精品国产精品毛片| 亚洲欧美另类久久久精品2019| 亚洲精品小视频在线观看| 亚洲综合精品| 免费观看亚洲视频大全| 亚洲另类黄色| 欧美尤物一区| 欧美极品aⅴ影院| 国产日韩亚洲欧美| 亚洲精品激情| 久久成人一区二区| 亚洲第一精品福利| 亚洲一区二区久久| 蘑菇福利视频一区播放| 国产精品视频久久久| 一色屋精品视频在线观看网站| 亚洲激情成人在线| 久久av一区二区三区| 亚洲精品日韩在线观看| 久久久久久久久久久久久女国产乱| 欧美日韩美女| 亚洲国产视频直播| 久久一本综合频道| 在线亚洲激情| 欧美高清一区| 在线电影欧美日韩一区二区私密| 你懂的亚洲视频| 亚洲午夜伦理| 欧美精品激情在线| 亚洲电影下载| 亚洲伦伦在线| 欧美激情麻豆| 性欧美激情精品| 国产精品久久久久久妇女6080 | 91久久香蕉国产日韩欧美9色| 午夜在线一区| 欧美v亚洲v综合ⅴ国产v| 亚洲欧美综合| 国产精品国产三级国产普通话蜜臀 | 99日韩精品| 蜜桃精品久久久久久久免费影院| 国产精品在线看| 亚洲天堂视频在线观看| 亚洲美女色禁图| 欧美精品久久久久久久久老牛影院| 国产真实乱偷精品视频免| 午夜一级久久| 亚洲一区二区三区视频| 亚洲永久精品国产| 欧美日韩精品免费| 宅男在线国产精品| 亚洲免费观看| 欧美人与禽猛交乱配视频| 99re8这里有精品热视频免费 | 久久综合五月天婷婷伊人| 国产日韩亚洲欧美精品| 亚洲欧美日韩综合aⅴ视频| 亚洲精品视频免费观看| 欧美好骚综合网| 亚洲免费在线| 性久久久久久久久久久久| 好看的av在线不卡观看| 欧美激情黄色片| 欧美福利在线| 亚洲欧美国产va在线影院| 亚洲无亚洲人成网站77777| 国产精品国产一区二区| 欧美主播一区二区三区| 亚洲视频在线看| 国产精品人人爽人人做我的可爱 | 久久国产黑丝| 99精品国产在热久久| 久久中文精品| 国产精品区一区| 一本色道久久综合| 黄色免费成人| 亚洲国产精品一区制服丝袜| 欧美一区二区三区免费观看 | 亚洲第一精品久久忘忧草社区| 欧美一区二区三区免费视频| 欧美一区=区| 亚洲国产精品电影| 欧美激情免费观看| 午夜精品久久久久久久99黑人| 欧美激情视频给我| 在线观看亚洲视频| 国产一区二区三区不卡在线观看| 正在播放欧美视频| 亚洲国产日韩美| 久久久久久久999| 国产在线精品一区二区夜色| 亚洲在线观看视频网站| 99re这里只有精品6| 国产亚洲人成a一在线v站| 正在播放日韩| 亚洲美女诱惑| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲国产天堂网精品网站| 久久精品中文字幕一区二区三区| 国产精品盗摄一区二区三区| 亚洲一区制服诱惑| 午夜精彩国产免费不卡不顿大片| 欧美一区二区三区免费在线看| 亚洲一区3d动漫同人无遮挡| 亚洲激情国产| 欧美高清成人| 日韩一级黄色大片| 亚洲日韩欧美一区二区在线| 久久亚洲一区| 一区二区三区自拍| 亚洲欧美制服另类日韩| 亚洲一本视频| 国产欧美日韩麻豆91| 韩国精品一区二区三区| 久久久久久夜| 麻豆国产va免费精品高清在线| 欧美成人亚洲| 亚洲视频 欧洲视频| 在线亚洲+欧美+日本专区| 国产一区二区高清| 欧美一区二区三区久久精品茉莉花| 香蕉久久夜色| 亚洲日本中文字幕| 一区二区三区欧美在线观看| 国产精品一区二区a| 国产精品乱码一区二区三区| 一本大道久久精品懂色aⅴ| 国产欧美一区二区视频| 老牛影视一区二区三区| 欧美国产视频在线观看| 久久男女视频| 亚洲国产一成人久久精品| 国产精品theporn| 欧美日韩亚洲一区二| 欧美一区二区免费视频| 欧美一区二区免费视频| 91久久午夜| 亚洲一级黄色av| 欧美日韩精品免费看| 亚洲欧美99| 欧美专区中文字幕| 亚洲美女中出| 久久激五月天综合精品| 欧美日本中文| …久久精品99久久香蕉国产 | 午夜久久久久久| 欧美在线三区| 国产欧美日本一区视频| 国产精品视频大全| 久久另类ts人妖一区二区 | 性欧美办公室18xxxxhd| 一区二区三区www| 国产精品视频你懂的| 午夜一区二区三区不卡视频| 欧美中日韩免费视频| 一区二区三区欧美| 亚洲国产精品国自产拍av秋霞 | 欧美一区2区视频在线观看| 亚洲人成7777| 久久人体大胆视频| 亚洲国产精品成人久久综合一区| 亚洲欧美另类在线观看| 亚洲精选在线观看| 欧美在线网站| 亚洲欧美日韩国产中文在线| 欧美大片一区二区三区| 久久久一区二区| 久久精品99| 欧美另类99xxxxx| 激情视频一区| 久久福利电影| 久久精品视频在线免费观看| 国产精品日日摸夜夜添夜夜av| 亚洲综合大片69999| 欧美精品一区二区三区在线播放 | 国产日韩精品电影| 午夜国产欧美理论在线播放| 樱桃国产成人精品视频|