dry 发表于 2003-12-26 14:29:00

如何得到一条线的两个坐标

请教大侠 如何用ARX得到一条线的两个坐标
谢谢了

victory 发表于 2003-12-26 15:38:00

void GetPoints(void)
{
      double dpt;
      long entname;
      if(acedEntSel("\nSpecify a Line:",entname,dpt)!=RTNORM)
                return;
      AcDbObjectId EntID;
      acdbGetObjectId(EntID,entname);
      AcDbObject *pObj=NULL;
      if(acdbOpenObject(pObj,EntID,AcDb::kForRead)!=Acad::eOk)
                return;
      if(pObj->isKindOf(AcDbLine::desc())!=TRUE)
      {
                pObj->close();
                return;
      }
      pObj->close();
      AcDbLine *pLine=NULL;
      if(acdbOpenObject(pLine,EntID,AcDb::kForRead)!=Acad::eOk)
                return;
      AcGePoint3d agStart,agEnd;
      agStart=pLine->startPoint();
      agEnd=pLine->endPoint();
      pLine->close();
      acutPrintf("\nStart Point (%.3f,%.3f)",agStart.x,agStart.y);
      acutPrintf("\nEnd Point (%.3f,%.3f)",agEnd.x,agEnd.y);
}

dry 发表于 2003-12-26 17:01:00

非常 感谢 有机会要想你多学习呀
页: [1]
查看完整版本: 如何得到一条线的两个坐标