Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Книги_AutoCad_2 / Настройка AutoCAD_Sham_Tickoo-Customizing_2006г

.pdf
Скачиваний:
182
Добавлен:
09.04.2015
Размер:
9.06 Mб
Скачать

 

 

 

 

 

 

 

 

 

Экранные меню

281

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 9.8. Макет экранного меню с несколькими подменю

Запишите файл, используя для этого какой-нибудь текстовый редактор, а затем сохраните его под именем sm3.mnu. Ниже приведен листинг файла меню sm3.mnu.

Номера строк в правой части листинга не являются частью файла, а используются только в качестве ссылки.

***SCREEN

1

**S

]^C^C$S=X $S=S

2

[ MENU-3

3

[******** ]$S=OSNAP

4

[

]

5

[DRAW

]^C^C$S=X $S=DRAW

6

[EDIT

]^C^C$S=X $S=EDIT

7

[DISPLAY

]^C^C$S=X $S=DISP

8

**DRAW 3

]

9

[

10

[*-DRAW-* ]

11

[LINE

]^C^CLINE

12

[ Continue ]^C^CLINE;;

13

[ Close

]CLOSE

14

[ Undo

]UNDO

15

[ .X

].X

16

[ .Y

].Y

17

[ .Z

].Z

18

[ .XY

].XY

19

[ .XZ

].XZ

20

[ .YZ

].YZ

21

[

]

22

[ARC:

]^C^CARC

23

282

Глава 9

 

[

-3P:

 

]^C^CARC \\DRAG

24

[

-SCE:

 

]^C^CARC \C \DRAG

25

[

-SCA:

 

]^C^CARC \C \A DRAG

26

[

-CSE:

 

]^C^CARC C \\DRAG

27

[

-CSA:

 

]^C^CARC C \\A DRAG

28

[

CSL:

]

]^C^CARC C \\L DRAG

29

[

 

]$S= $S=

30

[*-PREV-*

31

[*-EDIT-*

]^C^C$S=X $S=EDIT

32

[*-DISP-*

]$S=X $S=DISP

33

**EDIT 3

 

]

34

[*-EDIT-*

35

[

 

]

]^C^CEXTEND

36

[EXTEND:

 

37

[STRETCH: ]^C^CSTRETCH;C

38

[FILLET:

 

]^C^CFILLET

39

[ Rad

]R;\Fillet

40

[ Rad 0

 

]R;0;\Fillet

41

[FILLET0: ]^C^CFillet;R;0::

42

 

Win.

 

 

43

 

Cross.

 

 

44

 

Add

 

 

45

[

Undo

]

 

46

 

]$S= $S=

47

[*-PREV-*

48

[*-DRAW-*

]^C^C$S=X $S=DRAW

49

[*-DISP-*

]$S=X $S=DISP

50

**DISP 3

 

]

51

[*-DISP-*

52

[

 

]

]’ZOOM

53

[ZOOM:

 

54

[

-ALL

 

]A

55

[

-WIN

 

]W

56

[

-PREV

 

]P

57

[

-EXT

]

]E

58

[

 

]’ZOOM

59

[SCALE:

 

60

[PAN:

 

]’PAN

61

[REGEN:

]

]^C^CREGEN

62

[

 

]$S= $S=

63

[*-PREV-*

64

[*-EDIT-*

]^C^C$S=X $S=EDIT

65

[*-DRAW-*

]$S=X $S=DRAW

66

**X 3

]

 

67

[

 

 

68

[

 

]

 

69

[

 

]

 

70

[

 

]

 

71

[

 

]

 

72

[

 

]

 

73

[

 

]

 

74

 

 

Экранные меню

283

[

]

 

75

[

]

 

76

[

]

 

77

[

]

 

78

[

]

 

79

[

]

 

80

[

]

 

81

[

]

 

82

[

]

 

83

[

]

 

84

[

]

 

85

[

]

 

86

**OSNAP 2

 

87

[*-OSNAPS-*]

88

[

]

]CEN $S=

89

[Center

 

90

[Endpoint

]END $S=

91

[Insert

 

]INS $S=

92

[Intersec

]INT $S=

93

[Midpoint

]MID $S=

94

[Nearest

 

]NEA $S=

95

[Node

 

]NOD $S=

96

[Perpend

 

]PER $S=

97

[Quadrant

]QUA $S=

98

[Tangent

 

]TAN $S=

99

[None

]

]NONE $S=

100

[

 

101

[

]

 

102

[

]

 

103

[

]

 

104

[

]

] $S=

105

