zoukankan      html  css  js  c++  java
  • objectarx之画多段线和画直线

    void CCommonFuntion::DrowPloyLine(AcGePoint2dArray& inputpoints)
    {
    if (inputpoints.length() < 3)
    return;
    AcDbPolyline *pPolyLine = new AcDbPolyline(3);
    for (int i = 0; i < inputpoints.length(); i++)
    {

    pPolyLine->addVertexAt(i, inputpoints.at(i), 0, 1.0, 1.0);

    }

    AcDbBlockTable *pBlockTable = NULL;
    acdbHostApplicationServices()->workingDatabase()->getBlockTable(pBlockTable, AcDb::kForRead);
    AcDbBlockTableRecord *pBlockTableRocord;
    pBlockTable->getAt(ACDB_MODEL_SPACE, pBlockTableRocord, AcDb::kForWrite);
    AcDbObjectId lineId;
    pBlockTableRocord->appendAcDbEntity(lineId, pPolyLine);
    pBlockTable->close();
    pBlockTableRocord->close();
    pPolyLine->close();
    }

    AcDbObjectIdArray CCommonFuntion::DrowLine(AcGePoint3dArray& inputpoints)
    {
    AcDbObjectIdArray ids;
    if (inputpoints.length() < 2)
    return ids;
    for (int i=0;i<inputpoints.length();i++)
    {

    if (i==inputpoints.length()-1)
    {
    AcDbLine *pPline = new AcDbLine(inputpoints[i], inputpoints[0]);
    AcDbObjectId ID=CCommonFuntion::PostToModelSpace(pPline);
    if (pPline)
    pPline->close();
    ids.append(ID);
    }
    else
    {
    AcDbLine *pPline = new AcDbLine(inputpoints[i], inputpoints[i + 1]);
    AcDbObjectId ID = CCommonFuntion::PostToModelSpace(pPline);
    if (pPline)
    pPline->close();
    ids.append(ID);
    }

    }
    return ids;
    }

  • 相关阅读:
    phpstorm 破解方法
    shell_exec
    数据库配置
    sprintf
    MySQL优化步 (InnoDB)
    Python小白需要知道的 20 个骚操作!
    Python常用库整理
    Python:什么是进阶,如何进阶?
    Python中标准模块importlib详解
    Python开发【Django】:中间件、CSRF
  • 原文地址:https://www.cnblogs.com/Pond-ZZC/p/11813636.html
Copyright © 2011-2022 走看看