제 7 장 고 치 기	7-쪽

□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□

제 7 장  고치기 [Modify]

기존에 그려진 entity 등을 고치는 기능들을 모아놓았습니다. AutoCAD가 제공하는 기능들이 조금씩 마음에 안 드는 점이 있다면, 이 메뉴를 뒤져보시기 바랍니다. 그래도 없다면 새로운 프로그램을 만들어야겠죠?

호를 measure해줍니다.

Program name : MEASURE.LSP

AutoCAD가 제공하는 기능중 어떤 entity를 일정간격으로 나누어 표시를 해주는 기능이 있습니다. 바로 MEASURE기능입니다. 하지만 MEASURE명령은 그 대상entity가 하나의 entity여야 합니다. 즉 하나의 호가 있고 그 중간의 어느 두점 사이를 일정길이로 나누어 표시를 하고 싶다면 entity를 잘라야만 measure기능을 사용할 수 있습니다. 이 프로그램은 그러한 불편함을 없애고 호위의 두점 사이를 사용자가 원하는 길이로 measure할 수 있도록 했습니다. measure된 점들에 point가 찍히는데 이 point를 인용하려면 osnap의 node를 이용하는 건 잘 아시죠? R먹은 교량의 평면작업에 유용하리라 생각됩니다.

□ 사용예

Select Arc or Circle: {호를 선택}

Pick start point: end of {p1}	[시작점]

Pick end point: nea to {p2}	[끝점, 호위의 한점을 찍어도 됨]

Pick Direction point: {p3}	[방향을 정해줍니다. 즉 p1에서 시작하여 시계방향으로 measure할 것인가 반시계방향으로 measure할 것인가를 정해줍니다]

Measure length: 100□	[measure길이, 100mm씩 나누어 표시해줌]

호를 나누어줍니다.

Program name : DIVA.LSP

위에서 소개한 MEASA.LSP에서와 마찬가지로 호위의 두점 사이를 원하는 갯수로 나누어 표시해줍니다. AutoCAD가 제공하는 DIVIDE명령의 응용이라 하겠습니다. 프로그램은 두점의 길이(호의 길이)를 구하고 그 길이를 사용자가 원하는 길이로 나누어 표시를 해줍니다. 표시는 point명령을 이용하고, 그 크기나 형태는 현재 설정된 값으로 만들어집니다.

□ 사용예

Select Arc or Circle: {ARC선택}

Pick start point: end of {p1}	[호 위의 한 점을 찍어줌]

Pick end point: int of {p2}	[호 위의 한 점을 찍어줌]

Pick Direction Pint: {p3}	[p1으로 부터 어느 방향(시계방향/반시계방향)으로 divide할 것인가를 정해줌]

Number of divide: 5□	[몇등분 할 것인가를 정해줌]

선을 measure해줍니다.

Program name : MEASL.LSP

MEASA.LSP에서와 마찬가지의 기능을 가지고 있으나 LINE에 대해서 measure를 수행합니다. measure된 점의 표시는 point와 block이 가능합니다.

□ 사용예-1

Pick start point: end of {p1}	[시작점]

Pick end point: nea to {p2}	[끝점]

<Segment length>/Block: 500□	[measure길이]

Total length= 2458.16	[시작점과 끝점사이의 거리를 표시해줌]

Number of segment= 4	[measure길이의 갯수를 표시해줌]

□ 사용예-2

Pick start point: end of {p1}	[시작점]

Pick end point: int of {p2}	[끝점]

<Segment length/Block: b□	[block으로 표시]

Block name: star□	[block의 이름]

Align block with object? <Y>: y□	[block을 시작점과 끝점의 각만큼 돌린것인가?]

Segment length: 500□	[measure길이]

Total length= 2323.77	[시작점과 끝점사이의 거리를 표시해줌]

Number of segment= 4	[measure길이의 갯수를 표시해줌]

선을 나누어줍니다.

Program name : DIVL.LSP

