Jump to content
  • 0

Bring back the Extend Tool


type11

Question

19 answers to this question

Recommended Posts

  • 0

Call. NNA, it's time to bring back this useful feature, especially since AutoCAD has a similar capability. Eliminating the extend tool was a step backwards. I imagine many people use it as I once did, to project lines from a floor plan to create an elevation or section.

[ 01-20-2003, 01:48 PM: Message edited by: P Retondo ]

Link to comment
  • 0

I also miss the extend tool and wish to see it come back. But I never used it for extending multiple lines with one click.

I am also curious what version of Vectorworks allowed this behavior. The extend tool existed in version 8.5.2, but I just sampled it in both the offered modes with all different combinations of lines selected, and I could not get it to extend more than one line at a time.

Either way, I would certainly like to have this ability in a future version.

Link to comment
  • 0

I fired up an old version of VW 8.52 to examine the extend tool.

As it turns out you can't extend multiple lines to a boundry with a single click. You have to click each line in order to extend it. This is still way better than having to click and drag each line as in VW 9/10.

I was confusing the old extend tool with an OzCad plugin by Julian Carr. He had an Extend to Line tool that worked very well. I am not sure if these plugins work with VW10.

I would love to see Extend to Line and Extend Multiple Lines to Boundry in the next rev. of VW.

Link to comment
  • 0

Essentially, the connect combine tool (second mode) does this.

You click on the one line, then click on the other line and it will drag the one line to meet or extend to the other one.

Alternately, you can select several lines and stretch them to be really long using the 2d tool at one time. Then switch to the split by line/point tool using the Split by Line mode and split the horizontal lines with a vertical line. This will break the lines at that intersection point. Then you can delete the bogus lines.

OR you can use a vertical line on horizontal lines as a trimming line. Using the Trim tool, click on the lines and pick them off one at a time.

There are lots of different ways to get the same result.

Link to comment
  • 0

Sean and Katie,

Perhaps you are somewhat misled by the way we are characterizing the use of the extend tool. With the old extend tool, you select the line to be extended to, select the tool, then click once on each of the lines to be extended. N.B.: the line to be extended to does not have to be in your view! It can be hundreds of feet away, and you can zoom in to see the individual lines to be extended, which may be inches or less apart! So besides one click for each extend, no panning and zooming between clicks. This is what we miss.

Better than just bringing back the extend tool, it would be great if there were a second mode where you could select multiple lines to be extended, then hit enter to extend them all at once.

[ 01-22-2003, 09:10 PM: Message edited by: P Retondo ]

Link to comment
  • 0

quote:

Originally posted by P Retondo:

Sean and Katie,

Perhaps you are somewhat misled by the way we are characterizing the use of the extend tool. With the old extend tool, you select the line to be extended to, select the tool, then click once on each of the lines to be extended. N.B.: the line to be extended to does not have to be in your view! It can be hundreds of feet away, and you can zoom in to see the individual lines to be extended, which may be inches or less apart! So besides one click for each extend, no panning and zooming between clicks. This is what we miss.

Better than just bringing back the extend tool, it would be great if there were a second mode where you could select multiple lines to be extended, then hit enter to extend them all at once.

Yes, clearly said. It's the "out of view" ability which makes the tool so useful, and a "multiple line" version would be more so.

- Carl

Link to comment
  • 0

The beauty of the Extend tool in VectorWorks is tied to the ease with which rectangles and other surfaces can be created. In VectorWorks, I normally draw with rectangles, not with lines, and add and clip them to form shapes which can be easily re-shaped, filled, hatched, and given new line weight and dash pattern. Often it's necessary to fill one of those shapes with something for which a hatch doesn't work, or just extend several lines to the edge of a floor, wall, window, etc. It's easy and quick to select a polygon or surface, and then extend a lot of lines to its boundary, even if the boundary is off the screen.

In versions up to 8.5.2, the Extend tool had 2 modes. The first mode was useless because it required dragging the extendee to the boundary. Stretching with the Selection tool would be just as easy. The Second mode is the great tool everyone misses so much: select boundary object or objects, then select Extend tool (second mode), and then click once on each line that you want extended to the nearest boundary. No dragging. You have to click on the half of the line that's in the direction you want it extended. You can click again to extend to the next boundary after that.

I'm still using version 8, even though I bought the upgrade to 9, because of this problem and a few others which version 9 had. I'm looking at version 10 now, and it seems to me that it corrects all those other problems of version 9, and sometimes even improves on version 8. But it still doesn't have the very important Second mode of the Extend tool.

