zoukankan      html  css  js  c++  java
  • ObjectARX自定义实体的最近点和垂点捕捉算法

     最近点用pickPoint来计算,垂点用lastPoint计算.

    一般AcDbCurve类可以用AcGe类的 getClosestPointTo 来实现计算需要的点值.

    下面是代码示例: 

    case AcDb::kOsModeNear:

           {

               AcGeLine3d line3d(m_ptA,m_ptC);         

               AcGePointOnCurve3d tmpPt;

               line3d.getClosestPointTo(pickPoint,tmpPt);

               AcGePoint3d pt=tmpPt.point();

              

               snapPoints.append(AcGePoint3d(pt));

               line3d.set(m_ptB,m_ptD);

               line3d.getClosestPointTo(pickPoint,tmpPt);

               pt=tmpPt.point();

               snapPoints.append(AcGePoint3d(pt));

           }

           break;

        case AcDb::kOsModePerp:

           {

               AcGeLine3d line3d(m_ptA,m_ptC);         

               AcGePointOnCurve3d tmpPt;

               line3d.getClosestPointTo(lastPoint,tmpPt);

               AcGePoint3d pt=tmpPt.point();

     

               snapPoints.append(AcGePoint3d(pt));

               line3d.set(m_ptB,m_ptD);

               line3d.getClosestPointTo(lastPoint,tmpPt);

               pt=tmpPt.point();

               snapPoints.append(AcGePoint3d(pt));

           }

           break;

     

  • 相关阅读:
    php类和对象: 类常量
    类和对象:静态属性、静态方法
    类和对象: 构造方法
    类和对象:成员属性、成员方法 — 学习笔记3
    类和对象:创建对象
    类和对象:类与对象定义
    可扩展定制可复用的倒计时插件
    SeaJS入门
    JS可复用的多条件筛选插件
    谁说转载的文章用户就不喜欢了?
  • 原文地址:https://www.cnblogs.com/edata/p/6817621.html
Copyright © 2011-2022 走看看