직선위의 두점 사이를 원하는 갯수로 나누어 표시해줍니다. 표시방법은 point를 이용하는 방법과 block을 insert하는 방법이 있습니다.

□ 사용예-1

Pick start point: end of {p1}	[시작점]

Pick end point: int of {p2}	[끝점]

<Number of segments/Block: 5□	[나누는 갯수]

Total length= 2323.77	[시작점에서 끝점까지의 거리 표시]

Segment length= 464.754	[한 segment의 길이 표시]

□ 사용예-2

Pick start point: end of {p1}	[시작점]

Pick end point: int of {p2}	[끝점]

<Number of segments/Block: b□	[block insert]

Block name: star□	[block이름]

Align block with object? <Y>: n□	[block을돌리지 않고 insert]

Number of segments: 5□	[나누는 갯수]

Total length= 2323.77	[시작점에서 끝점까지 길이]

Segment length= 464.754	[한 segment의 길이]

text크기를 바꾸어줍니다.

Program name : CTH.LSP

CAD로 작업을 하다보면 가끔 도면에 쓰여진 글씨들의 크기를 모두 또는 일부만 바꾸어줄 필요가 있습니다. 그럴때 이 프로그램을 사용할 수 있습니다. text를 선택할 때 어느 일정한 크기를 가진 text만 선택할 수 있고, 도면내의 모든 text를 선택할 수도 있습니다. 그리고 원하는 text의 크기를 직접 입력할 수도 있고, 이미 쓰여진 text를 찍어 참조할 수도 있습니다.

□ 사용예

Height/All/<Select>: □	[마우스로 선택하기 위해 □]

A□	[도면내의 모든 text선택]

H□	[어떤 크기의 text를 모두 선택]

Select text:

Select objects: {p1}	[cross box를 이용하여 text선택]

Other corner: {p2} 2 found

Select objects: □ 2 found	[선택을 끝냄]

Pick text/<New height>: 500□	[새 크기를 500으로]

P□	[이미 쓰여진 text의 크기를 참조함]

2 Modified

text를 수직으로 정렬해줍니다.

Program name : TAV.LSP

토목도면에는 유난히 테이블이 많은 것 같습니다. 테이블에 숫자를 모두 써넣고 보면 어떤 땐 숫자들이 삐뚤빼뚤하게 배열될 때가 있습니다. 그것들을 가지런히 정렬하기도 쉽지않죠? 이 프로그램은 이런 숫자들을 왼쪽, 가운데, 오른쪽을 기준으로 일렬로 가지런히 정리해주는 기능을 가지고 있습니다.

□ 사용예

Select objects: {p1}	[cross box를 이용하여 text선택]

Other corner: {p2} 3 found

Select objects: □	[선택을 끝내기 위해 □]

<Left>/Middle/Right: m□	[middle point를 기준으로 정렬]

Pick Point: {p3}	[middel point를 찍어줌]

text를 수평으로 정렬해줍니다.

Program name : TAH.LSP

□ 사용예

Select objects: {p1}	[cross box를 이용하여 text선택]

Other corner: {p2} 3 found

Select objects: □	[선택을 끝냄]

Pick Point: {p3}	[밑선이 될 점을 찍어줌]

text를 순서대로 수정해줍니다.

Program name : MCHT.LSP

Table에서와 같이 text가 많은 도면에서 여러 text를 수정하기 위해서 text를 하나 하나 선택해서 수정하는 것은 여간 짜증나는 작업이 아닐 수 없습니다. 이 프로그램은 여러개의 text를 선택한 후 좌에서 우로 또는 위에서 아래로 순서대로 수정할 수 있도록 해줍니다.

□ 사용예

Horizontal/Vertical <V>: □	[위에서 아래로 수정]

Select objects: {p1}	[cross box를 이용하여 text선택]

Other corner: {p2} 4 found

2 were filtered out.	[text가 아닌 entity는 걸러내짐]