The Connect/Combine tool only works like the useless First mode of the Extend tool, i.e. by dragging, and only it extends a line in one direction. It's certainly not a replacement for the old Extend tool.

Link to comment
  • 0

I think that this thread is a little more evidence that (some) users continue to care about improvements to 2D tools.

These tools may be old-fashioned and counter to the single model ideal, not interesting as a programming challenge, and insofar as they mimic ACAD, (extend tool, "fences") they may even contribute to loss of program character. But, they are efficient and useful for certain tasks.

- Carl

Link to comment
  • 0

I have found the command routine from VW 7.03 that I use perhaps a hundred times during my normal drawing work day. It is CRITICAL to my descision to update to VW10. It was authored by Sean Flaherty himself. I use it as a command from my saved sheets pallette off the bottom scroll bar which I find more useful than as a traditional command. It allows single or multiple line extensions with a one click selection. I can email it to anyone who feels they can update it to work in VW10.

Thanks in advance,

Ian Kelshaw

Link to comment
  • 0

code:

 

PROCEDURE Extend;

{* by Sean Flaherty of Graphsoft, Inc. *}

{* Takes the selected lines and extends them to a line *}

{* chosen by the user. *}

VAR

theList, theObj : Handle;

whereX, whereY, px, py, vx, vy : REAL;

?

FUNCTION CrossP( x1, y1, x2, y2 : REAL) : REAL;

BEGIN

CrossP := x1 * y2 - x2 * y1;

END;

?

FUNCTION DistToV( x, y : REAL ) : REAL;

VAR

num, denom : REAL;

BEGIN

num := Abs( CrossP( x - px, y - py, vx, vy ));

denom := Sqrt( vx**2 + vy **2 );

DistToV := num / denom;

END;

?

PROCEDURE GetEquation( x1, y1, x2, y2 : REAL; VAR slope, off : REAL; VAR

inf : BOOLEAN );

BEGIN

IF x1 = x2 THEN inf := TRUE

ELSE BEGIN

inf := FALSE;

slope := ( y2 - y1 ) / ( x2 - x1 );

off := y1 - slope * x1;

END;

END;

?

PROCEDURE ExtendLine( u : Handle );

VAR

s1x, s1y, s2x, s2y, rx, ry : REAL;

FUNCTION SectToV( a1x, a1y, a2x, a2y : REAL ) : BOOLEAN;

VAR

infA, infV, tmpBool : BOOLEAN;

slopeA, slopeV, offA, offV : REAL;

?????????

BEGIN

GetEquation( a1x, a1y, a2x, a2y, slopeA, offA, infA );

GetEquation( px, py, px + vx, py + vy, slopeV, offV, infV );

IF infA & infV THEN tmpBool := FALSE

ELSE BEGIN

tmpBool := TRUE;

IF infA THEN BEGIN

rx := a1x;

ry := slopeV * rx + offV;

END

ELSE IF infV THEN BEGIN

rx := px;

ry := slopeA * rx + offA;

END

ELSE IF slopeA <> slopeV THEN BEGIN

rx := ( offV - offA ) / ( slopeA - slopeV );

ry := slopeA * rx + offA;

END

ELSE tmpBool := FALSE;

END;

?????????

SectToV := tmpBool;

END;

BEGIN

GetSegPt1( u, s1x, s1y );

GetSegPt2( u, s2x, s2y );

?????

IF DistToV(s1x,s1y) < DistToV(s2x,s2y) THEN BEGIN

IF SectToV(s1x,s1y,s2x,s2y) THEN SetSegPt1(u,rx,ry);

END

ELSE BEGIN

IF SectToV(s1x,s1y,s2x,s2y) THEN SetSegPt2(u,rx,ry);

END;

END;

BEGIN

theList := FSActLayer;

IF theList <> NIL THEN BEGIN

Message( 'Pick the line to extend to' );

GetPt( whereX, whereY );

ClrMessage;

theObj := PickObject( whereX, whereY );

IF ( theObj <> NIL ) & ( GetType( theObj ) = 2 ) THEN BEGIN

{* set the constraining vector *}

GetSegPt1( theObj, px, py );

GetSegPt2( theObj, whereX, whereY );

vx := whereX - px;

vy := whereY - py;

?????????

WHILE theList <> NIL DO BEGIN

IF GetType( theList ) = 2 THEN ExtendLine( theList );

theList := NextSObj( theList );

END;

END;

END;

END;

RUN( Extend );
[/code]

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...