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

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

?? traj3dshow.cpp

?? VC&Matlab混合編程實(shí)現(xiàn)無(wú)線電導(dǎo)航指示器
?? CPP
字號(hào):
// Traj3DShow.cpp: implementation of the CTraj3DShow class.
//
//////////////////////////////////////////////////////////////////////


#include "matlab.hpp"
#include "libmwsglm.hpp"
#include "stdafx.h"
#include "RADIO.h"
#include "Traj3DShow.h"
#include "APPStatic.h"


#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif


const double CTraj3DShow::PI=3.141593;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CTraj3DShow::CTraj3DShow()
{
	m_dPlaneScale=200;
}

CTraj3DShow::~CTraj3DShow()
{

}

void CTraj3DShow::RefreshTraj()
{ 
	TRAJ traj=APPStatic::GetMainView()->m_fileAccess.GetCurrentPackageData();
    mwArray x=get(APPStatic::GetMainView()->m_mwhLineTraj,"xdata");
	mwArray y=get(APPStatic::GetMainView()->m_mwhLineTraj,"ydata");
	mwArray z=get(APPStatic::GetMainView()->m_mwhLineTraj,"zdata");

    double newx=C2Rad(traj.lon-m_ptOrigin.x)/m_C2;
	double newy=C2Rad(traj.lat-m_ptOrigin.y)/m_C1;
    double newz=traj.heg;

    x=horzcat(x,newx);
	y=horzcat(y,newy);
	z=horzcat(z,newz);
	set(APPStatic::GetMainView()->m_mwhLineTraj,"xdata",x,"ydata",y,"zdata",z);
	
	//更新Plane	
	m_plane.ScaleOriginal(100,100,100);
	m_plane.Rotate(horzcat(0,0,1),90,horzcat(0,0,0));
	m_plane.Rotate(horzcat(0,0,1),-traj.yaw,horzcat(0,0,0));
	m_plane.Rotate(horzcat(180-traj.yaw,0),-traj.pitch,horzcat(0,0,0));
	m_plane.Rotate(horzcat(90-traj.yaw,traj.pitch),traj.roll,horzcat(0,0,0));
	m_plane.OffSet(newx,newy,newz);
	double dScale=APPStatic::GetMainView()->m_dlgSheet2.GetPlaneScale();
	if(APPStatic::GetMainView()->m_bTracePlane){
		Vset(APPStatic::GetMainView()->m_mwhAxis,"xlim",horzcat(newx-2*dScale*m_dPlaneScale,newx+2*dScale*m_dPlaneScale),
			"ylim",horzcat(newy-dScale*m_dPlaneScale,newy+dScale*m_dPlaneScale),"zlim",horzcat(newz-dScale*m_dPlaneScale,newz+dScale*m_dPlaneScale));
        }
}