[*-PREV-*

106

Пояснения

Строка 3

Выражение [ MENU-3 ], содержащееся в этой строке, обеспечивает отображение надписи “MENU-3” в верхней части экранного меню. Выражение ^C^C дважды отменяет существующую команду, а $S=X загружает подменю Х. В свою очередь, выражение $S=S загружает подменю S. Подменю Х, определенное в строке 171, содержит 18 пустых строк. Таким образом, при загрузке этого меню на экране отображаются пустые строки, которые очищают область экранного меню. После загрузки подменю X система загружает подменю S и в экранном меню отображаются элементы, определенные в этом подменю.

[ MENU-3 ]^C^C$S=X $S=S

Здесь

^C^C — дважды отменяет существующую команду;

$S=X — загружает подменю Х (выполняет очистку экрана);

$S=S — загружает подменю S.

284 Глава 9

Строка 4

[********]$S=OSNAP

Этот элемент вводит в экранное меню строку, содержащую восемь звездочек (********); команда $S=OSNAP загружает меню OSNAP. Меню OSNAP, определенное в строке 191, содержит команды, используемые для переключения режимов объектной привязки.

Строка 6

[DRAW ]^C^C$S=X $S=DRAW

Этот элемент меню отображает выражение “DRAW” в области экранного меню, дважды отменяет существующую команду, загружает подменю X, а затем подменю DRAW. Подменю Х очищает область экранного меню, а подменю DRAW, определенное в строке 11, загружает элементы меню, содержащиеся в соответствующем разделе файла.

Строка 9

**DRAW 3

Эта строка является меткой подменю DRAW; число 3 указывает на то, что первая строка подменю DRAW будет выведена в строке 3. Таким образом, строки 1 и 2 останутся пустыми. В строке 3 отобразится первая строка подменю DRAW, а затем будут показаны остальные строки меню. Метки всех подменю, за исключением подменю S и OSNAP, заканчиваются числом 3. Таким образом, две первых строки меню (MENU-3) и (********) никогда не очищаются и постоянно отображаются на экране. При выборе элемента MENU-3 загрузится подменю S. Выбрав строку ********, вы тем самым загрузите подменю OSNAP.

Здесь

DRAW — имя подменю;

3 — номер строки, с которой начинается отображение подменю.

Строка 12

[LINE: ]^C^CLINE

Выражение ^C^C дважды отменяет существующую команду; LINE — команда

AutoCAD.

Строка 13

[ Continue ]^C^CLINE;;

В этой строке после команды LINE стоят две точки с запятой, которые продолжают выполнение этой команды. Если вы не понимаете, что это означает, посмотрите, как используется опция Continue в команде LINE:

Command: LINE

Specify first point: RETURN (Continue)

Specify next point or [Undo]:

Далее приведена последовательность команд и параметров, которые потребуются для того, чтобы провести линию из последней точки:

LINE

RETURN

RETURN

SELECT A POINT

Экранные меню

285

Таким образом, для того чтобы провести линию из предыдущей точки, после команды LINE необходимо дважды выполнить команду RETURN.

Строка 16

[.X ].X

Выражение .X, содержащееся в этой строке, обеспечивает получение координаты X указанной точки. При выполнении этой операции можно обойтись без квадратных скобок, выражения .X и пробелов, заключенных в квадратные скобки. Достаточно ввести в

строку выражение .X. Это относится также к элементам, определенным в строках 39–43.

Пример

 

[.X

].X может быть записано как .X (без квадратных скобок);

[.Y

].Y — как .Y (без квадратных скобок);

[.Z

].Z — как .Z (без квадратных скобок).

Строка 31

[*-PREV-* ]$S= $S=

Этот элемент дважды восстанавливает предыдущее меню. Программа AutoCAD отслеживает подменю, отображаемые на экране. При выполнении первой команды $S= произойдет загрузка ранее загруженного меню, а при выполнении второй команды $S= загрузится меню, которое было загружено перед этим. Например, при выборе элемента меню, определенного в строке 16 ([ARC: ]$S=X $S=ARC), будут загружены два подменю: вначале X, а затем ARC. Перед загрузкой текущего подменю ARC подменю X копируется в стековую память. Первая команда $S= восстановит предыдущее меню, которым в данном случае является подменю Х. Вторая команда $S= загрузит меню, отображенное на экране перед выбором элемента, содержащегося в строке 16.

Здесь

$S= — загружает последнее меню;

$S= — загружает предпоследнее меню.

Строка 33

[*-DISP-* ]$S=X $S=DISP

В этой строке команда $S=X загружает подменю Х, а команда $S=DISP — подменю DISP. Обратите внимание, что команды CANCEL (^C^C) в этой строке нет. Это связано с наличием меню, которые могут быть загружены без отмены текущей команды. Например, при вычерчивании линии иногда приходится увеличивать масштаб изображения, не отменяя выполнение предыдущей команды. В этом случае вы выбираете элемент [*-DISP-* ], затем выбираете соответствующую опцию масштабирования, после чего продолжаете выполнение команды LINE (ОТРЕЗОК). Тем не менее, если в строке содержится команда CANCEL ([*-DISP-*]^C^C$S=X $S=DISP), выполнение команды LINE будет прекращено, так как при выборе пункта “*-DISP-*” произойдет отмена существующей команды. В строке 32 ([*-EDIT-* ]^C^C$S=X $S=EDIT) содержится команда ^C^C, которая отменяет существующую команду. Это связано с тем, что команды редактирования не могут использоваться до тех пор, пока вы не отмените текущую команду.

286

Глава 9

Строка 38

[STRETCH: ]^C^CSTRETCH;C

Выражение ^C^C отменяет существующую команду; STRETCH — команда AutoCAD. C — опция пересечения, которая позволит выделить нужный объект, определив угловые точки области выделения.

Здесь

STRETCH — команда AutoCAD;

; — точка с запятой, выполняющая функцию команды RETURN;

C — опция пересечения.

Строка 40

[ RAD ]R;\FILLET

Выражение, содержащееся в этой строке, обеспечивает выбор команды FILLET (СОПРЯЖЕНИЕ) с опцией Radius (Радиус), а затем создает паузу, которая позволяет ввести значение радиуса. После того как вы введете это значение, создайте сопряжение между двумя выделенными объектами, выполнив команду FILLET еще раз.

Здесь

R — опция Radius (Радиус) команды FILLET (СОПРЯЖЕНИЕ);

; — точка с запятой, обеспечивающая ввод команды RETURN;

\ — обратная косая черта, создающая паузу для ввода данных;

FILLET — команда AutoCAD.

Строка 41

[ RAD 0 ]R;0;\FILLET

Выражение, содержащееся в этой строке, обеспечивает выбор команды FILLET (СОПРЯЖЕНИЕ) с опцией Radius (Радиус), а затем присваивает радиусу значение 0. После этого выполняется команда FILLET, которая генерирует сопряжение с нулевым радиусом между двумя выделенными объектами.

Здесь

R — опция Radius (Радиус) команды FILLET (СОПРЯЖЕНИЕ);

; — точка с запятой (или пробел), обеспечивающая ввод команды RETURN;

0 — значение радиуса;

; — точка с запятой, обеспечивающая ввод команды RETURN;

FILLET — команда AutoCAD.

Строка 42

[FILLET0:]^C^CFILLET;R;0;;

Этот элемент определяет команду FILLET с радиусом 0, а затем формирует сопряжение с нулевым радиусом между двумя выделенными объектами.

Здесь

FILLET — команда AutoCAD;

R — опция Radius (Радиус) команды FILLET (СОПРЯЖЕНИЕ);

; — точка с запятой (или пробел), обеспечивающая ввод команды RETURN;

0 — значение радиуса;

; — точка с запятой, обеспечивающая ввод команды RETURN;

; — точка с запятой, обеспечивающая повторное выполнение команды FILLET.

Экранные меню

287

Строка 54

[ZOOM: ]'ZOOM

В этой строке содержится определение прозрачной команды ZOOM. Здесь

ZOOM — команда AutoCAD;

' — одинарная кавычка, обеспечивающая прозрачность команды ZOOM.

Строка 90

[Center ]CEN $S=

Выражение CEN, содержащееся в этой строке, выполняет привязку к центру объекта, а команда $S= автоматически восстанавливает предыдущее экранное меню после выделения объекта.

Здесь

CEN — обеспечивает привязку к центру объекта;

$S= — загружает предыдущее меню.

Примечание

Команды загрузки, содержащиеся в строке элемента экранного меню, должны быть разделены пробелом.

Пример: [LINE: ]$S=X $S=LINE

Обратите внимание на пробел между X и $S.

Точно так же, если элемент меню содержит команду загрузки и какую-нибудь команду AutoCAD, эти команды должны быть разделены пробелом.

Пример: [LINE: ]$S=LINE ^C^CLINE

Упражнение 3 (Общее)

Напишите файл экранного меню для команд AutoCAD, показанных на рис. 9.9, и сохраните его под именем sme3.mnu. Строка с восемью звездочками (********) используется для получения доступа к подменю объектной привязки.

Рис. 9.9. Макет экранного меню с несколькими подменю

288 Глава 9

Пример 4

Напишите файл комбинированного меню (экранное плюс планшетное) для команд, показанных в шаблоне планшетного меню (рис. 9.10) и на схеме экранного меню (рис. 9.11). Когда пользователь выбирает команду из шаблона кодирующего преобразователя, на экран должно автоматически выводиться соответствующее экранное меню. Сохраните файл под именем tm3.mnu.

Рис. 9.10. Шаблон планшетного меню для примера 4

Рис. 9.11. Схема экранного меню

Ниже приведен листинг комбинированного меню, описанного в примере 4. Номера

строк не являются частью файла, а используются только для ссылок.

***SCREEN

1

**S

]^C^C$S=X $S=S

