海妖
路人甲
路人甲
  • 注册日期2004-09-17
  • 发帖数5
  • QQ
  • 铜币174枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1114回复:2

请问用我自己给的坐标怎么在mapx上画线啊?代码如下

楼主#
更多 发布于:2004-09-21 16:59
<P>void CAUTOCADTranslateView::DrawLine(float x1,float y1,float x2,float y2)
{
 CMapXFeature f;
 CMapXLayer lyr;
 CMapXPoints pts;
 CMapXPoint pt;
 CMapXStyle style;
 COleVariant vpts;
 COleVariant vstyle;
 double mx1,my1,mx2,my2;
 pts.CreateDispatch(pts.GetClsid());
 pt.CreateDispatch(pt.GetClsid()); pts.Add (pt);
 pt.Set(mx1,my1);
 pts.Add (pt);
 pt.Set(mx2,my2);
 pts.Add (pt);</P>
<P> vpts.vt = VT_DISPATCH;
 vpts.pdispVal = pts.m_lpDispatch;
 vpts.pdispVal->AddRef();</P>
<P> style=m_ctrlMapx.GetDefaultStyle();
 vstyle.vt = VT_DISPATCH;
 vstyle.pdispVal = style.m_lpDispatch;
 vstyle.pdispVal->AddRef();</P>
<P>
 lyr=m_ctrlMapx.GetLayers().Item(1);
 //f=m_ctrlMapx.GetFeatureFactory().CreateLine(vpts,vstyle);
 f=m_ctrlMapx.GetFeatureFactory().CreateRegion(vpts,vstyle);
 lyr.AddFeature (f);
}其中坐标x1,y1,x2,y2由自己给定,可是画出来的直线是水平的,还应该怎么做啊?谢谢
</P><img src="images/post/smile/dvbbs/em12.gif" />
喜欢0 评分0
jibo1024
路人甲
路人甲
  • 注册日期2003-09-17
  • 发帖数21
  • QQ
  • 铜币154枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2004-09-22 20:52
<P>你确认你给得坐标没有超出你给定得地图坐标系得范围吗?
</P>
举报 回复(0) 喜欢(0)     评分
hsxljwht
路人甲
路人甲
  • 注册日期2004-10-06
  • 发帖数59
  • QQ
  • 铜币253枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2004-10-10 06:13
study
举报 回复(0) 喜欢(0)     评分
游客

返回顶部