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;

     

  • 相关阅读:
    pyhton 线程锁
    python 守护线程
    python 线程
    python 判断文件的字符编码
    python 进程管道
    python 进程池
    webpack学习(一)起步安装
    最近特别喜欢的一首歌
    你真的了解回流和重绘吗?
    你了解SEO中的时效性吗?
  • 原文地址:https://www.cnblogs.com/edata/p/6817621.html
Copyright © 2011-2022 走看看