2

[ MENU-3

3

[******** ]$S=OSNAP

4

[

]

5

[

]

6

 

 

 

Экранные меню

289

[DRAW

 

]^C^C$S=X $S=DRAW

7

[EDIT

 

]^C^C$S=X $S=EDIT

8

[ZOOM

 

]^C^C$S=X $S=ZOOM

9

[LAYER

 

]^C^C$S=X $S=LAYER

10

**DRAW 3

 

 

11

 

]

12

[*-DRAW-*

13

[

 

]

 

14

[

 

]

]$S=X $S=LINE ^C^CLINE

15

[LINE:

 

16

[ARC:

 

]$S=X $S=ARC

17

[CIRCLE:

]

]$S=X $S=CIRCLE ^C^CCIRCLE

18

[

 

 

19

[

 

]

 

20

[

 

]

 

21

[

 

]

 

22

[

 

]

 

23

[

 

]

 

24

[

 

]

 

25

[

 

]

 

26

[

 

]

]$S= $S=

27

[*-PREV-*

28

[*-EDIT-*

]^C^C$S=X $S=EDIT

29

[*-ZOOM-*

]$S=X $S=ZOOM

30

**LINE 3

 

 

31

 

]^C^CLINE

32

[LINE:

]

33

[

 

 

34

[

 

]

 

35

[ Continue ]^C^CLINE;;

36

[ Close

 

]CLOSE

37

[ Undo

 

]UNDO

38

[ .X

].X

39

[ .Y

].Y

40

[ .Z

].Z

41

[ .XY

].XY

42

[ .XZ

].XZ

43

[ .YZ

].YZ

44

[

 

]

 

45

[

 

]

 

46

[

 

]

]$S= $S=

