Тема: AcDbHatch

В документации на AcDbHatch есть пример его использования.
Там в одном месте вызывается

// Post hatch entity to database
//
pHatch->postToDb(pHatch, hatchId);

Не нашел описание этого метода. Кто подскажет, откуда он?

Re: AcDbHatch

Самодельная сервисная функция

Re: AcDbHatch

может это поможет?

Acad::ErrorStatus
postToDatabase(/*[in]*/AcDbEntity* pEnt,/*[out]*/AcDbObjectId& idObj)
//Purpose:
//  Adds an entity to the MODEL_SPACE of the CURRENT database.
//Note:
//  It could be generalized to add it to any block table record of
//  any database, but why complicate it...
//
{
    Acad::ErrorStatus      es;
    AcDbBlockTable*        pBlockTable;
    AcDbBlockTableRecord*  pSpaceRecord;
    if (acdbCurDwg()==NULL)
        return Acad::eNoDatabase;
    //Get a pointer to the current drawing
    //and get the drawing's block table.  Open it for read.
    if ((es = acdbCurDwg()->getBlockTable(pBlockTable, AcDb::kForRead))==Acad::eOk){
    //Get the Model Space record and open it for write.  This will be the owner of the new line.
        if ((es = pBlockTable->getAt(ACDB_MODEL_SPACE, pSpaceRecord, AcDb::kForWrite))==Acad::eOk){
            //Append pEnt to Model Space, then close it and the Model Space record.
            if ((es = pSpaceRecord->appendAcDbEntity(idObj, pEnt))==Acad::eOk)
                pEnt->close();
            pSpaceRecord->close();
        }
    pBlockTable->close();
    }
    //it is good programming practice to return an error status
    return es;
}

Re: AcDbHatch

> samdurak
Да, похоже. Спасибо.
А откуда взята эта ф-ция? Видимо тоже самодельная?

Re: AcDbHatch

Это из второй лабы ObjectARX2000. Давно пользуюсь этой функцией - и удобно, и сильно задумываться не надо. Просто копирую и присоединяю файлы
postToDatabase.h и postToDatabase.cpp
Там же функция по созданию нового слоя.