Need help on filtering XData for ssGet

Need help on filtering XData for ssGet

Anonymous
Not applicable
524 Views
2 Replies
Message 1 of 3

Need help on filtering XData for ssGet

Anonymous
Not applicable
I've 2 Circle entities groups which contained XData regapp="ABC" and contain Long data like this
one group contained (-3 ("ABC" (1071 . 12345)))

another groups contained (-3 ("ABC" (1071 . 11111)))

How could I use acedSSGet("X", NULL, NULL, &rbXData, ssEntity) to get only entities which contained (1071 . 12345)

For now I've to use ssget to get all which have appname="ABC" and loop to filter out myself, because I try to do filter resbuff but it's not working.

I just wonder that any trick to do or it's AutoCAD bug or it's limitting.
PS: both Lisp and Arx can't.
0 Likes
525 Views
2 Replies
Replies (2)
Message 2 of 3

Anonymous
Not applicable
> I just wonder that any trick to do or it's AutoCAD bug or it's limitting.

That's a limitation of acedSSGet, and manually checking each entity is one
solution. Another solution is to use unique AppIDs for the different values
you're filtering by, then use the AppID to filter the data, but this method
is only advisable if it doesn't result in cluttering the database with a lot
of AppIDs. 🙂
--
Owen Wengerd
President, ManuSoft ==> http://www.manusoft.com
VP Americas, CADLock, Inc. ==> http://www.cadlock.com
0 Likes
Message 3 of 3

Anonymous
Not applicable
Hello,

 

From ObjectARX Help:

 

You can retrieve extended
data for a particular application by specifying its
name in
a filter list, using the -3 group code. The

face=Courier10PitchBT-Roman>acedSSGet()
function
returns entities with extended data registered to the specified name;
acedSSGet()
face=StoneSerif>does not retrieve individual extended data
items
(with group codes in the range 1000

face=StoneSerif>–

size=3>2000).

 

Regards,

Fernando.


style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
I've
2 Circle entities groups which contained XData regapp="ABC" and contain Long
data like this
one group contained (-3 ("ABC" (1071 . 12345)))

another groups contained (-3 ("ABC" (1071 . 11111)))

How could I use acedSSGet("X", NULL, NULL, &rbXData, ssEntity) to get
only entities which contained (1071 . 12345)

For now I've to use ssget to get all which have appname="ABC" and loop to
filter out myself, because I try to do filter resbuff but it's not working.

I just wonder that any trick to do or it's AutoCAD bug or it's limitting.

PS: both Lisp and Arx can't.

0 Likes