47

[*-PREV-*

48

[*-EDIT-*

]^C^C$S=X $S=EDIT

49

[*-ZOOM-*

]$S=X $S=ZOOM

50

**ARC 3

 

 

51

]

52

[ARC

53

[

-3P:

]

]^C^CARC \\DRAG

54

[

 

55

[

-SCE:

 

]^C^CARC \C \DRAG

56

[

-SCA:

 

]^C^CARC \C \A DRAG

57

[

-CSE:

 

]^C^CARC C \\DRAG

58

290

Глава 9

 

[

-CSA:

 

]^C^CARC C \\A DRAG

59

[

CSL:

]

]^C^CARC C \\L DRAG

60

[

 

 

61

[

 

]

 

62

[

 

]

 

63

[

 

]

 

64

[

 

]

 

65

[

 

]

 

66

[

 

]

]$S= $S=

67

[*-PREV-*

68

[*-EDIT-*

]^C^C$S=X $S=EDIT

69

[*-ZOOM-*

]$S=X $S=ZOOM

70

**CIRCLE 3

71

72

[CIRCLE:

]

]

73

[

-C,R:

]^C^CCIRCLE

74

[

 

75

[

-C,D:

 

]^C^CCIRCLE \D

76

[

-2P:

 

]^C^CCIRCLE 2P

77

[

-3P:

]

]^C^CCIRCLE 3P

78

[

 

 

79

[

 

]

 

80

[

 

]

 

81

[

 

]

 

82

[

 

]

 

83

[

 

]

 

84

[

 

]

 

85

[

 

]

 

86

[

 

]

]$S= $S=

87

[*-PREV-*

88

[*-EDIT-*

]^C^C$S=X $S=EDIT

89

[*-ZOOM-*

]$S=X $S=ZOOM

90

 

 

 

 

91

**EDIT 3

 

 

92

 

]

93

[*-EDIT-*

94

[

 

]

 

95

[

 

]

]

96

[ERASE

 

97

[Quadrant

]QUA $S=

98

[Tangent

 

]TAN $S=

99

[None

]

]NONE $S=

100

[

 

 

101

[

 

]

 

102

[

 

]

 

103

[

 

]

 

104

[

 

]

 

105

[

 

]

 

106

[

 

]

 

107

[

 

]

]$S= $S=

108

[*-PREV-*

109

[*-EDIT-*

]^C^C$S=X $S=EDIT

110

Соседние файлы в папке Книги_AutoCad_2