Hi to all,
a simple question: how deselect an AcDbEntity ?
To Select I use acedSSGet(), but to deselect ... ?
Particulary I want to deselct an AcDbEntity* in the overrule
function 'moveGripPointsAt', is it possible ?
Best Regards
Leonard
Hi,
Maybe something like this : acedSSSetFirst(NULL, NULL);
I don't know if you can modify current selection in a moving point process. Maybe you can use advanced grip points to specify custom AcDbGripOperations.
Regards,
Hi Jonathan,
the deselection seems works, but doesn't works the following code:
acedSSGet(_T("_WP"), ptList, NULL, NULL, ssname)
acedGetCurrentSelectionSet(objIds);
my goals is select the Entity inside a polyline-closed (for example ptList
contains four vertices of a 2d box); but the 'objIds' array returns all Entity
inside the polilyne, except the Entity that reacts the AcDbGrip method.
the above code is executed in a AcDbGrip method overrule ...
Can you help me (I thinking that deselect the Entity ...) ?
Best Regards
Leonard
For deselect the one-entity in autolisp ,is easy job:
[lisp-source]
(setq entity0 (entget ))
(if entity0 (redraw entity 4)) ; //rem: if you wish deselect after entget
(setq ally (ssget “X”)
(ssdel entitu0 ally) ; ‘’
(redraw entity 4)
[/lisp-source]
[cpp-arx]
#include “acedads.h”
//rem:you must replace entget with
struct resbuf *acdbEntGet (const ads_name ent);
int acedRedraw (const ads_name ent, int mode);
int acedSSDel (const ads_name ename, const ads_name ss);
//rem:at-end-code you must use acedssfree(ally)
int acedSSFree (const ads_name sname);
int acedEntSel (const ACHAR *str, ads_name entres,
ads_point ptres);
int acedSSGet (const ACHAR *str, const void *pt1,
const void *pt2, const struct resbuf *filter,
ads_name ss);
[/cpp-arx]