ObjectARX
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

deselct an Entity ...

3 REPLIES 3
Reply
Message 1 of 4
leonimas
349 Views, 3 Replies

deselct an Entity ...

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

 

 

 

3 REPLIES 3
Message 2 of 4
maisoui
in reply to: leonimas

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,

--
Jonathan
Message 3 of 4
leonimas
in reply to: maisoui

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

Message 4 of 4
diagodose2009
in reply to: leonimas

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]


Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report

”Boost