• <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>

            GSensor的角度計算

               目前負(fù)責(zé)關(guān)于GSensor的模式識別,這里貼出自己的研究成果,供自己備忘。
            ACCEL_DIRECTION CGSensorModule::CalDirection(smb380acc_t& a_xyz,const unsigned char nAccelRange, double* pdbAngle)
            {
                ACCEL_DIRECTION adNew 
            = AD_UNKNOWN;
                
            double dbAngle = 0;
                
            // expressions: tan(angle) = a_xyz.x / a_xyz.y
                
            // angle is start from AD_LAYRIGHT

                
            // notice:    1. a_xyz.x and a_xyz.y should not be small together, so we need to give a liminal value
                
            //            2. the a_xyz.z should be enough small to ensure the G-Sensor is vertical,
                
            //                the degree is 45, means abs(a_xyz.z) should not larger than nAccelRange*sin(45)
                if((abs(a_xyz.x) < nAccelRange/10
                    
            && (abs(a_xyz.y) < nAccelRange/10)
                    
            || abs(a_xyz.z) > (nAccelRange*0.707))
                
            {
                    dbAngle 
            = nAccelRange;
                    
            return AD_UNKNOWN;
                }


                
            float fTanValue = float(a_xyz.y)/float(a_xyz.x);
                dbAngle 
            = atan(fTanValue);
                
            // AD_LAYRIGHT or AD_LAYLEFT
                if(fTanValue>-1 && fTanValue<1)
                
            {
                    
            if(a_xyz.x>0)
                    
            {
                        adNew 
            = AD_LAYRIGHT;
                    }

                    
            else
                    
            {
                        dbAngle 
            += PI;
                        adNew 
            = AD_LAYLEFT;
                    }

                }

                
            else
                
            {
                    
            if(a_xyz.y>0)
                    
            {
                        
            if (dbAngle<0)
                            dbAngle 
            += PI;
                        adNew 
            = AD_LAYUP;
                    }

                    
            else
                    
            {
                        
            if (dbAngle>0)
                            dbAngle 
            -= PI;
                        adNew 
            = AD_LAYDOWN;
                    }

                }


                
            if(dbAngle<0)
                    dbAngle
            +=(PI*2);

                
            if(pdbAngle != NULL)
                    
            *pdbAngle = dbAngle;
                
            return adNew;
            }


            BOOL CGSensorModule::GetDirection(ACCEL_DIRECTION
            & adNew, double* pdbAngle)
            {
                CHECK_GSENSOR_HANDLE();
                smb380acc_t a_xyz;
                unsigned 
            char nRange;
                
            if(!GetAccelXYZT(a_xyz))
                
            {
                    
            return FALSE;
                }

                
            if(!GetRange(nRange))
                
            {
                    
            return FALSE;
                }

                adNew 
            = CalDirection(a_xyz,MAX_ACCELRANGE/(2<<nRange),pdbAngle);
                
            return TRUE;
            }

            posted on 2008-05-26 11:37 迷宮の未來 閱讀(4039) 評論(4)  編輯 收藏 引用

            評論

            # re: GSensor的角度計算 2009-01-08 14:04 elle

            G-Sensor的型號是多少?  回復(fù)  更多評論   

            # re: GSensor的角度計算 2009-04-13 09:23 游客

            學(xué)習(xí)了  回復(fù)  更多評論   

            # re: GSensor的角度計算 2009-06-10 11:02 ytm

            有點看不懂  回復(fù)  更多評論   

            # re: GSensor的角度計算 2009-06-29 09:42 調(diào)試gsensor

            GSENSOR是重力加速好不  回復(fù)  更多評論   


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            導(dǎo)航

            統(tǒng)計

            常用鏈接

            留言簿(10)

            隨筆檔案

            文章檔案

            最新隨筆

            搜索

            積分與排名

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            中文精品久久久久人妻不卡| 欧美粉嫩小泬久久久久久久| 久久精品国产2020| 久久涩综合| 久久AAAA片一区二区| 欧美亚洲日本久久精品| 要久久爱在线免费观看| 久久久久高潮综合影院| 亚洲午夜久久久久久噜噜噜| 一本色道久久88—综合亚洲精品| 97香蕉久久夜色精品国产| 无码人妻久久一区二区三区免费| 一本色综合网久久| 久久久久亚洲av无码专区导航| 九九99精品久久久久久| 亚洲欧美精品一区久久中文字幕 | 国产精品久久久久无码av| 蜜桃麻豆www久久| 欧美粉嫩小泬久久久久久久| 欧美亚洲日本久久精品| 久久久久亚洲AV无码网站| 久久这里有精品视频| 人妻少妇久久中文字幕一区二区 | 国产精品99久久久久久www| 日本精品久久久久久久久免费| 超级碰碰碰碰97久久久久| 青青热久久国产久精品| 天堂久久天堂AV色综合| 中文精品久久久久国产网址 | 欧美午夜A∨大片久久| 久久精品夜夜夜夜夜久久| 久久性精品| 亚洲精品tv久久久久久久久| 日产久久强奸免费的看| 日本久久久久久中文字幕| 中文无码久久精品| 精品乱码久久久久久夜夜嗨| 99久久这里只有精品| 久久久亚洲欧洲日产国码是AV| 2020最新久久久视精品爱| 久久午夜羞羞影院免费观看|