Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2008-05-14, 15:42   #1
lmmf
初级会员
 
注册日期: 2008-04-30
年龄: 40
帖子: 13
声望力: 18
lmmf 正向着好的方向发展
默认 [求助]想利用matcom在VC.net中绘制静态三维曲线的疑问

void CChengxu3View::OnInitialUpdate()
{
CView::OnInitialUpdate();
m_h = winaxes(this->m_hWnd);

ksh_start(-50,4,2,1,2,1,1,1,2,2,0,60,8,3000,-90,0.1,400,1500,i_o,x,y,z,ta_x,ta_y,ta_z,index_t);

hold(TM("off"));
m_hplot=plot3((CL(x),y,z));
m_hplot1=plot3((CL(ta_x(colon(1.0,1.0,index_t-1.0))),ta_y(colon(1.0,1.0,index_t-1.0)),ta_z(colon(1.0,1.0,index_t-1.0)),TM("r")));
hold(TM("on"));
axis(TM("equal"));
axis(TM("ij"));
grid(TM("on"));
}

void CChengxu3View::OnCeshi()
{
ClearData(m_hplot);

ksh_start(-200,4,2,1,2,1,1,1,2,2,0,60,8,3000,-90,0.1,400,1500,i_o,x,y,z,ta_x,ta_y,ta_z,index_t);
hold(TM("off"));
m_hplot=plot3((CL(x),y,z));
m_hplot1=plot3((CL(ta_x(colon(1.0,1.0,index_t-1.0))),ta_y(colon(1.0,1.0,index_t-1.0)),ta_z(colon(1.0,1.0,index_t-1.0)),TM("r")));
hold(TM("on"));
axis(TM("equal"));
axis(TM("ij"));
grid(TM("on"));
}
程序启动后是图1,按下测试按钮后是图2。画面上显示不了用红色画的线,经过我拖动画面后,红色线在画面3上如此显示。

ksh_start这个函数是输出x,y,z,ta_x,ta_y,ta_z,index_t这些参数,然后用x,y,z画三维曲线,直接画的话
ksh_start(-50,4,2,1,2,1,1,1,2,2,0,60,8,3000,-90,0.1,400,1500,i_o,x,y,z,ta_x,ta_y,ta_z,index_t);
m_hplot=plot3((CL(x),y,z));
m_hplot1=plot3((CL(ta_x(colon(1.0,1.0,index_t-1.0))),ta_y(colon(1.0,1.0,index_t-1.0)),ta_z(colon(1.0,1.0,index_t-1.0)),TM("r")));
显示图1,
ksh_start(-200,4,2,1,2,1,1,1,2,2,0,60,8,3000,-90,0.1,400,1500,i_o,x1,y1,z1,ta_x1,ta_y1,ta_z1,index_t1);
m_hplot=plot3((CL(x),y,z));
m_hplot1=plot3((CL(ta_x(colon(1.0,1.0,index_t-1.0))),ta_y(colon(1.0,1.0,index_t-1.0)),ta_z(colon(1.0,1.0,index_t-1.0)),TM("r")));
显示图2。

现在我就希望图2里面的红色线和蓝色线同时显示在画面内,我用axis的各种参数试过了,都达不到我这个目的,请问这是什么原因。
而且,还有个视角的问题,如何能比较方便的调节这个视角?
这个ksh_start(-50,4,2,1,2,1,1,1,2,2,0,60,8,3000,-90,0.1,400,1500,i_o,x,y,z,ta_x,ta_y,ta_z,index_t);在.m原始文件中的运行的结果是如图4这样的,角度比较合适观察,而经过matcom转换后在vc.net里面的效果却是如图1的(我并没有改变默认视角)。虽然说这个效果图1比图4强,但是其他参数的图就差多了,而且,三个坐标轴的单位变化量是不一样的,我希望一样,使用了axis(TM("equal"));也没什么效果。

请高手帮忙解答一下。
上传的图像
文件类型: jpg 图1.jpg (22.9 KB, 8 次查看)
文件类型: jpg 图2.jpg (24.3 KB, 7 次查看)
文件类型: jpg 图3.jpg (24.3 KB, 6 次查看)
文件类型: jpg 图4.jpg (28.5 KB, 5 次查看)
lmmf 当前离线   回复时引用此帖
 

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
matlab简明教程,有例子 duanyi MATLAB论坛 1 2008-07-23 16:14


所有时间均为北京时间。现在的时间是 15:49


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.