admin 发表于 2024-3-14 19:37:07

[每日一码] 使用ARX创建线型(AcDbLinetypeTableRecord)


#include "dbmain.h"         
#include "dbsymtb.h"

void utilsarxtest ()   {
    AcDbLinetypeTable *pLtypeTable =NULL ;
    // get the linetype table from the drawing
    if ( acdbHostApplicationServices()->workingDatabase()->getLinetypeTable (pLtypeTable, AcDb::kForWrite) ==
Acad::eOk ) {
      AcDbLinetypeTableRecord *pLtypeTableRecord =new
AcDbLinetypeTableRecord ;
      // set all of the properties of the linetype table record.
      pLtypeTableRecord->setAsciiDescription ("T E S T -") ;
      pLtypeTableRecord->setPatternLength (0.75) ;
      pLtypeTableRecord->setNumDashes (2) ;
      pLtypeTableRecord->setDashLengthAt (0, 0.5) ;
      pLtypeTableRecord->setDashLengthAt (1,-0.25) ;
      pLtypeTableRecord->setName ("ASTESTER") ;

      AcDbObjectId tmpId ;
      // add the pLtypeTableRecord to the linetype table
      if (pLtypeTable->add (tmpId, pLtypeTableRecord)==Acad::eOk){
            pLtypeTableRecord->close () ;
      } else {
            delete pLtypeTableRecord ;
      }
      // close everything up
      pLtypeTable->close () ;
    }
}
页: [1]
查看完整版本: [每日一码] 使用ARX创建线型(AcDbLinetypeTableRecord)