Тема: При перемещении grip точки объект рисуется как будто его очистили
Здравствуйте. Вообщем, нервов уже не хватает, не могу справится с этой проблемой.
Никогда такого не было при программировании в Delphi. :evil:
Итак, проблема в том, что мой объект созданный на основе AcDbEntity при перемещении его грип точки как будто полностью очищается:
Когда использую AcGePoint3dArray, то length() его равен 0, если просто точками, то они (0,0,0).
Adesk::Boolean ZLOI_grip::worldDraw (AcGiWorldDraw *mode) { assertReadEnabled () ; mode->geometry().worldLine(Opornie); return Acad::eOk ; } // ----------------------------------------------------------------------------- Acad::ErrorStatus ZLOI_grip::getGripPoints(AcGePoint3dArray & gripPoints, AcDbIntArray & osnapModes, AcDbIntArray & geomIds) const { assertReadEnabled(); gripPoints.append(Opornie[0]); gripPoints.append(Opornie[1]); return Acad::eOk ; } // ----------------------------------------------------------------------------- Acad::ErrorStatus ZLOI_grip::moveGripPointsAt(const AcDbIntArray & indices, const AcGeVector3d & offset) { assertWriteEnabled(); Opornie[indices.at(0)]+=offset; return Acad::eOk ; } ... class DLLIMPEXP ZLOI_grip : public AcDbEntity { public: ACRX_DECLARE_MEMBERS(ZLOI_grip) ; AcGePoint3d Opornie[2];