| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 524 人关注过本帖
标题:求编程高手,关于写地图的问题
取消只看楼主 加入收藏
tairan0075
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-4-2
结帖率:0
收藏
已结贴  问题点数:20 回复次数:0 
求编程高手,关于写地图的问题
是这样,我们老师要我通过这个程序找突破口,我将程序发过去,大家先运行下看看,鼠标左键拖动可以画障碍物,鼠标右键可以指使行走的方向,GO就可以运行,但是我所要做的没这么复杂,我们老师只要求我把预先用鼠标画出障碍物在另一界面通过扫描,将在范围内的显示出来(就是画地图),我在其中发现了这么一段写测距线的程序:
void ObsAvoid::DrawObs(  )
{
 if ( m_pDC != NULL )
 {
  CPen redPen(PS_SOLID, 1, RGB(115,30+50,50) ), *pOldPen;
  pOldPen = m_pDC->SelectObject( &redPen );
  int i=0;
  for(i=0; i<360; i++)
  {
   m_pDC->MoveTo(m_x,m_y);
   int x2 = m_x + (int)( m_obsData[i] * cos( i/180.0*PI +m_theata-pi/2 ) );
   int y2 = m_y + (int)( m_obsData[i] * sin( i/180.0*PI +m_theata-pi/2 ) );
   m_pDC->LineTo( x2, y2 );
  }
  m_pDC->SelectObject( pOldPen );
 }
}
void ObsAvoid::SetpDC(CDC *dc,int mod, int x, int y, double theata )
{
 m_pDC = dc;
 m_mod = mod;
 m_x = x;
 m_y = y;
 m_theata = theata;
}
这里的(X2,Y2)其实就是扫描的结果,对吧,我就想这样,如果要把这个测距线因障碍物而缩短时的那些端点储存成点并且显示出来,这个程序该如何编写?我是真的对C++一点基础都没有,老师那也总是……唉~,只能求助大家了~
obsavoidsimutest (1).rar (292.92 KB)
搜索更多相关主题的帖子: 突破口 地图 老师 
2011-05-13 10:24
快速回复:求编程高手,关于写地图的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018492 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved