Community
AutoCAD LT Forum
Welcome to Autodesk’s AutoCAD LT Forums. Share your knowledge, ask questions, and explore popular AutoCAD LT topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Insert block & break line

8 REPLIES 8
Reply
Message 1 of 9
Anonymous
2004 Views, 8 Replies

Insert block & break line

I need to insert a block on (and aligned) a line, then break that line a
specified distance on each side of the inserted block.
I have no idea where to start, any help would be greatly appreciated.
8 REPLIES 8
Message 2 of 9
Anonymous
in reply to: Anonymous

Depending on what your prompts are for the block etc., make the correction
necessary
^C^C_-insert;MYBLOCK;\;;\_break;\;f;\\

--
Dean Saadallah
Add-on products for LT
http://www.pendean.com/lt
--
Message 3 of 9
Anonymous
in reply to: Anonymous

Here is what I use for flow sheet line jumpers (1/8" dia).
Their insert point is the center of the arc and will
be the intersection the user picks. Oh, I have also accounted
for LTSCALE, since most flowsheets are done completely
in modelspace (and usually at 1 to 1). Do note that our
LTSCALE is based of a factor of 1 and not 0.5 or other like
some folks use (we use our own customize linetypes).

This is setup for a menu, so for toolbar buttons join at
and remove the "+" on the ends of the lines. Be careful when
cut-n-pasting as some news readers addd extra ^[Letter] at
the end of the lines.

Jumper Horizontal (pick intersection):
^C^C_id;int;\_-insert;jumper;_none;$m=$(getvar,lastpoint);+
$(if,$(=,$(getvar,measurement),1),$(*,$(getvar,ltscale),25.4),+
$(getvar,ltscale));;0;_break;\_first;_none;$(eval,$(+,$(index,+
0,$(getvar,lastpoint)),$(if,$(=,$(getvar,measurement),1),+
$(*,$(getvar,ltscale),1.5875),$(*,$(getvar,ltscale),0.0625)))+
","$(index,1,$(getvar,lastpoint)));_none;$(eval,$(-,$(index,+
0,$(getvar,lastpoint)),$(if,$(=,$(getvar,measurement),1),$(*,+
$(getvar,ltscale),1.5875),$(*,$(getvar,ltscale),0.0625)))","+
$(index,1,$(getvar,lastpoint)));

Jumper Vertical (pick intersection):
^C^C_id;int;\_-insert;jumper;_none;$m=$(getvar,lastpoint);+
$(if,$(=,$(getvar,measurement),1),$(*,$(getvar,ltscale),25.4),+
$(getvar,ltscale));;90;_break;\_first;_none;$(eval,$(index,0,+
$(getvar,lastpoint))","$(+,$(index,1,$(getvar,lastpoint)),+
$(if,$(=,$(getvar,measurement),1),$(*,$(getvar,ltscale),1.5875),+
$(*,$(getvar,ltscale),0.0625))));_none;$(eval,$(index,0,$(getvar,+
lastpoint))","$(-,$(index,1,$(getvar,lastpoint)),$(if,$(=,+
$(getvar,measurement),1),$(*,$(getvar,ltscale),1.5875),$(*,+
$(getvar,ltscale),0.0625))));

Jumper at angle (must pick all points):
^C^C_id;int;\_-insert;jumper;_none;$m=$(getvar,lastpoint);+
$(if,$(=,$(getvar,measurement),1),$(*,$(getvar,ltscale),25.4),+
$(getvar,ltscale));;_near;\_break;\_first;_end;\_end;\

Enjoy,
Stef

"TomDe" wrote on 29 Aug 2003:

> I need to insert a block on (and aligned) a line, then break that line a
> specified distance on each side of the inserted block.
> I have no idea where to start, any help would be greatly appreciated.


--
mailto: yodersj@earthlink.net_remove_
http://www.flatmtn.com/ || CAD / Computers
Hardcore LT users: Doing what they say can't be done.
Message 4 of 9
Anonymous
in reply to: Anonymous

Dean, your routine worked but it did not give me the flexibility that I
think I need.

Maybe I should have explained that I wanted the block inserted in the middle
of the gap created bythe break and that the inserted block would be aligned
with the line.

I did try to modify Steph's macro and came up with the following:

^C^C_line;_nea;\_nea;\;_erase;_last;;_break;@-3.5<$M=$(angtos,$(getvar,+
lastangle));@3.5<$M=$(angtos,$(getvar,lastangle));_-"MYBLOCK"_n;@;;_e;@-1.75
<$M=$(angtos,$(getvar,lastangle));

But it doesn't place the block in the middle of the break and isn't rotated
to align to the line.

More help please.
Message 5 of 9
Anonymous
in reply to: Anonymous

How would you determine the size of the break 'gap'?
Would the break gap exist before the block is inserted?
Is the gap and the block 'width' a perfect dimensional match?
Align block with the line? That would depend on your insertion point, and
the block's own insertion point which would make the task a lot easier. A
DWG sample perhaps of the block and the final desired effect?

--
Dean Saadallah
Add-on products for LT
http://www.pendean.com/lt
--
Message 6 of 9
Anonymous
in reply to: Anonymous

"Dean Saadallah" wrote in message
news:FE78DAC34A619F35B9429246D45662EB@in.WebX.maYIadrTaRb...
> How would you determine the size of the break 'gap'?

The size of the gap would be predetermined by the macro and probably would
be different for each block.

> Would the break gap exist before the block is inserted?

No, I would like the gap created at the time of the block insertion.

> Is the gap and the block 'width' a perfect dimensional match?

It needs to only be printable.

> Align block with the line? That would depend on your insertion point, and
> the block's own insertion point which would make the task a lot easier.

My intent would be to use the insertion point as a basis reference for the
gap.

> A DWG sample perhaps of the block and the final desired effect?

Visualize a circle with a letter in the center as the block, the letter
would be aligned with the line.

>
> --
> Dean Saadallah
> Add-on products for LT
> http://www.pendean.com/lt
> --
>
>

Thanks Dean
Message 7 of 9
Anonymous
in reply to: Anonymous

Must it the line be broken? Could you live with "whiteout" built into
the blocks instead to mask the line?

Otherwise I'm seeing a macro that breaks down logically as:
Macro: Start insert block.
User: Pick insert point.
Macro: Scale of block, osnap nea.
User: Pick to rotate and align.
Macro: Start break command, first, possibly osnap int.
User: Pick first break point
Macro: Possibly osnap int.
User: Pick second break point

With the variable rotation factor and DEISEL's limitations, that is
about the best you can do.

Enjoy,
Stef

"TomDe" wrote on 02 Sep 2003:
[snip]
> Visualize a circle with a letter in the center as the block, the
> letter would be aligned with the line.


--
mailto: yodersj@earthlink.net_remove_
http://www.flatmtn.com/ || CAD / Computers
Hardcore LT users: Doing what they say can't be done.
Message 8 of 9
Anonymous
in reply to: Anonymous

I tried using "whiteout" (color 255) and had problems seeing all of the
block at different scales.
Thanks for your help, I'll keep trying.

"S. Yoder" wrote in message
news:Xns93EB63F6192C0yodersj@64.124.46.110...
> Must it the line be broken? Could you live with "whiteout" built into
> the blocks instead to mask the line?
>
> Otherwise I'm seeing a macro that breaks down logically as:
> Macro: Start insert block.
> User: Pick insert point.
> Macro: Scale of block, osnap nea.
> User: Pick to rotate and align.
> Macro: Start break command, first, possibly osnap int.
> User: Pick first break point
> Macro: Possibly osnap int.
> User: Pick second break point
>
> With the variable rotation factor and DEISEL's limitations, that is
> about the best you can do.
>
> Enjoy,
> Stef
>
> "TomDe" wrote on 02 Sep 2003:
> [snip]
> > Visualize a circle with a letter in the center as the block, the
> > letter would be aligned with the line.
>
>
> --
> mailto: yodersj@earthlink.net_remove_
> http://www.flatmtn.com/ || CAD / Computers
> Hardcore LT users: Doing what they say can't be done.
Message 9 of 9
Anonymous
in reply to: Anonymous

Assuming the block's insertion point is the placement point on the line, my
first macro works fine (a circle, text center of circle, insertion point
center of circle). The sequence would be:
insert the block
select a point
select the angle point
break command
select the line
break at two points.

You can preset the block scale to multiply the DIMSCALE factor set in your
file for further automation. You can preset the Osnaps as needed.
I suspect you are trying to automate the task more than DIESEL and LT can on
their own.

--
Dean Saadallah
Add-on products for LT
http://www.pendean.com/lt
--

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

Post to forums  

Autodesk Design & Make Report

”Boost