luo323 2019-12-17 19:52 采纳率: 83.3%
浏览 146
已结题

相同的两个多边形区域,进行AND运算之后,为什么不等于原来的区域?

以下代码,输出99999. 请赐教!

void check_area( CDC* pDC )
{
    int n_Points=6;
    POINT points[10];

    points[0].x=8*100;
    points[0].y=5*100;
    points[1].x=1*100;
    points[1].y=1*100;
    points[2].x=3*100;
    points[2].y=2*100;
    points[3].x=4*100;
    points[3].y=2*100;
    points[4].x=4*100;
    points[4].y=1*100;
    points[5].x=8*100;
    points[5].y=5*100;

    pDC->SelectObject( pPen_blue );
    for( int i=0;i<n_Points;i++ )
       { if( i==0 )
             pDC->MoveTo( points[i].x, points[i].y );
         else
             pDC->LineTo( points[i].x, points[i].y );
       }

    CRgn Rgn_A, Rgn_B;
    Rgn_A.CreatePolygonRgn( points, n_Points, WINDING );
    Rgn_B.CreatePolygonRgn( points, n_Points, WINDING );

    Rgn_A.CombineRgn( &Rgn_A, &Rgn_B, RGN_AND );

    if( Rgn_A.EqualRgn(&Rgn_B) )
        MessageInt( 88888 );
    else
        MessageInt( 99999 );
}

区域如图所示

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-12-17 22:47
    关注

    两区域相等为非零值,你输出难道不是88888么

    评论

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?