Select objects: □ 2 text found	[text선택을 끝냄]

Enter text <TEXT1>: text1-1	[화면의 'text1'이 반전됩니다. 이때 새로운 text내용을 입력]

Enter text <TEXT2>: text2-1	[두번째 text내용을 입력]

line을 원하는 만큼 늘려줍니다.

Program name : LINEXT.LSP

가끔 line의 길이를 얼마만큼 늘리고 싶을 때가 있습니다. 물론 보조선을 이용하여 extend명령을 사용해도 되지만 이 명령을 사용하면 한번에 원하는 만큼 line을 늘려줄 수 있습니다.

□ 사용예

Pick endpart of line : (nearest of) {p1}    [line의 한쪽(늘리고 싶은 쪽) 끝을 찍어줍니다]

Distance to extend : 500□	[500만큰 늘리기

아래 그림에서 점선 부분이 늘어난 부분입니다]

,

선의 일부를 숨은 선으로 고쳐줍니다.

Program name : BDASH.LSP

구조물을 그리다보면 구조물이 위/아래로 교차하는 경우가 있습니다. 그럴땐 아래쪽 구조물 선은 보이지 않으므로 점선으로 나타내야 합니다. 이 프로그램을 이용하면 선을 잘라내고 다시 hidden type의 선으로 두 점을 이어주어야 하는 번거로움 없이 선과 두점을 선택해주기만 하면 됩니다.

□ 사용예

Select Line: {p1}	[line 선택]

First point: int of {p2}	[첫점 찍어줌]

Second point: int of {p3}	[두째점 찍어줌]

command: □	[명령반복]

Select Line: {p4}	[line 선택]

First point: int of {p5}	[첫점 찍어줌]

Second point: int of {p6}	[두째점 찍어줌]

글자를 line이나 원에 알맞게 돌려줍니다.

Program name : TXTR.LSP

수작업과 CAD작업을 비교해보았을 때 CAD가 수작업보다 불편한 점 중의 하나가 바로 TEXT의 처리라고 생각합니다. 손으로 도면을 그린다면 개발새발(?) 써도 알아볼 수만 있다면 트레이싱 사무실에서 아주 깨끛하고 이쁜 글씨로 만들어줍니다. 하지만 CAD에서는 마지막 한자까지도 도면작성자가 신경을 써야합니다. 특히 기울어진 text를 쓸 때는 여간 신경이 쓰이는 것이 아닙니다. 즉 어떤 기울어진 선에 평행하게 text를 배치해야 할 경우 (물론 대충 돌려서 비슷하게 맞추어도 되지만) 그 선의 각도를 알아낸 후에 다시 rotate명령으로 text를 돌려줘야 합니다. 이 프로그램은 그러한 작업을 쉽게 할 수 있게 해줍니다. 우선 돌려야 할 text를 선택하고 기준이 될 line이나 Arc를 선택해줍니다. line을 선택했을 경우에는 그 line을 각도를 구해서 그 line에 평행하게 text를 돌려주고, Arc를 선택했을 경우에는 그 점에서의 접선방향으로 text를 돌려줍니다. 그리고 나서 insert point를 찍어주면 text를 그점으로 옮겨줍니다.

□ 사용예-1

Select text: {p1}	[Rotate할 text entity선택]

2P/<Select Line, Arc or Circle>: {p2}	[line 또는 ARC를 선택]

Pick insert point: {p3}	[돌려진 text가 옮겨질 insert point를 찍어줌]

□ 사용예-2

Select text: {p1}	[Rotate할 Text entity선택]

2P/<Select Line, Arc or Circle>: 2P□   [두점의 각을 참조하기 위한 2-point option선택]

Pick first point: {p2}	[시작점 찍어줌]

Pick second point: {p3}	[끝점 찍어줌]

Pick insert point: {p4}	[돌려진 text가 옮겨질 insert point를 찍어줌]

여러번 offset해줍니다.

Program name : FFP.LSP

