Move obj from center which are not in the same plane

Move obj from center which are not in the same plane

shonemml
Advocate Advocate
1,963 Views
16 Replies
Message 1 of 17

Move obj from center which are not in the same plane

shonemml
Advocate
Advocate

Respected,


The move command cannot move objects at right angles if they are not in a plane.

 

I need a lisp that moves more objects from their centers. something like plugin RIPL and SIPL (rotate and scale multiple object in place-from their centers) but for MOVE objects??

 

Does anyone know anything about? Is there some lisp or plugin?

 

http://prntscr.com/u9i3qe

0 Likes
Accepted solutions (1)
1,964 Views
16 Replies
Replies (16)
Message 2 of 17

Kent1Cooper
Consultant
Consultant

@shonemml wrote:

....The move command cannot move objects at right angles if they are not in a plane.

 

I need a lisp that moves more objects from their centers. ....


A starting place would be MirrorAcrossObject.lsp with its MAO command, available >here<.  It finds the middle of the bounding box of each object, and it finds the closest point to that along the path object.  It uses the direction of the path object at that point for a Mirror axis, but could easily be adjusted to use the direction perpendicular to that as a Move direction.  Does that sound like it would do what you want?

Kent Cooper, AIA
Message 3 of 17

hak_vz
Advisor
Advisor

If I can guess from your screenshot, you want to offset 3dpolyline. Here are some solutions to that problem.

Miljenko Hatlak

EESignature

Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
0 Likes
Message 4 of 17

Kent1Cooper
Consultant
Consultant

Further clarification questions:

 

I assume that by "right angles" you mean that you want to Move things in a direction perpendicular to some path object such as a roadway edge.  Is that correct?  Would that path object always be the same kind of thing, such as a Polyline?

 

Would you always want things Moved farther  from that path object, or might you sometimes want them Moved closer  to it, or even possibly across  it, if the Move distance is greater than their current distance from it?

 

 

Kent Cooper, AIA
0 Likes
Message 5 of 17

Sea-Haven
Mentor
Mentor

That is why road design software has all that offset stuff built in, the image is definately a road design so why can you not do it there or have they been given dwg now trying to do offsets ? Trying to create a setout list of points ?

 

When offset 3dplines etc in this road case would take each vertice work out perp direction new point at offset using X&Y and a possible Z change. Again built in to road software. 1st derivative comes to mind. 

 

A common use is field survey the surveyor picks up the lip/edge of a kerb in office adds Back of kerb 0.45 offset and +0.11 to Z. So one line becomes 2.

 

Happy to provide some examples. had a quick look at 3dpoly offset did not work.

 

Entities in set: 1
---------- Lwpolyline ---------------------------------------------
Layer: CSD-FOOTPATH_LEFT
Location: X= 268677.138 Y= 5781220.376 Z= 17.357
Location: X= 268678.095 Y= 5781226.779 Z= 17.324
Location: X= 268678.177 Y= 5781227.691 Z= 17.318

0 Likes
Message 6 of 17

Sea-Haven
Mentor
Mentor

A google and some possibilities https://www.cadtutor.net/forum/topic/221-how-do-i-offset-3d-polyline/page/1/#comments

 

Looks like maybe copy, flatten, offset then adjust vertices to original Z values. Need a total vertice check as Bowties may occur on short segements.

0 Likes
Message 7 of 17

shonemml
Advocate
Advocate

MirrorAcross Obj lisp can be very helpful to me, thank you for sharing! 

 

But i cant change the angle of lamp.

 

 

0 Likes
Message 8 of 17

shonemml
Advocate
Advocate

You are perfectly right! I need to move things in direction perpendicular to roadway edge, and yes it will be always polyline the background that I indent as a reference (with NCOPY i can back polyline in model), and you are again in right i need sometimes to move them across, sometime closer to it. And thank you for your time and effort!!

0 Likes
Message 9 of 17

shonemml
Advocate
Advocate

Thanks a lot for the reply, but it isn't offset 3d polyline, @Kent1Cooper  has guessed exactly what I need

0 Likes
Message 10 of 17

shonemml
Advocate
Advocate

Thanks for the response and involvement in solving the problem,

my part are electrical installations not highway design so i use autocad

I try setout list of points or something like that it doesnt solve the problem.

0 Likes
Message 11 of 17

ВeekeeCZ
Consultant
Consultant

I never heard of RIPL or SIMP routines/plugins. Would you share a link to take a look at how do they behave like?

 

I do have a few routines that move/copy objects in relation to a polyline (as an alignement). I use them mostly for texts (as height labels), but it would not be too complicated to adjust the routine to work with general objects.

0 Likes
Message 12 of 17

shonemml
Advocate
Advocate

@ВeekeeCZ I can't find the link at the moment, but here you go attached file.

 

After installation you can run the RIPL or SIPL commands and you can also run the plugin from add-ins. (Rotate In - Place multiply obj and Scale In-Place multiply obj from their cenetrs). If you have any questions about it i am available. 

0 Likes
Message 13 of 17

ВeekeeCZ
Consultant
Consultant

Thanks. It's THIS  one for anyone who's interested.

Message 14 of 17

Kent1Cooper
Consultant
Consultant
Accepted solution

@Kent1Cooper wrote:

@shonemml wrote:

....The move command cannot move objects at right angles if they are not in a plane.

I need a lisp that moves more objects from their centers. ....


A starting place would be MirrorAcrossObject.lsp with its MAO command....


Here's a modification to do that [lightly tested] -- the attached MovePerToObject.lsp with its MPO command.  I didn't try with a 3D path object that varies in Z coordinate, but I think it should work, except that I think because the (angle) function returns XY-plane angle only, things should Move in the XY direction but not in the Z direction from their original locations.  If something is at a different Z elevation from the nearest point on the path, such as on a bank beside the road, and you want it to "slide along the bank" including a change in Z coordinate, I think it would be possible, with some different calculations, to do that.

Kent Cooper, AIA
Message 15 of 17

Sea-Haven
Mentor
Mentor

Is the Z value relevant for you if not then its easy copy 3dpoly an exact amount say to left Flatten the polyline, offset move the new offset line back to right the exact amount all done. Erase the copy 3dpoly as well.

0 Likes
Message 16 of 17

Kent1Cooper
Consultant
Consultant

Some further clarification questions:

Some of the suggestions here, regarding an associative Array-along-a-path, would require the things you're Moving to be equally spaced  along the starting path object.  It seems clear to me that this is not always going to be the case -- from your image, the lower two spacings here are clearly greater than the upper spacings:
MPO.png

If they can't be assumed to be equally spaced, I think the Array-along-a-path approach is not going to do what you want.

 

And I can't quite tell from the image, but are the objects to be Moved starting off at the same distance from  the roadway-edge path object?  Some of the suggestions involving Offsetting [I assume so the objects can be Moved to the nearest place on the Offset-result path] would do you no good if the objects are starting out at different distances from the path, and you want them at new but still different  distances from it.  [And you are correct -- a 3DPolyline cannot be Offset, anyway.]

 

My MPO command requires neither  equal spacing nor  starting or ending positions at equal distances from the path.

Kent Cooper, AIA
0 Likes
Message 17 of 17

shonemml
Advocate
Advocate

@Kent1Cooper , That's it, you're awesome! thank you for your time and great help!

 

The objects I move in the group are all at the same distance from the edge of the road so your lisp is really a big help!

0 Likes