画的线在放大的时候消失了!很奇怪啊!

huirabit 2005-03-14 09:18:31
我用VC实现画线。平时没问题,但是公司来了一批新机器,在用我的软件显示地图数据时,某些线在放大到某个程度时就不见了。
我将这些线的宽度设成默认的0或把线打断了,就不会消失。
以前我在将这个程序编译成realease版时,发现所有的线宽都没了,都是细线了。我不知道这些问题是不是同一个原因引起的
请高手帮帮忙!
...全文
254 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lsypenghong 2005-03-31
  • 打赏
  • 举报
回复
gz
huirabit 2005-03-17
  • 打赏
  • 举报
回复
我把机器的显卡换了一个,就没问题了。

这难道和显卡还有关吗
alanblack 2005-03-17
  • 打赏
  • 举报
回复
诡异
billy145533 2005-03-15
  • 打赏
  • 举报
回复
ding
huirabit 2005-03-15
  • 打赏
  • 举报
回复
我的映射模式是MM_TEXT。
在新机器上装了XP就没有问题,但装了SERVER就只能显示一小块地图数据。
感觉刷新的位置总是不对。

我实在不清楚这是什么原因。请大师们帮忙
huirabit 2005-03-14
  • 打赏
  • 举报
回复
Draw(CDC *pDC)
{
int m_nNumber=GetPointCount(); //得到形状点总数

CPoint *pLogPoints=new CPoint[m_nNumber];

//转换到逻辑坐标
for(int i=0;i<m_nNumber;i++)
{
RealToLog(aPoints[i],pLogPoints[i]);
}

CPen *oldpen,pen;

pen .CreatePen(PS_SOLID,iPensize,crPencolor);

int oldmode=pDC->GetROP2();

oldpen=pDC->SelectObject(&pen);

pDC->SetROP2(R2_COPYPEN);

pDC->MoveTo(pLogPoints[0]);

for(i=0;i<m_nNumber;i++)
{
pDC->LineTo(pLogPoints[i]);
}

pDC->SelectObject(oldpen);

pDC->SetROP2(oldmode);

pen.DeleteObject();

delete pLogPoints;

}

这是我画线的代码。
菜牛 2005-03-14
  • 打赏
  • 举报
回复
代码。
菜牛 2005-03-14
  • 打赏
  • 举报
回复
这个和你的映射模式有关系,还有不知道你的iPensize到底是怎么定的。

19,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