设为首页收藏本站

中国膜结构网

 找回密码
 立即注册
膜结构车棚
膜结构车棚膜结构资质国产膜材 膜结构网中国膜结构协会
查看: 242|回复: 1

objectarx之判断三点是否在一条直线上

[复制链接]
  • TA的每日心情
    开心
    2020-10-20 17:08
  • 签到天数: 1320 天

    连续签到: 3 天

    [LV.10]以坛为家III

    发表于 2020-6-11 17:51 | 显示全部楼层 |阅读模式
    bool CCommonFuntion::IsOnLine(AcGePoint2d& pt1, AcGePoint2d& pt2, AcGePoint2d& pt3)
    {
    AcGeVector3d vec1 = AcGeVector3d(pt2.x - pt1.x, pt2.y - pt1.y, 0);
    AcGeVector3d vec2 = AcGeVector3d(pt3.x - pt1.x, pt3.y - pt1.y, 0);
    double pi = 3.14159265;// 35897931;
    //double angle = vec1.angleTo(vec2);
    double angle = ((int)((vec1.angleTo(vec2)) * 100000000 + 0.5)) / 100000000.0;
    if (angle == pi || angle == 0)
    return true;
    else
    return false;
    }
    http://www.mjgw.org/ 专业从事膜结构设计、制作加工、施工安装的膜结构咨询服务,能够为客户提供专业的膜结构整体解决方案。做中国最好的膜结构综合服务平台。欢迎大家联系QQ:463017170.
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2020-10-20 17:08
  • 签到天数: 1320 天

    连续签到: 3 天

    [LV.10]以坛为家III

     楼主| 发表于 2020-6-11 17:53 | 显示全部楼层
    1. bool ThreePointIsCollinear(const AcGePoint2d &pt1, const AcGePoint2d &pt2, const AcGePoint2d &pt3)
    2. {
    3. double xy = pt1.x * pt1.x + pt1.y * pt1.y;
    4. double xyse = xy - pt3.x * pt3.x - pt3.y * pt3.y;
    5. double xysm = xy - pt2.x * pt2.x - pt2.y * pt2.y;
    6. xy = (pt1.x - pt2.x) * (pt1.y - pt3.y) - (pt1.x - pt3.x) * (pt1.y - pt2.y);

    7. return (fabs(xy) < 1.0E-5);
    8. }

    9. AcGePoint2d ToPoint2d(const AcGePoint3d &point3d)
    10. {
    11. return AcGePoint2d(point3d.x, point3d.y);
    12. }
    复制代码
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    推荐膜材品牌上一条 /5 下一条

    进口膜材 国产膜材 pvdf膜材ptfe膜材ETFE膜材
    最好的膜结构公司 一级膜结构资质 膜结构一级资质
    膜结构设计-膜结构十大品牌-etfe设计-充气膜结构
    诺科膜结构
    遨都膜结构设计
    中国膜结构网
    中国空间膜结构协会

    QQ|申请友链|Archiver|手机版|中国膜结构论坛

    GMT+8, 2020-10-21 23:56 , Processed in 0.275201 second(s), 26 queries .

    Powered by 中国膜结构网->膜材采购->膜结构设计->膜结构安装->膜结构维修

    © 2014-2020 膜结构协会->进口膜材->国产膜材->PVDF膜材->PTFE膜材->ETFE膜材.

    快速回复 返回顶部 返回列表