Use ObjectARX 2012 when a custom entity wizard, the wizard get snap points rewrite function template a little problem,
C:\Program Files (x86)\Autodesk\ObjectARX 2019 Wizards\ArxWizCustomObject\Templates\1033
In the template ArxWizCustomObject in .object.h and .cpp it turned out to be
virtual Acad::ErrorStatus subGetOsnapPoints ( AcDb::OsnapMode osnapMode, int gsSelectionMark, const AcGePoint3d &pickPoint, const AcGePoint3d &lastPoint, const AcGeMatrix3d &viewXform, AcGePoint3dArray &snapPoints, AcDbIntArray &geomIds) const ; virtual Acad::ErrorStatus subGetOsnapPoints ( AcDb::OsnapMode osnapMode, int gsSelectionMark, const AcGePoint3d &pickPoint, const AcGePoint3d &lastPoint, const AcGeMatrix3d &viewXform, AcGePoint3dArray &snapPoints, AcDbIntArray &geomIds, const AcGeMatrix3d &insertionMat) const ;
Wherein the second type of parameter int gsSelectionMark, started in ARX2008 is a simple modification Adesk :: GsMarker gsSelectionMark,
Acad::ErrorStatus [!output CLASS_NAME]::subGetOsnapPoints ( AcDb::OsnapMode osnapMode, Adesk::GsMarker gsSelectionMark, const AcGePoint3d &pickPoint, const AcGePoint3d &lastPoint, const AcGeMatrix3d &viewXform, AcGePoint3dArray &snapPoints, AcDbIntArray &geomIds) const { assertReadEnabled () ; return ([!output BASE_CLASS]::subGetOsnapPoints (osnapMode, gsSelectionMark, pickPoint, lastPoint, viewXform, snapPoints, geomIds)) ; } Acad::ErrorStatus [!output CLASS_NAME]::subGetOsnapPoints ( AcDb::OsnapMode osnapMode, Adesk::GsMarker gsSelectionMark, const AcGePoint3d &pickPoint, const AcGePoint3d &lastPoint, const AcGeMatrix3d &viewXform, AcGePoint3dArray &snapPoints, AcDbIntArray &geomIds, const AcGeMatrix3d &insertionMat) const { assertReadEnabled () ; return ([!output BASE_CLASS]::subGetOsnapPoints (osnapMode, gsSelectionMark, pickPoint, lastPoint, viewXform, snapPoints, geomIds, insertionMat)) ; }
Failure to capture this problem will not appear in more than ARX2008 version.