ssget visibility behaviour: _C/_W vs _F/_CP/_WP
While working through some performance ("Turbo") testing of AutoLISP routines, I noticed something that I don't recall seeing explicitly documented.
It is well known that:
(ssget "_C" p1 p2 filter)
(ssget "_W" p1 p2 filter)
fail when the selection window is completely outside the current view.
But my testing suggests:
(ssget "_F" pts filter)
(ssget "_CP" pts filter)
(ssget "_WP" pts filter)
continue to work correctly even when the relevant geometry is completely off-screen.
In other words, the following appears to be true:
_C viewport dependent
_W viewport dependent
_F viewport independent
_CP viewport independent
_WP viewport independent
This came up while removing hundreds of internal zoom operations from older routines. After removing all (zoom) calls:
(ssget "_F" ...)
continued to work perfectly on geometry outside the current view.
Questions:
- Can others reproduce this in recent BricsCAD versions?
- Is this behaviour documented anywhere?
- Is this inherited from AutoCAD, or is it specific to BricsCAD's implementation?
- Does BricsCAD internally treat _F, _CP, and _WP differently from _C and _W?
I'm not asking about _C/_W requiring visibility (that part seems well known). I'm specifically interested in whether anyone has previously noted that _F/_CP/_WP appear not to share that limitation.
Comments
-
Hello.
From my testing, the same behavior occurs in Autocad.
Also, there are others that noticed this behavior.
https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/ssget-off-screen-selection/td-p/110169330 -
I think it's worth to create a support request about it.
0 -
Thanks, so it's not my imagination!
Cheers0 -
My support request would be "Please don't touch it!" - so, I'll give that one a miss!
Thanks anyway.Regards,
Roumen
0