void CTraj3DShow::Rotate(mwArray h, mwArray azel, mwArray alpha, mwArray origin)
{
//把h沿指定方向和原點(diǎn)轉(zhuǎn)
// ROTATE(H,[THETA PHI],ALPHA,[x0,y0,z0]) 
//或ROTATE(H,[X Y Z],ALPHA,[x0,y0,z0]) 
//逆時(shí)針轉(zhuǎn)為正。角度單位是度

	mwArray theta,phi,u;
	mwArray alph,cosa,sina,vera;
	mwArray x,y,z;
	mwArray rot;
	mwArray t;
	mwArray skip;
	mwArray m,n;
	mwArray newxyz,newx,newy,newz;
	mwArray p;
	
    // 得到轉(zhuǎn)軸的單位矢量
	if (tobool(prod(size(azel)) == mwArray(2)))//theta, phi
	{ 
		theta = 3.141593*azel(1)/mwArray(180.0);
		phi = 3.141593*azel(2)/mwArray(180.0);
		u = vertcat(cos(phi)*cos(theta), cos(phi)*sin(theta),sin(phi));
	}
	else if (tobool(prod(size(azel)) == mwArray(3)))// 方向向量
	{   
		u = azel(colon())/norm(azel);
	}
	//
	alph = alpha*3.141593/mwArray(180.0);
	cosa = cos(alph);
	sina = sin(alph);
	vera = mwArray(1) - cosa;
	x = u(1);
	y = u(2);
	z = u(3);
	rot =transpose(vertcat(horzcat(cosa+x*x*vera ,x*y*vera-z*sina ,x*z*vera+y*sina),
	                       horzcat(x*y*vera+z*sina ,cosa+y*y*vera, y*z*vera-x*sina),
                           horzcat(x*z*vera-y*sina ,y*z*vera+x*sina ,cosa+z*z*vera)));
	//
	for (int i=1;i<=(prod(size(h)).ExtractScalar(1));i++)
	{
		t = get(h(i),"type");
		skip = mwArray(0);
		if (tobool(strcmp(t,"surface")) || tobool(strcmp(t,"patch")) || tobool(strcmp(t,"line")))
		{
			x = get(h(i),"xdata");
			y = get(h(i),"ydata");
			z = get(h(i),"zdata");
			if (tobool(isempty(z)))
			{
				z = -origin(3)*ones(size(y));
			}
			m= size(z,1);
			n= size(z,2);
			if (tobool(prod(size(x)) < m*n))
			{   
				x = meshgrid(&y,x,y);
			}
		}
		else if (tobool(strcmp(t,"text")))
			{
				p = get(h(i),"position");
				x = p(1); y = p(2); z = p(3);
			}
		else if (tobool(strcmp(t,"image")))
			{
				x = get(h(i),"xdata");
				y = get(h(i),"ydata");
				z = zeros(size(x));
			}
		else
			{
				skip = mwArray(1);
			}
		
		
		if (!tobool(skip))
		{
			m=size(x,1);
			n=size(x,2);
			newxyz = horzcat(x(colon())-origin(1), y(colon())-origin(2), z(colon())-origin(3));
			newxyz = newxyz*rot;
			newx = origin(1) + reshape(newxyz(colon(),1),m,n);
			newy = origin(2) + reshape(newxyz(colon(),2),m,n);
			newz = origin(3) + reshape(newxyz(colon(),3),m,n);
			
			if (tobool(strcmp(t,"surface")) || tobool(strcmp(t,"patch")) || tobool(strcmp(t,"line")))
			{
				Vset(h(i),"xdata",newx,"ydata",newy,"zdata",newz);
			}
			else if (tobool(strcmp(t,"text")))
			{
				Vset(h(i),"position",horzcat(newx,newy,newz));
			}
			else if (tobool(strcmp(t,"image")))
			{
				Vset(h(i),"xdata",newx,"ydata",newy);
			}
		}
	}	
}

double CTraj3DShow::C2Rad(double d, double m, double s)
{
//度分秒轉(zhuǎn)換為弧度。
//例:C2Rad(30,0,0);
return ((s/60.0+m)/60.0+d)*PI/180.0;
}

