Author Topic: (vla-move (vla-copy SelectionSet  (Read 1021 times)

0 Members and 1 Guest are viewing this topic.

JohnSnow

  • Newt
  • Posts: 52
(vla-move (vla-copy SelectionSet
« on: June 07, 2022, 04:59:41 AM »
With copy command I can copy selection set gained from ssget. How do I achieve this using vla-move & vla-copy? I don't want to loop the selection sets because it is time-consuming and most importantly, it will lose draw order.

Thank you

ribarm

  • Gator
  • Posts: 3297
  • Marko Ribar, architect
Re: (vla-move (vla-copy SelectionSet
« Reply #1 on: June 07, 2022, 07:02:50 AM »
With copy command I can copy selection set gained from ssget. How do I achieve this using vla-move & vla-copy? I don't want to loop the selection sets because it is time-consuming and most importantly, it will lose draw order.

Thank you
If you think that draw order will be messed up upon (vla-move) and (vla-copy), why are you searching for this technique? If you really need this as your proficient way of manipulation, then there is also (entmake), (entdel), (entmod) beside... And if not satisifed, then still you can store draw order in a list :

1. check real order of database creation...
2. check real order of database exponation (previewing) - SORTENTS dictionary...
When and after (vla-copy) (vla-move), apply that 1.) and 2.) to desired database data...

Considering 1.) - you could try to reflect new entity (appended) after (vla-copy) just after, or just before original, or you can append them in the order you are expecting like with normal COPY - to the last new entity of database...
To achieve transfering to after/before master one (reference), you'll have to alter all last ones by removing them - loosing thir handles, recreating new copy, and recreating all lost prviously - this means, plenty of cumbersome job, considering that you may beside it have entities with XDATA, LDATA, XRECORD, ... , all that may have ownerships of perhaps persistent/normal reactors (object reactors), hyperlinks, ...

Considering 2.) - quick way of doing this is by using (movetotop/movetobottom) - search www.lee-mac.com for DrawOrder.lsp sub functions... You can also try built-in command "CDORDER", or by layers - there is LSP...

I'll see if I can find it in my library... I worte in the past one version with true color OpenDCL (Owen Wengerd) and more options, involving lineweights, layers (I think I omitted linetypes - as it would make things more robust and complex and not practical)...

[EDIT / PS.]
Have a look at those 4 functions for selection set cycling...
http://www.theswamp.org/index.php?topic=57461.msg609384#msg609384
[/EDIT]
« Last Edit: June 07, 2022, 07:21:47 AM by ribarm »
Marko Ribar, d.i.a. (graduated engineer of architecture)

:)

M.R. on Youtube

JohnSnow

  • Newt
  • Posts: 52
Re: (vla-move (vla-copy SelectionSet
« Reply #2 on: June 07, 2022, 09:15:57 PM »
Thank you. I will have a look

ronjonp

  • Needs a day job
  • Posts: 7531
Re: (vla-move (vla-copy SelectionSet
« Reply #3 on: June 08, 2022, 04:02:48 PM »
Lee also has a whole suite of draworder functions: http://www.lee-mac.com/draworderfunctions.html

Are you sure that draworder is lost when using vla-copy? Do you have DRAWORDERCTL SET TO 3?
« Last Edit: June 08, 2022, 04:06:35 PM by ronjonp »

Windows 11 x64 - AutoCAD /C3D 2023

Custom Build PC