Тема: Как определить любую точку 3DSolid.
Нужно определить любую точку на Solid'е
Пробую так
ads_name adsSelSet; AcDbObjectId entId; AcDbObject *pEnt; ads_name ename; int i,ii; long length; AcGePoint3d pt; if (RTNORM != acedSSGet( NULL, NULL, NULL, NULL, adsSelSet )) { acutPrintf( "\nкоманда отменена\n" ); acedPostCommandPrompt(); return; } acedSSLength(adsSelSet, &length); for (i = 0; i < length; i++) { acedSSName(adsSelSet, i, ename); acdbGetObjectId(entId, ename); acdbOpenObject(pEnt, entId, AcDb::kForRead); AcDbSolid* face = (AcDbSolid*)pEnt; AcGePoint3d pt; ASSERT(solid != NULL); for (ii=0;i<4;i++) { if (face->getPointAt(ii, pt) == Acad::eOk) {face->getPointAt(ii, pt); ..... } pEnt->close; }
но acad вылетает с ошибкой. Подскажите, что делаю неправильно.