void CTraj3DShow::Init3DShow(double lon,double lat,double h)
{
	//輸入是起始點(diǎn)位置,單位是度,(經(jīng)度,緯度,高度)
	m_ptOrigin.x=lon;
	m_ptOrigin.y=lat;
	m_ptOrigin.z=h;
    //畫(huà)起始經(jīng)緯度
	CString strOriLa,strOriPhi;
	strOriLa.Format("%6.3lf",m_ptOrigin.x);
	strOriPhi.Format("%6.3lf",m_ptOrigin.y);
	APPStatic::GetMainView()->m_dlgSheet2.m_strOriLa=strOriLa;
	APPStatic::GetMainView()->m_dlgSheet2.m_strOriPhi=strOriPhi;
    APPStatic::GetMainView()->m_dlgSheet2.m_staticOriLa.SetPaintInfo(strOriLa);
	APPStatic::GetMainView()->m_dlgSheet2.m_staticOriPhi.SetPaintInfo(strOriPhi);
	APPStatic::GetMainView()->m_dlgSheet2.UpdateData(FALSE);
	//
	double phi_=C2Rad(m_ptOrigin.y,0,0);
	double e=0.081819191,Re=6378137.0;
    mwArray Rm=mwArray(Re)*mwArray(1-e*e)/power(sqrt((1-e*e*sin(phi_)*sin(phi_))),mwArray(3));
    mwArray C1=1/(Rm+h);//緯度比
    mwArray Rn=Re/sqrt((1-e*e*sin(phi_)*sin(phi_)));
    mwArray C2=sec(phi_)/(Rn+h);//經(jīng)度比
	m_C1=C1.ExtractScalar(1);
    m_C2=C2.ExtractScalar(1);
	Vset(APPStatic::GetMainView()->m_mwhLineTraj,"xdata",mwArray(0),"ydata",mwArray(0),"zdata",mwArray(m_ptOrigin.z));
    m_plane.ScaleOriginal(m_dPlaneScale,m_dPlaneScale,m_dPlaneScale);
	m_plane.OffSet(0,0,m_ptOrigin.z);
	m_plane.Show();
	//view(APPStatic::GetMainView()->m_mwhAxis,-36,16);
    Vaxis(APPStatic::GetMainView()->m_mwhAxis,"equal");
	Vaxis(APPStatic::GetMainView()->m_mwhAxis,"auto");
    RefreshTraj();
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av电影在线观看完整版一区二区 | 亚洲国产精品一区二区www在线 | 亚洲成国产人片在线观看| 国产人成亚洲第一网站在线播放| 日韩一区二区三| 日韩欧美二区三区| 久久综合色之久久综合| 欧美精品一区二区三区蜜桃视频 | 精品国产乱码久久久久久影片| 91精品欧美久久久久久动漫| 欧美日韩www| 日韩欧美一卡二卡| 国产亚洲欧美日韩俺去了| 国产精品网曝门| 亚洲欧洲国产日韩| 一区二区三区精品视频在线| 香港成人在线视频| 精品亚洲porn| 99久久久久久| 欧美日韩国产首页在线观看| 日韩三级电影网址| 国产精品欧美一区喷水| 一区二区三国产精华液| 青青草97国产精品免费观看无弹窗版 | 麻豆免费精品视频| 国产九色精品成人porny| 99久久婷婷国产综合精品| 91黄色在线观看| 日韩欧美一区中文| 国产精品第一页第二页第三页| 亚洲黄色录像片| 久久99在线观看| a亚洲天堂av| 欧美一区二区精品| 国产精品不卡在线观看| 日韩精品每日更新| 91在线观看美女| 日韩视频一区在线观看| 亚洲日本在线天堂| 国产一区二区视频在线| 在线精品视频免费播放| 亚洲国产精品国自产拍av| 亚洲一区视频在线| 成人精品一区二区三区中文字幕| 欧美日韩免费电影| 中文字幕欧美国产| 久久狠狠亚洲综合| 欧洲精品在线观看| 国产精品国产三级国产普通话三级| 欧美a级理论片| 色偷偷成人一区二区三区91 | 国产精品久久看| 美腿丝袜亚洲色图| 欧美日韩精品一区二区天天拍小说 | 99久久精品国产精品久久| 日韩一区二区三区精品视频| 亚洲影院免费观看| 91免费精品国自产拍在线不卡| 精品久久一区二区| 日本少妇一区二区| 欧美四级电影网| 一区二区三区四区蜜桃| av电影在线观看一区| 国产精品天天摸av网| 国产成人三级在线观看| 日韩欧美国产综合| 蜜桃在线一区二区三区| 在线不卡免费欧美| 亚洲成人久久影院| 5月丁香婷婷综合| 五月激情综合色| 欧美老肥妇做.爰bbww| 亚洲成a人v欧美综合天堂| 欧美做爰猛烈大尺度电影无法无天| 国产精品久久精品日日| k8久久久一区二区三区| 国产精品久久一卡二卡| 99久久精品国产麻豆演员表| 17c精品麻豆一区二区免费| 波多野结衣精品在线| 综合久久久久久| 91免费小视频| 午夜欧美2019年伦理| 日韩欧美你懂的| 韩国毛片一区二区三区| 久久久久久久免费视频了| 国产99一区视频免费| 国产精品久久777777| 91论坛在线播放| 午夜视频在线观看一区二区三区| 欧美日韩第一区日日骚| 日韩不卡一区二区三区| 久久午夜羞羞影院免费观看| 国产ts人妖一区二区| 综合激情网...| 欧美日韩日日夜夜| 激情另类小说区图片区视频区| 精品久久久久99| 99免费精品在线观看| 亚洲一区二区在线免费观看视频 | 国产自产高清不卡| 中文字幕亚洲成人| 欧美人体做爰大胆视频| 国内精品久久久久影院一蜜桃| 国产精品久久久久9999吃药| 欧美影视一区二区三区| 韩国v欧美v日本v亚洲v| 亚洲丝袜自拍清纯另类| 欧美一区二区在线观看| 成人app在线| 午夜精品久久久久久久99水蜜桃 | 亚洲欧洲日本在线| 欧美一区二区三区日韩视频| 国产成人在线观看免费网站| 一区二区三区四区不卡在线| 日韩精品一区二区在线| 色综合久久久久久久| 久久精品国产**网站演员| 综合电影一区二区三区| 精品国产免费人成在线观看| 色综合色狠狠综合色| 久久99日本精品| 亚州成人在线电影| 成人免费视频在线观看| 亚洲精品在线三区| 欧美日韩国产片| 91麻豆.com| 成人精品免费视频| 国产综合成人久久大片91| 日一区二区三区| 亚洲一区二区在线免费观看视频| 中文字幕高清一区| 欧美成va人片在线观看| 欧美日韩国产成人在线91| 91丨九色porny丨蝌蚪| 国产精品中文欧美| 久久99精品久久久| 日韩和欧美的一区| 亚洲一区免费观看| 一区二区三区欧美久久| 亚洲女同女同女同女同女同69| 久久久久久麻豆| 国产午夜精品久久久久久免费视| 日韩一区二区三区四区| 在线成人av网站| 欧美高清一级片在线| 欧美日韩中文字幕一区| 欧美天天综合网| 欧美网站一区二区| 欧美丰满高潮xxxx喷水动漫| 欧美在线观看视频一区二区| 色先锋aa成人| 欧美日韩高清一区二区三区| 欧美色综合网站| 69久久99精品久久久久婷婷| 欧美日韩亚洲综合一区| 欧美日本不卡视频| 日韩三级在线免费观看| 26uuu精品一区二区 | av在线不卡观看免费观看| 成人免费视频app| 色综合一个色综合亚洲| 一本高清dvd不卡在线观看| 在线精品视频一区二区三四| 欧美亚洲愉拍一区二区| 6080日韩午夜伦伦午夜伦| 欧美不卡一区二区| 国产欧美精品区一区二区三区| 亚洲国产精品成人久久综合一区| 亚洲欧洲国产专区| 日韩国产在线观看| 国产一区二区伦理片| 99视频精品全部免费在线| 欧洲国内综合视频| 日韩一区二区精品葵司在线 | 依依成人综合视频| 婷婷久久综合九色综合绿巨人| 精品亚洲国产成人av制服丝袜| 成人午夜电影小说| 欧美性生活影院| 久久久青草青青国产亚洲免观| 国产精品久久久久久久午夜片| 午夜久久久久久久久| 国产一区二区三区在线观看免费| 99久久亚洲一区二区三区青草| 欧美二区乱c少妇| 亚洲国产精品国自产拍av| 一区二区三区精密机械公司| 日日夜夜免费精品| av在线不卡电影| 欧美一级高清片在线观看| 国产精品系列在线| 日韩精品久久理论片| 97久久超碰国产精品电影| 欧美一二三在线| 亚洲丰满少妇videoshd| 国精产品一区一区三区mba视频| 色噜噜久久综合| 欧美激情综合五月色丁香小说| 午夜精品久久久久久久99水蜜桃 |