Hi,
I am developing simmilar thing. in c++
Acad::ErrorStatus MyGripOverrule::getGripPoints(const AcDbEntity* pSubject,
AcDbGripDataPtrArray& grips,
const double curViewUnitSize,
const int gripSize,
const AcGeVector3d& curViewDir,
const int bitflags)
{
//assertReadEnabled();
AcDbGripOverrule::getGripPoints(pSubject, grips, curViewUnitSize, gripSize, curViewDir, bitflags);
AcDbGripData* p_gp = new AcDbGripData();
AcGePoint3d pt;
pt = ((CMyCircle*)pSubject)->center();
p_gp->setAppData((void*)100);
pt.x += ((CMyCircle*)pSubject)->radius() / 2.0;
p_gp->setGripPoint(pt);
grips.append(p_gp);
return Acad::eOk;
}
where MyGripOverrule is derived from AcDbGripOverrule.
when I create and select the entity, the new grip point apprears.
But when I move any grip point or deselect the entity, then it get crashed. (allocate and free has problem)
when I comment
grips.append(p_gp);
new grip point not get created but application don't get crash.
Problem is related to applocation and de applocation of the AcDbGripData. but I am not able to solve the problem.
Need help on same.
regards
Achinta