R먹은 교량의 슬라브 배근도를 그리다보면 CAD에 있을 것 같은 명령이 없다는 것을 알게됩니다. 어떤 상황이냐하면, 슬라브 배근도에서 배력근은 R이 계속 변하며 내측부터 외측까지 배근됩니다. 이것을 쉽게 그릴 수 있는 기능이 CAD에 있을 것 같은데, 없습니다. Array명령은 똑같은 R을 가진 호를 만들어 주기때문에 이 경우에는 쓸모가 없습니다. 그래서 일일이 offset을 시켜야 합니다.(이구 지겨워~) 이 프로그램은 그러한 번거로움을 없애줍니다. 두 점을 찍어주면 프로그램은 두점간의 거리를 구하고 사용자가 입력한 offset거리로 나누어 몇번을 offset할 것인가를 정한다음 그 횟수만큼 offset해줍니다.

□ 사용예

Pick start point: end of {p1}	[시작점]

Pick end point: end of {p2}	[끝점]

Offset distance<2000.0>: 200□	[offset distance]

Select object: {p3}	[offset될 entity선택]

호를 따라 array해줍니다.

Program name : ARP.LSP

예를 들어 R먹은 교량의 슬라브 배근도를 그릴 때 슬라브 주철근을 배근하려면 array명령의 polar option을 이용하여 array야합니다. 하지만 원하는 C.T.C로 배근하려면 계산기를 몇번 두드려야 합니다. 이 프로그램을 이용하면 그런 과정 없이 시작점과 끝점을 찍어주어 array polar를 수행합니다.

□ 사용예

Select Arc or Circle: {p1}	[기준이 될 호/원]

Pick start point: end of {p2}	[array할 시작점]

Pick End point: end of {p3}	[array할 끝점]

Enter Delta: 100□	[array간격, 호의 길이]

Select objects: {p4} 1 found	[array될 entity]

Select objects: □	[선택 끝냄]

entity를 한점에서 잘라줍니다.

Program name : BB.LSP

선이나 호의 한점을 잘라서 두개로 나누어주는 기능을 가지고 있습니다.

□ 사용예

Select Entity: {p1}	[자를 entity선택]

Pick break point: mid of {p2}	[자를 점 찍어줌]

※ 위 그림에서 X표시는 line의 끝을 나타냅니다.

도면내 특정Circle의 반지름을 바꾸어줍니다.

Program name : CRC.LSP

자주 쓸 일은 없지만 가끔 도면내의 모든(또는 일부) 원의 크기를 바꾸어야 될 때가 있습니다. 이 프로그램은 모든 원을 선택하거나 특정크기 원을 선택하여 원하는 크기로 바꾸어 줍니다.

□ 사용예

Radius/All/<Select>: □	[숫자 : 특정 반지름을 가진 원만 선택 됨

A□ : 도면안의 모든 원이 선택됨

□  :  사용자가 원하는 원만 선택함]

Select circle:

Select objects: {p1}	[window box의 첫점 찍음]

Other corner: {p2}	[window box의 끝점 찍음]

3 found

Select objects: □	[선택 끝냄]

3 found

Enter New Radius: 500□	[새로운 반지름을 입력함]

3 Modified

도면내 특정 Donut의 크기를 바꾸어줍니다.

Program name : CDD.LSP

자주 쓸 일은 없지만 가끔 도면내의 특정 크기 도넛의 크기를 바꾸어야 될 때가 있습니다. 이 프로그램은 특정크기 도넛을 선택하여 원하는 크기로 바꾸어 줍니다.

□ 사용예

Dia/<Pick>: □	[숫자: 선택하고 싶은 도넛 지름

□  : 도넛지름을 모를 때 현재 기존 도넛을 선택하면 그 지름을 가진 도넛이 모두 선택됨]

Pick a Donut: {p1}	[도넛 선택]

27  found	[발견된 도넛 개수 표시됨]

Old dia: 500.0	[선택된 도넛의 지름 표시됨]

