Community
AutoCAD Forum
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2014: Scaling multiple objects about multiple points, and using lisp routines

4 REPLIES 4
Reply
Message 1 of 5
Anonymous
1363 Views, 4 Replies

2014: Scaling multiple objects about multiple points, and using lisp routines

When you scale multiple objects, you're only able to pick ONE reference point.

 

I used the TABORD lisp routine, which is very useful for setting out: draw a polyline to connect the points you want co-ordinates for, type TABORD, and select the polyline, and it will generate a table showing the X and Y coordinates of every point.

 

It labels the points with a circle and a number, which corresponds to a number on the table, so you know which co-ordinate is which.

 

Problem is, these numbers are just dumped wherever, and are too big and many are overlapping.

 

 

I found this post on this forum about the same issue from many years ago: http://cadtips.cadalyst.com/2d-editing/scale-multiple-objects-place

 

Tim Decker posts a code dump meant for a lisp routine. But what is the actual command to activate this lisp routine?

I pasted the code dump into Notepad, saved it as "ScaleAboutPoints.lsp", and loaded into AutoCAD with APPLOAD.

but when I type "SCALEABOUTPOINTS", the command isn't found.

How do i give the lisp routine a name? Why didn't it work? is the code out of date or broken, and if so, does anyone have a new lisp routine that works?

 

If providing a lisp routine, can you include the command that is needed to actually run the thing too?

 

Cheers

4 REPLIES 4
Message 2 of 5
jggerth
in reply to: Anonymous

Reading the page you linked to, it say to type SAC to run the command after the LISP is loaded.

Message 3 of 5
Kent1Cooper
in reply to: Anonymous


@Anonymous wrote:

.... 

I found this post on this forum about the same issue from many years ago: http://cadtips.cadalyst.com/2d-editing/scale-multiple-objects-place

 

Tim Decker posts a code dump meant for a lisp routine. But what is the actual command to activate this lisp routine?

....


[Not so many years ago -- barely more than one -- and that's my routine, not Tim Decker's.]  As already noted by JGerth and on the CAD TIP web-page and in the top line of the file itself, SAC is the command name.

 

For future reference, any AutoLisp file that defines a command has a line beginning like this:

 

(defun C:WHATEVER

 

The part after the C: is always the command name that you type in to use the command.

Kent Cooper, AIA
Message 4 of 5
Anonymous
in reply to: Kent1Cooper


@Kent1Cooper wrote:

@Anonymous wrote:

.... 

I found this post on this forum about the same issue from many years ago: http://cadtips.cadalyst.com/2d-editing/scale-multiple-objects-place

 

Tim Decker posts a code dump meant for a lisp routine. But what is the actual command to activate this lisp routine?

....


[Not so many years ago -- barely more than one -- and that's my routine, not Tim Decker's.]  As already noted by JGerth and on the CAD TIP web-page and in the top line of the file itself, SAC is the command name.

 

For future reference, any AutoLisp file that defines a command has a line beginning like this:

 

(defun C:WHATEVER

 

The part after the C: is always the command name that you type in to use the command.


Apologies, I posted the wrong link, I meant to link to here: https://forums.autodesk.com/t5/autocad-2010-2011-2012/scaling-multiple-objects/td-p/2605050

 

This link was many years ago and does NOT mention the actual command, only now that you've told me it's the part after "C:" do I know what command he was referring to, so thanks for clarifying

 

I haven't tried your routine yet, I just wanted to get the one I'd downloaded working, but if this one goes wrong I'll give yours a shot - thanks for taking the time to make these things too, as I have no idea how to code

Message 5 of 5
Kent1Cooper
in reply to: Anonymous


@Anonymous wrote:

.... I meant to link to here: ....


Tim's routine will give different kinds of results for different entity types, and may even fail for some, because it uses each object's entity data entry associated with the number 10.  That's the center for Circles and Arcs and Ellipses, so it should give the kinds of results you would expect for those [though maybe not always for smaller-sweep-angle Arcs or partial Ellipses].  It's the insertion point for Blocks, so with those it will "scale in place" only if the Block's insertion point is in the middle of it.  It's the start point of a Line, so it will always scale those all in one direction from there.  It's the left end of the baseline for Text (regardless of its justification), so it will have a similar effect as with Lines.  It's the insertion point for Mtext, so the effect will vary depending on its justification.  There are multiple 10-code entries for things like Polylines and Splines, and it will always "see" the first one, which is the start point as with Lines.  I can't think off-hand of a scaleable object type without a 10-code entry, but if there are any, that routine would fail, because it would not be able to find a scaling base point.

 

Those differences are pretty much the entire reason that I made my routine that uses the middle of each object's bounding box, so they all stay "in place" as accurately as can be expected [but see comments in the file about situations in which results may be a little different than expected].

Kent Cooper, AIA

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

Post to forums  

Autodesk Design & Make Report

”Boost