Enter New Dia/Pick: 300□	[숫자: 새로운 지름 입력

□  : 특정 도넛을 참조하기]

27 Modified	[고쳐진 도넛 개수 표시됨]

	text내용 복사하기 파일명 : ctext.lsp

도면작성을 하다보면 종종 같은 내용의 text를 여기저기 써야할 경우가 많습니다. 이때 일일이 바꿔주지 않고 한 개만 바꾼다음 나머지는 똑같이 복사하는 기능입니다.

□ 사용예

Command: ctxt

Pick Source Text: {select p1}  [원본 text를 선택]

Select destination text: {select s2}, {select s3} [복사될 text들 선택]

Select objects: {Enter}  [선택종료]

2 Text Found

2 Text Modified  [몇개의 text가 변경되었다고 알려줌]

	토목구조설계용 폰트리스트 보기 파일명 : 메뉴명령으므로 파일없음

토목인을 위한 CAD font(djdg.shx)의 목록을 보여주는 기능으로서 미리 만들어져 있는 폰트목록 slide파일을 보여줍니다. 원래화면으로 돌아가기 위해서는 redraw명령을 사용합니다.

※

djdg.shx는 토목도면 작성시 자주 나오는 기호나 로마자를 romans.shx에 추가시켜 만든 폰트로서 아래첨자와 위첨자도 자유자재로 사용할 수 있습니다. 사용법 등 자세한 설명은 9장을 참조하시기 바랍니다.

	Rotate reference 파일명 : rref.lsp

어떤 물체를 다른 어떤 선의 각도와 같도록 돌리려면 rotate명령중 reference 옵션을 사용하는데 새로운 각도(즉 원하는 각도)를 회전의 중심점에서부터 측정하도록 되어있기 때문에 불편합니다. 이 프로그램을 사용하면 원하는 각도를 두점으로 지정할 수 있습니다.

□ 사용예

Command: rref

Select objects: {select s1}    [회전시킬 물체를 선택합니다]

Select objects: 1 found

Select objects: {Enter}        [선택을 끝냅니다]

Base point: {pick p1}          [회전 중심선 찍어줌]

Reference angle: {pick p1}  Specify second point: {pick p2} [기준이 되는 각도 지정]

New angle: {pick p3} Specify second point: end of {pick p4} [회전시킬 각도를 지정]

	숫자 text에 일정 값 더하기 파일명 : addtext.lsp

이미 기입된 숫자 text을 원하는 값만큼 증가시키거나 감소시키는 기능입니다. 하부 일반도 작업이 끝난 상태에서 종단이 변경되었다면 모든 교좌면 Elevation이 일정한 값만큼 감소하거나 증가해야 할 것입니다.  이런 경우에 사용할 수 있습니다.

□ 사용예

Command: addtext{Enter}

All/<Select>: {Enter}          [All: 모든text 선택, {Enter} 원하는 text만 선택]

Select text: w{Enter}{p1} {p2} [Window box를 이용하여 Text선택]

Select objects: {Enter}        [선택종료]

Enter Add value: 0.2 {Enter}  [증감값 입력]

	일정길이 이하의 라인 지우기 파일명 : delshort.lsp

일정길이 이하의 line들을 지워줍니다. 도면을 그리다보면 작은 엔티니들이 널부러져(?)있는 경우가 있는데 이 엔티티들을 말끔히 지워줍니다.

□ 사용예

Command: delshort

All/<Select>: {Enter}    [적용할 엔티티를 선택, All=전체엔티티 , Enter=엔티티선택]

Select Lines: {Pick p1} {pick p2}   [두점을 찍어 window box로 엔티티 선택]

Select objects: {Enter} Specify opposite corner: 16 found  [선택끝냄]

Select objects:  16 Line found        [16개의 엔티티가 선택됨]

Enter Length: 300                     [300이하의 line들을 지우기 위해 300을 입력한다]

8 Line Deleted