AutoCAD Architecture 2011. Руководство пользователя (глава 48-56) - часть 10

 

  Главная      Книги - Разные     AutoCAD Architecture 2011. Руководство пользователя (глава 48-56) (март 2010 года)

 

поиск по сайту            правообладателям  

 

 

 

 

 

 

 

 

 

 

 

содержание      ..     8      9      10      11     ..

 

 

 

AutoCAD Architecture 2011. Руководство пользователя (глава 48-56) - часть 10

 

 

содержится данный компонент. Подробнее см. последующий раздел об описаниях
рецептов.

"КлючПоиска"

Разделяемый запятыми список ключевых слов, используемых

"Диспетчером компонентов выносных элементов" для поиска компонентов.

Единицы

Это значение определяет единицу измерения для таблицы размеров данного

компонента.

ИЗМЕНЕНО

Логический флажок, определяющий, изменялась ли данная строка с

момента ее первоначального создания. Если пользователь вносит в строку изменения
с помощью "Диспетчера компонентов выносных элементов", это поле приобретает
такую отметку, и последующие версии базы данных смогут учесть изменения. Запись
"изменено" относительна к версии базы данных. Например, если вы копируете
существующую базу данных и меняете все ее значения, она будет рассматриваться
как первая версия новой базы данных, и все поля с пометкой ИЗМЕНЕНО приобретут
значение ЛОЖЬ.

КАРТИНКА

Этот столбец позволяет вам определить уникальный чертеж при выборе

данной строки в "Диспетчере компонентов выносных элементов". Если поле оставить
незаполненным, тогда используется картинка, определенная на уровне "Компонент".
Если и в таблице компонентов не была задана картинка, то используется картинка,
выбранная для группы компонентов.

Рекомендуется использовать файл изображения типа PNG.

Таблицы размеров компонентов

Для каждого компонента в базе данных должна существовать соответствующая
таблица размеров. Таблице размеров может быть дано любое наименование, по
вашему желанию, однако она должна содержать следующие столбцы:

Описание

Текстовое описание типа размера, которое используется как отображаемая

строка в палитре свойств.

ИН

Идентификационный номер внутри данной таблицы, который определяет

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

ИЗМЕНЕНО

Логический флажок, определяющий, изменялась ли данная строка с

момента ее первоначального создания. Если пользователь вносит в строку изменения
с помощью "Диспетчера компонентов выносных элементов", это поле приобретает
такую отметку, и последующие версии базы данных смогут учесть изменения. Запись
"изменено" относительна к версии базы данных. Например, если вы копируете
существующую базу данных и меняете все ее значения, она будет рассматриваться

Базы данных компонентов | 4259

как первая версия новой базы данных, и все поля с пометкой ИЗМЕНЕНО приобретут
значение ЛОЖЬ.

КАРТИНКА

Этот столбец позволяет вам определить уникальный чертеж при выборе

данной строки в "Диспетчере компонентов выносных элементов". Если поле оставить
незаполненным, тогда используется картинка, определенная на уровне "Компонент".
Если в строке данной таблицы размеров не определена картинка, то используется
картинка, заданная для компонента в общем случае.

Рекомендуется использовать файл изображения типа PNG.

Положение файла изображения обычно задают, дописывая имя файла к пути,
назначаемому "КлючиДиректориев" для группы данного компонента.

Если компонент создается за счет выполнения вставки простого "Блока", вы можете
получить образец для просмотра, создаваемый динамически путем прорисовки
связанного ссылкой блока. Для компонентов такого типа задайте значение параметра
"Картинка" как 

_blockthumbnail

.

Ключевая заметка

Это значение ссылается на запись в базе данных ключевых заметок.

Как и для столбца "чертеж", если не имеется заданного значения здесь, на уровне
"Размер", используется заметка с уровня "Компонент".

Таблица единиц измерения

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

Таблица "КлючиДиректориев"

В этой таблице определены ключи директорий (DirKeys), которые являются
псевдонимами быстрого вызова, применяемыми при идентификации структуры
директорий системы пользовательских файлов. Обычно имеется один директорий
для каждого крупного подразделения в вашей иерархии компонентов. Вы можете
сопоставить иерархию компонентов в базе данных с внешними файлами,
хранящимися в файловой системе.

На значения DirKeys имеются ссылки в поле "КлючПути" таблицы групп и в
XML-файлах описания рецептов. Их назначение - позволить вам быстро
реорганизовать внутреннюю или внешнюю иерархию, или и ту и другую.

Таблица "ОтображениеСтолбцов"

Наименования столбцов в таблицах размеров компонентов нельзя перевести на
другие языки, потому что на эти столбцы ссылаются программы. Вместе с тем эти

4260 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

имена столбцов должны появляться и в пользовательском интерфейсе. Таблица
"ОтображениеСтолбцов" служит для подстановок компонентов пользовательского
интерфейса таким образом, чтобы могли отображаться удобные для пользователей,
локализованные наименования столбцов.

GlobalName ("ГлобальноеИмя")

Это - постоянное наименование столбца в таблице

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

LocalName ("ЛокальноеИмя")

Это - прошедшая перевод, удобная для пользователя

строка, которая выводится на дисплей вместо глобального наименования столбца.

TableId ("КодТаблицы")

Если поле оставлено незаполненным, тогда любой столбец

с заданным глобальным именем использует для отображения локальное имя. Однако
в некоторых случаях одно и то же имя столбца может иметь два различных перевода,
в зависимости от контекста. Укажите таблицу размеров, если перевод подходит
только для определенного контекста.

"Скрытый"

Некоторые столбцы, такие, как ИН и ИЗМЕНЕНО, не предназначены

для показа пользователю в "Диспетчере компонентов выносных элементов". Они
могут быть скрыты за счет простановки отметки в этой ячейке. Однако учтите, что
эта опция действует только в том случае, если база данных помечена как "Только для
чтения". База данных, которая редактируется с помощью "Диспетчера компонентов
выносных элементов", должна показывать все свои столбцы, так чтобы можно было
ввести допустимую строку.

Modified ("Изменено")

Логический флажок, определяющий, изменялась ли данная

строка с момента ее первоначального создания.

Таблица штриховок

Эта таблица определяет набор псевдонимов штриховок. На отдельные компоненты,
создающие штриховки, можно ссылаться по псевдониму вместо непосредственного
задания образца, масштаба и угла. Это позволит вам стандартизировать вид
определенных материалов во всей базе данных. Например, вы можете предписать
для всех компонентов, изготовленных из бетона, использовать псевдоним "бетон".
Если вы хотите изменить вид всех бетонных компонентов, просто отредактируйте
запись в таблице штриховок, и это приведет к изменению вида любого компонента,
который ссылается на этот псевдоним.

ПРИМЕЧАНИЕ

Описание схемы баз данных в отношении ключевых заметок см.

раздел 

Схема базы данных ключевых заметок

 на стр. 3925.

Базы данных компонентов | 4261

Описания рецептов

"Описание рецепта" (RecipeSpec) - это XML-файл, который описывает, какие виды
(разрез, фасад и т.д.) имеются для данного компонента выносного элемента и как
эти виды должны создаваться и помещаться на чертеж.

4262 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

Вот простой пример "Описания рецепта".

Описания рецептов | 4263

<?xml version="1.0" encoding="UTF-8"?> (<?xml версия="1.0" кодиров

ка="UTF-8"?>)

<AecRecipeSpec defaultUnit="in"> (<AecRecipeSpec стандартныеЕдини

цы="дюймы">)

<Recipe idStr="side"> (<Recipe idStr="сбоку">)

<Label>Сбоку</Label>

<Implementation> (Реализация)

<ObjectARX>

<AppName>AecDtl50</AppName>

<RcpFunc>AecDtlRcpColumnCapCCSide</RcpFunc>

</ObjectARX>

</Implementation>

<Data> (Данные)

<Item idStr="block">

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer ref="layerKey">THIN</Layer> (<Layer ref="ключ

Слоя">THIN</Layer>)

</AcadEntityProps>

</Item>

<Item idStr="boundary"> (<Item idStr="границы">)

</Item>

<Item idStr="holes"> (<Item idStr="отверстия">)

</Item>

<Item idStr="hidden"> (<Item idStr="скрытый")

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer ref="layerKey">FINE</Layer>

<Linetype>HIDDEN</Linetype>

</AcadEntityProps>

</Item>

</Data>

</Recipe>

<Recipe idStr="end"> (<Recipe idStr="торец">)

<Label>Торец</Label>

<Implementation> (Реализация)

<ObjectARX>

<AppName>AecDtl50</AppName>

<RcpFunc>AecDtlRcpColumnCapCCEnd</RcpFunc>

</ObjectARX>

</Implementation>

<Data> (Данные)

<Item idStr="block">

<AcadEntityProps> (свойства объектов AutoCAD)

4264 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

<Layer ref="layerKey">THIN</Layer> (<Layer ref="ключ

Слоя">THIN</Layer>)

</AcadEntityProps>

</Item>

<Item idStr="boundary"> (<Item idStr="границы">)

</Item>

<Item idStr="holes"> (<Item idStr="отверстия">)

</Item>

</Data>

</Recipe>

</AecRecipeSpec>

"Описание рецепта" состоит из одного или нескольких наборов команд (рецептов).
Каждый "Рецепт" отвечает за создание одного вида компонента. В приведенном выше
примере первый набор команд создает на чертеже вид сбоку, а второй - вид сзади.
Когда компонент вставляется в чертеж, конфигурируемый пользователем параметр
"Вид" на палитре свойств определяет, какой набор команд используется.

В каждом "Рецепте" содержатся четыре крупных раздела:

"Реализация"

 - этот раздел определяет вызываемую функцию и содержит

информацию, специфическую для определенного языка, на котором она
реализуется. Короче говоря, в нем определено, как вызывать "Функцию рецепта"
(RcpFunc).

"Элементы управления"

 - в этом разделе определяются кнопки, которые будут

добавлены к палитре свойств. Элемент управления может быть задан
непосредственно здесь, или же может быть определен за счет ссылки на
глобальный элемент управления из раздела <ControlDefs>, являющегося частью
общего "Описания рецепта".

"Данные"

 - в этом разделе содержатся данные адаптации, которые может получить

"Функция рецепта", чтобы помочь в управлении тем, как нарисовать компонент,
например, информацию о слое и образце штриховки.

"Опции"

 - в этом разделе задаются параметры для "Шаблона" или "ВводШаблона",

которые используются при размещении компонента.

Короче говоря, разделы "Данные" (<Data>) и "Элементы управления" (<Controls>)
помогают определить, на что похож основной компонент, а раздел "Опции"
(<Options>) - куда его ставить. В большинстве случаев, в разделе <Options> нет
необходимости, поскольку достаточно стандартного поведения "Шаблона".

Каждый из этих разделов "Описания рецепта" более подробно описан далее в разделе
технической информации.

Описания рецептов | 4265

Кодовые строки (idStr)

У каждого элемента "Описания рецепта", который нуждается в программной
идентификации, имеется атрибут idStr. Значение idStr никогда не должно изменяться
и должно быть уникальным в рамках файла (или, по крайней мере, в пределах
заданного типа элемента). "Функция рецепта" будет ожидать кодовые строки с
некоторыми значениями, так что при написании "Описания рецепта" вам нужно
знать, что подразумевает "Функция рецепта".

ПРИМЕЧАНИЕ

Один из способов определения подразумеваемого договора

"Функции рецепта" - включить функцию регистрации. Подробнее см. раздел

Регистрация рецептов

 на стр. 4297.

Отображаемые строки

Элементы с маркой <Label> (метка) или <Description> (описание) предназначены
для перевода. Они будут использоваться в палитре свойств и других конструкциях
пользовательского интерфейса, но никогда не будут использованы для ссылок на
что-либо и на них не будет ссылок со стороны кода (в этом состоит назначение
кодовых строк idStr).

Ссылки

В "Описании рецепта" значение параметра появляется между марками элемента. Оно
воспринимается как буквальное значение, если не сопровождается атрибутом ссылки.
В этом случае значение между марками элемента рассматривается как значение для
подстановки и используется для получения фактического значения.

ref

 [необязательный компонент]

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

(ключ слоя AutoCAD Architecture)

layerKey

(столбец в таблице из базы данных компо-
нентов)

dbTable

(

idStr

 подразделения <Control>)

control

ПРИМЕЧАНИЕ

Тип ссылки layerKey допустим только для элемента <Layer> (слой).

4266 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

Ссылка dbTable будет использовать значение как наименование столбца в таблице
размеров текущего компонента. Рассмотрим два следующих примера

<Data> (Данные)

<Item idStr="block">

<AcadBlockProps> (свойства блоков AutoCAD)

<BlockName

dwgLib="dwgs/AecDtlLib_BlockTest.dwg">Jimbo</BlockName>

<Scale>6.0</Scale>

</AcadBlockProps>

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer>DOOR</Layer>

</AcadEntityProps>

</Item>

</Data>

В этом первом случае значения масштаба (<Scale>) и слоя (<Layer>) были заданы
буквально, т.е. в явном виде. Этот компонент, независимо от выбранной в базе данных
строки, будет иметь масштабный коэффициент 6,0. Подобным образом, независимо
от того, какой набор ключей слоев является текущим в AutoCAD Architecture, этот
компонент перейдет на слой DOOR (ДВЕРИ) (но не на слой, назначенный ключу
слоя "DOOR").

<Data> (Данные)

<Item idStr="block">

<AcadBlockProps> (свойства блоков AutoCAD)

<BlockName

dwgLib="dwgs/AecDtlLib_BlockTest.dwg">Jimbo</BlockName>

<Scale ref="dbTable">SCALE</Scale

</AcadBlockProps>

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer ref="layerKey">DOOR</Layer>

</AcadEntityProps>

</Item>

</Data>

В данном примере используются ссылки для динамической подстановки значений.
Параметру <Scale> будет задано значение из столбца МАСШТАБ текущей строки
таблицы размеров компонента. Подобным образом, ссылка “DOOR” - это ключ слоя,
который предстоит использовать для поиска слоя, а не собственное имя реального
слоя. Имеется также ссылка типа “control”, которая позволит вам использовать
кодовую строку элемента управления, определенную в "Рецепте". Значение этого
элемента управления впоследствии используется как фактическое значение
"Элемента".

Описания рецептов | 4267

Единицы

У каждого "Описания рецепта" имеется стандартная единица измерений, используемая
во всем XML-файле. Любое размерное значение, появляющееся в XML-файле, после
получения значения из XML автоматически преобразуется из стандартных единиц
в текущие единицы чертежа.

Чтобы задать стандартные единицы, используйте следующий синтаксис в корневом
узле "Описания рецепта".

<?xml version="1.0" encoding="UTF-8"?> (<?xml версия="1.0" кодиров

ка="UTF-8"?>)

<AecRecipeSpec defaultUnit="mm"> (<AecRecipeSpec стандартныеЕдини

цы="мм">)

<Recipe idStr="section">

<….. опущено ....>

</Recipe>

</AecRecipeSpec>

У атрибута defaultUnit ("стандартныеЕдиницы") должно быть одно из следующих
значений: in, ft, mm, cm, dm, или m (дюймы, футы, миллиметры, сантиметры,
дециметры или метры, соответственно). Если значение не указано, по умолчанию
используются дюймы.

В некоторых случаях простое преобразование из метрических единиц в британские
(или наоборот) не дает желаемого результата. Например, "Зазор" (<GapSpacing>)
между кирпичами мостовой должен быть логическим расстоянием в каждой системе
измерений, а не независимым расстоянием, получающимся в результате жесткого

4268 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

преобразования. Вы можете определить зависимый от единиц элемент, включив в
текст атрибут “unit” ("единицы"), как сделано в следующем примере.

<Data> (Данные)

<Item idStr="block">

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer ref="layerKey">THIN</Layer> (<Layer ref="ключ

Слоя">THIN</Layer>)

</AcadEntityProps>

</Item>

<Item idStr="head">

<Params> (параметры)

<Overhang unit="in">0.25</Overhang>

<Overhang unit="mm">6.5</Overhang>

<Depth unit="in">0.375</Depth>

<Depth unit="mm">10.0</Depth>

</Params>

</Item>

<Item idStr="tip">

<Params> (параметры)

<Depth unit="in">0.0625</Depth>

<Depth unit="mm">1.5</Depth>

</Params>

</Item>

<Item idStr="shaft"/>

<Item idStr="hidden"> (<Item idStr="скрытый")

<AcadEntityProps> (свойства объектов AutoCAD)

<Linetype>HIDDEN2</Linetype> <!-- переопределяет тип линий

для скрытых компонентов -->

</AcadEntityProps>

</Item>

</Data>

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

ПРИМЕЧАНИЕ

Если у вас имеются зависимые от единиц значения, вы должны

включить элемент как для британских, так и для метрических единиц. Вы не можете
вводить две записи из одной и той же системы единиц (например, “mm” и “cm”).
Жесткое преобразование будет производиться для любых приведенных единиц,
относящихся к одной и той же системе единиц.

Описания рецептов | 4269

Раздел <Implementation> ("Реализация")

Раздел "Реализация" может выглядеть так, как в любом из следующих примеров
(<ObjectARX>, <VBA> и <ManagedDotNet>):

<ObjectARX>

<Implementation> (Реализация)

<ObjectARX>

<AppName>AecDtl50</AppName>

<RcpFunc>AecDtlRcpColumnCapCCSide</RcpFunc>

</ObjectARX>

</Implementation>

Это...

Где...

логическое имя приложения, которое появ-
ляется в "Реестре" для приложения
ObjectARX.

AppName

наименование "Функции рецепта", которая
выполняется внутри модуля ObjectARX и

<RcpFunc>

регистрируется с использованием объекта
AecRcpFuncTable структуры AecRcpBase.
"Сигнатура" (характеристика) функции не
должна иметь аргументов и должна возвра-
щать значение типа RcpStatus.

<VBA>

<Implementation> (Реализация)

<VBA projectName="M:/Juneau/bin/TestDtl_VBA.dvb"

macroName="DrawRectangle"/>

</Implementation>

Это...

Где...

имя пути файла проекта VBA, который со-
держит макроопределение. Это может быть

projectName

полный путь, частичный путь по отношению
к местоположению XML-файла, может также
использоваться атрибут “dirKey” для указа-
ния пути из таблицы ключей директориев
в базе данных компонентов.

4270 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

Это...

Где...

Макроопределение VBA, которое требуется
вызвать. Это макроопределение не должно

macroName

иметь аргументов и не возвращает значе-
ние. Перед выходом из макроопределения
нужно вызывать функцию
aecDtlSetRcpReturnStatus().

<ManagedDotNet>

<Implementation> (Реализация)

<ManagedDotNet moduleName="M:/Juneau//bin/TestDtl_VB.dll"

funcRcp="DrawRectangle"/>

</Implementation>

Это...

Где...

имя пути DLL, где имеется функция. Это
может быть полный путь, частичный путь

moduleName

по отношению к местоположению XML-
файла, может также использоваться атрибут
“dirKey” для указания пути из таблицы клю-
чей директориев в базе данных компонен-
тов.

наименование "Функции рецепта", которая
выполняется внутри модуля ObjectARX и

funcRcp

регистрируется с использованием объекта
AecRcpFuncTable структуры AecRcpBase.
"Сигнатура" (характеристика) функции не
должна иметь аргументов и должна возвра-
щать значение типа RcpStatus.

Раздел <Controls> ("Элементы управления")

В разделе "Элементы управления" содержится список определений кнопок, которые
будут добавлены к палитре свойств или будут появляться в качестве подсказок в
командной строке. У всех элементов управления должен быть атрибут idStr, на
который сможет ссылаться программа. Также может содержаться элемент <Label>
(Метка), предназначенный для отображения в палитре свойств. Дополнительно
элементы управления могут иметь элемент <Description> (Описание), используемый
в качестве строки "подсказки", отображаемой в нижней части палитры свойств при

Описания рецептов | 4271

наведении на эту кнопку курсора. Если элемент <Description> отсутствует, будет
использоваться элемент <Label>.

Ниже перечислены все определенные типы элементов управления.

<ComboBox>

Этот тип элемента управления используется для показа списка вариантов. Это -
простой список с выбором единственного варианта.

<ComboBox idStr="head">

<Label>Тип головки</Label>

<Description>Тип головки, использующейся для болта</Description>

<ComboBoxValue idStr="blkHeadHex">

<Label>Шестигранная</Label>

</ComboBoxValue>

<ComboBoxValue idStr="blkHeadSq">

<Label>Квадратная</Label>

</ComboBoxValue>

<ComboBoxValue idStr="blkHeadRnd">

<Label>Круглая</Label>

</ComboBoxValue>

<Default>blkHeadHex</Default>

</ComboBox>

У элемента управления ComboBox имеется список узлов <ComboBoxValue>
(ЗначенийЭлементаУправления), которые просто описывают кодовую строку idStr,
используемую для уникальной идентификации этой позиции в списке. Каждое
значение <ComboBoxValue> также должно содержать элемент <Label>,
предназначенное для отображения элемента списка.

Если у <ComboBox> имеется элемент <Default>, указанная idStr будет использоваться
как <ComboBoxValue> по умолчанию. Если элемент <Default> отсутствует, по
умолчанию будет предлагаться первое <ComboBoxValue>.

<Default> [Необязательный компонент]

Кодовая строка <ComboBoxValue>, предназначенная для варианта списка,
выбираемого по умолчанию.

<CheckBox> (Кнопка-флажок)

Этот тип элемента управления используется для логических значений.

<CheckBox idStr="doStagger">

<Label>Колонны в шахматном порядке</Label>

<Default>0</Default>

</CheckBox>

4272 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

У него могут быть следующие элементы:

Описание

Элемент

Стандартное логическое значение. Оно
может быть задано как любое из следующих
значений: "1", "0", "true" или "false".

<Default> [Необязательный компонент]

<EditBoxAngle>(БлокРедактированияУгла)

Этот тип элемента управления соответствует классу AecEditBoxAngle в AutoCAD
Architecture и имеет те же основные параметры.

<EditBoxAngle idStr="slope">

<Label>Угол наклона</Label>

<Default>0,0</Default>

<Validation>range</Validation>

<RangeLow>-45.0</RangeLow>

<RangeHigh>45.0</RangeHigh>

</EditBoxAngle>

У него могут быть следующие элементы:

Описание

Элемент

Значение угла по умолчанию. Это значение
задается в градусах:

<Default> [Необязательный компонент]

Определяет, какой используется тип прави-
ла верификации . Возможные значения:

<Validation> [Необязательный компонент]

“Any”, “NoZero” или “Range” ("Любое", "Нену-
левое" или "Диапазон", соответственно).
Если не задается, по умолчанию использу-
ется значение “Any”.

Нижнее значение диапазона допустимых
значений.

<RangeLow> [Необязательный компонент,
кроме случая, когда validation="Range"]

Верхнее значение диапазона допустимых
значений.

<RangeHigh> [Необязательный компонент,
кроме случая, когда validation="Range"]

<EditBoxDistance> (БлокРедактированияРасстояния)

Описания рецептов | 4273

Этот тип элемента управления соответствует классу AecEditBoxDist в AutoCAD
Architecture и имеет те же основные параметры.

<EditBoxDistance idStr="rowSpacing" unitDep="true">

<Label>По оси Y</Label>

<Description>Шаг между болтами в направлении Y</Description>

<Default>2,0</Default>

<Validation>NoNeg</Validation>

</EditBoxDistance>

У него могут быть следующие атрибуты:

Описание

Атрибут

Этот атрибут определяет, требуется ли
значение данного элемента управления

unitDep [Необязательный компонент]

масштабировать до текущих единиц изме-
рения чертежа. Значение "1" или “true”
приведет к масштабированию значения.
Значение "0" или “false” оставит значение
таким, как оно было задано.

У элемента управления <EditBoxDistance> могут быть следующие элементы:

Описание

Элемент

Значение расстояния по умолчанию.

<Default> [Необязательный компонент]

Определяет, какой используется тип прави-
ла верификации. Возможные значения:

<Validation> [Необязательный компонент]

“Any”, “NoNeg”, “NoZero” или “Range” ("Лю-
бое", "Неотрицательное", "Ненулевое" или
"Диапазон", соответственно). Если не зада-
ется, по умолчанию используется значение
“Any”.

Нижнее значение диапазона допустимых
значений.

<RangeLow> [Необязательный компонент,
кроме случая, когда validation="Range”]

Верхнее значение диапазона допустимых
значений.

<RangeHigh> [Необязательный компонент,
кроме случая, когда validation="Range"]

<EditBoxInt> (БлокРедактированияЦелого)

4274 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

Этот тип элемента управления соответствует классу AecEditBoxDist в AutoCAD
Architecture и имеет те же основные параметры.

<EditBoxInteger idStr="cols">

<Label>Вертикальные ряды</Label>

<Description>Количество болтов в направлении Y</Description>

<Default>2</Default>

<Validation>NoNegNoZero</Validation>

</EditBoxInteger>

У него могут быть следующие элементы:

Описание

Элемент

Целое значение по умолчанию.

<Default> [Необязательный компонент]

Определяет, какой используется тип прави-
ла верификации . Возможные значения:

<Validation> [Необязательный компонент]

“Any”, “NoNeg”, “NoZero”, “NoNegNoZero”
или “Range” ("Любое", "Неотрицательное",
"Ненулевое", "Неотрицательное и ненуле-
вое" или "Диапазон", соответственно). Если
не задается, по умолчанию используется
значение “Any”.

Нижнее значение диапазона допустимых
значений.

<RangeLow> [Необязательный компонент,
кроме случая, когда validation="Range"]

Верхнее значение диапазона допустимых
значений.

<RangeHigh> [Необязательный компонент,
кроме случая, когда validation="Range"]

<Picture> (Картинка)

Элемент управления "Картинка" используется для показа статического изображения
на палитре свойств. У него имеется список элементов <PictureValue>

Описания рецептов | 4275

(ЗначениеКартинки), которые могут использоваться при определенных условиях
для заполнения элемента управления "Картинка".

<Picture idStr="end_conditions_illustration" rowHeight="5">

<Label>Иллюстрация состояния кромок</Label>

<Default>plain_plain</Default>

<Varies>plain_plain</Varies>

<PictureValue idStr="regular_regular"

idFile="Images/cmu_regular_regular.png">

<ParentControl idRef="leftEndStyle" idStr="regular"/>

<ParentControl idRef="rightEndStyle" idStr="regular"/>

</PictureValue>

<PictureValue idStr="regular_plain"

idFile="Images/cmu_regular_plain.png">

<ParentControl idRef="leftEndStyle" idStr="regular"/>

<ParentControl idRef="rightEndStyle" idStr="plain"/>

</PictureValue>

</Picture>

У элемента управления "Картинка" могут быть следующие атрибуты:

Описание

Атрибут

Количество строк, которое данный элемент
управления должен занимать на палитре
свойств. Стандартное значение - 3.

rowHeight [Необязательный компонент]

У элемента управления "Картинка" могут быть следующие элементы:

Описание

Элемент

Кодовая строка <PictureValue>, которую
предстоит отображать по умолчанию.

<Default> [Необязательный компонент]

Кодовая строка <PictureValue>, которую
нужно показывать в случае неединичного

<Validation> [Необязательный компонент]

выбора с палитры свойств. Если не пара-
метр не указан, используется <Default>.

Задание элементов управления

Если один и тот же элемент управления используется разными "Рецептами" в рамках
одного и того же "Описания рецепта", вы можете определить их в разделе

4276 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

<ControlDefs> ("Описания элементов управления"), а затем ссылаться на них в разделе
<Controls> отдельного "Рецепта".

<ControlRef idRef="head"/>

Просто используйте атрибут idRef, чтобы сослаться на кодовую строку "Элемента
управления", описанного в разделе <ControlDefs>.

В следующем примере показан элемент управления, описанный на уровне
<RecipeSpec>, на который можно ссылаться из любого набора команд <Recipe>.
Также здесь представлен элемент управления, который описан локально, в отдельном
"Рецепте".

<?xml version="1.0" encoding="UTF-8"?> (<?xml версия="1.0" кодиров

ка="UTF-8"?>)

<AecRecipeSpec defaultUnit="in"> (<AecRecipeSpec стандартныеЕдини

цы="дюймы">)

<ControlDefs>

<CheckBox idStr="hatchBlock">

<Label>Штриховка блока</Label>

<Description>Определяет, штриховать ли блок. </Description>

<Default>1</Default>

</CheckBox>

</ControlDefs>

<Recipe idStr="section">

<Label>Разрез</Label>

<Implementation> (Реализация)

<ObjectARX>

<AppName>AecDtl50</AppName>

<RcpFunc>ConcreteUnit2CoreSection</RcpFunc>

</ObjectARX>

</Implementation>

<Controls>

<ControlRef idRef="hatchBlock"/>

<CheckBox idStr="hatchCores">

<Label>Залить перемычки</Label>

<Description>Определяет, штриховать ли перемычки каркаса

вместе с раствором.</Description>

<Default>0</Default>

</CheckBox>

</Controls>

Раздел <Data> (Данные)

В этом разделе содержатся данные адаптации, которые используются "Функцией
рецепта". Он включает в себя такие категории, как простые свойства "Слоя/Цвета/Типа

Описания рецептов | 4277

линий", информацию об образце штриховки, параметры масштабирования и так
далее. Именно "Функция рецепта" отвечает за обращение к этому разделу и поиск
каких-либо данных, которые могут пригодиться.

Подразумевается, что между "Функцией рецепта" и "Описанием рецепта" существуют
определенные отношения. "Функция рецепта" может определять допустимость
размещения чего бы то ни было в разделе <Data>, но обычно она содержит список
традиционно встречающихся элементов. Вы можете поместить в раздел <Data>
практически что угодно, но, если "Функция рецепта" этого не предполагает, то оно
будет проигнорировано.

Данные внутри этого раздела распределены по разделам <Item> (элементы). В каждом
разделе "Элемент" может содержаться практически все, что определяет "Рецепт".
Раздел "Элемент" обычно описывает данные для части всего компонента, например
для "границы", "заполнения" и "скрытой части".

Обычно внутри раздела "Элемент" появляется информация, относящаяся к
следующим стандартным типам:

<AcadEntityProps> (свойства объектов AutoCAD)

<AcadBlockProps> (свойства блоков AutoCAD)

<AcadMInsertProps> (свойства команды "МВставка")

<AcadHatchProps> (свойства штриховок AutoCAD)

<Params> (параметры)

Эти стандартные информационные элементы описаны индивидуально в следующих
разделах.

<AcadEntityProps> (свойства объектов AutoCAD)

Этот "Элемент" описывает свойства "Слоя/Цвета/Типа линий" объекта. Все позиции
являются необязательными и используются только в том случае, если специально
перечислены. Если они не перечислены, "Функция рецепта" должна использовать в

4278 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

качестве значения по умолчанию или "ПоБлоку", или "ПоСлою" (или то, что является
подходящим параметром). Вот четыре примера:

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer ref="layerKey">FINE</Layer>

<Linetype>HIDDEN</Linetype>

</AcadEntityProps>

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer>Jimbo</Layer>

<ColorIndex>1</ColorIndex>

<Linetype>DASHED</Linetype>

<LinetypeScale>3.0</LinetypeScale>

<Lineweight>53</Lineweight>

</AcadEntityProps>

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer>Jimbo</Layer>

<Color>

<Red>73</Red>

<Green>179</Green>

<Blue>157</Blue>

</Color>

<Linetype>DASHED</Linetype>

</AcadEntityProps>

Внутри <AcadEntityProps> могут быть заданы следующие "Элементы":

<Layer> (слой) [Необязательный компонент]

<ColorIndex> (коэффициент цвета) [Необязательный компонент]

<Color> (цвет) [Необязательный компонент]

<Linetype> (тип линий) [Необязательный компонент]

<LinetypeScale> (масштаб типа линий) [Необязательный компонент]

<Lineweight> (вес линии) [Необязательный компонент]

ПРИМЕЧАНИЕ

Может присутствовать или раздел <Color>, или <ColorIndex>, но

не оба одновременно. Если используется <Color>, он должен содержать
подчиненные элементы <Red>, <Green> и <Blue> (красный, зеленый и синий,
соответственно), как в приведенном выше примере.

<AcadBlockProps> (свойства блоков AutoCAD)

Описания рецептов | 4279

Этот "Элемент" определяет свойства ссылок на блоки. Вот несколько примеров:

<AcadBlockProps> (свойства блоков AutoCAD)

<BlockName dwgLib="dwgs/AecDtlLib_BlockTest.dwg"

remapLayers="true">Jimbo</BlockName>

<ScaleX ref="dbTable">SCALE_X</ScaleX>

<ScaleY ref="dbTable">SCALE_Y</ScaleY>

<ScaleZ ref="dbTable">SCALE_Z</ScaleZ>

</AcadBlockProps>

<AcadBlockProps> (свойства блоков AutoCAD)

<BlockName dwgLib="dwgs/AecDtlLib_BlockTest.dwg"

remapLayers="true">Jimbo</BlockName>

<Scale>6.0</Scale> <!-- В этом случае используется равномерный

масштаб-->

</AcadBlockProps>

<AcadBlockProps> (свойства блоков AutoCAD)

<BlockName dwgLib="dwgs/AecDtlLib_TrenchDrains.dwg"

remapLayers="true"

ref="dbTable">R_BLOCK</BlockName>

</AcadBlockProps>

Внутри раздела <AcadBlockProps> могут быть описаны следующие "Элементы":

<BlockName> (имя блока)

<Scale> (масштаб) [Необязательный компонент]

<ScaleX> (масштаб по X) [Необязательный компонент]

<ScaleY> (масштаб по Y) [Необязательный компонент]

<ScaleZ> (масштаб по Z) [Необязательный компонент]

<Rotation> (поворот) [Необязательный компонент]

Элемент <BlockName> объявляет имя описания блока, которое будет использоваться,
и может содержать следующие атрибуты, которые выдают инструкции о том, как
загружать блок, если он не обнаружен в текущем чертеже:

Описание

Атрибут

Путь к библиотечному файлу с расширени-
ем DWG, в котором определен блок. Если

dwgLib [Необязательный компонент]

задан относительный путь, то он соотнесен
с местоположением XML-файла "Описания
рецепта".

4280 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

Описание

Атрибут

Ключ директория для подстановки из базы
данных компонентов выносных элементов.

dirKey [Необязательный компонент]

Значение атрибута dwgLib затем прибавля-
ется к значению dirKey, за счет чего форми-
руется наименование полного пути.

Логическое значение, определяющее, сле-
дует ли искать "Ключи слоев" для слоев, в

remapLayers [Необязательный компонент]

которых изображаются объекты в блоках.
Если в качестве значения элемента "Слой"
обнаружен "Ключ слоя", "Слой" переназна-
чается с учетом этого "Ключа слоя". Это
значение должно задаваться как "true" -
"истина" только в том случае, если вы навер-
няка знаете, что в блоке заданы "Ключи
слоев".

Если задан, то имя блока - это значение для
подстановки, предназначенное для обнару-

ref [Необязательный компонент]

жения действительного наименования
блока.

Если используется <Scale>, то задается равномерный масштаб по каждой из осей
блока, на который осуществляется ссылка.

<AcadMInsertProps> (свойства команды "МВставка")

Этот элемент описывает дополнительные значения, которые могут быть у команды
"МВставка" до и после "Вхождения блока". Что-либо общее как для команды

Описания рецептов | 4281

"МВставка", так и для "Вхождения блока", как следствие, появится в разделе
<AcadBlockProps>.

<AcadMInsertProps> (свойства команды "МВставка")

<Rows>2</Rows>

<RowSpacing>5.0</RowSpacing>

<Columns>3</Columns>

<ColumnSpacing>6.0</ColumnSpacing>

</AcadMInsertProps>

<AcadMInsertProps> (свойства команды "МВставка")

<Rows ref="dbTable">ROWS</Rows>

<RowSpacing>5.0</RowSpacing>

<Columns ref="dbTable">COLUMNS</Columns>

<ColumnSpacing>6.0</ColumnSpacing>

</AcadMInsertProps>

Внутри раздела <AcadMInsertProps> могут быть заданы следующие "Элементы":

<Scale> (масштаб) [Необязательный компонент]

<Rows> (строки) [Необязательный компонент]

<RowSpacing> (расстояние между строками) [Необязательный компонент]

<Columns> (столбцы) [Необязательный компонент]

<ColumnSpacing> (расстояние между строками) [Необязательный компонент]

<AcadHatchProps> (свойства штриховок AutoCAD)

Этот "Элемент" определяет свойства штриховки. Вот несколько примеров:

<AcadHatchProps> (свойства штриховок AutoCAD)

<HatchAlias>brick</HatchAlias>

</AcadHatchProps>

<AcadHatchProps> (свойства штриховок AutoCAD)

<HatchAlias ref="dbTable">PAT_ALIAS</HatchAlias>

</AcadHatchProps>

<AcadHatchProps> (свойства штриховок AutoCAD)

<PatternName>Escher</PatternName>

<PatternScale>4.0</PatternScale>

<PatternAngle>45.0</PatternAngle>

</AcadHatchProps>

4282 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

В разделе < AcadHatchProps > могут быть определены следующие "Элементы":

Описание

Элемент

Наименование псевдонима из таблицы
штриховок базы данных компонентов вы-

<HatchAlias> (псевдоним штриховки) [Не-
обязательный компонент]

носных элементов. За счет применения этой
таблицы вы можете централизованно опи-
сать "Образец", "Масштаб" и "Угол" для ти-
повых материалов, используемых во всей
базе данных. Большая часть "Описаний ре-
цептов" будет использовать "Псевдоним
штриховки" для определения всех парамет-
ров штриховки. Однако вы можете задать
эти значения и непосредственно, с помо-
щью остальных элементов.

Возможные значения таковы: “PreDefined”
("Предопределенный", значение по умолча-

<PatternType> (тип образца) [Необязатель-
ный компонент]

нию), “User” ("Пользовательский") или
“Custom” ("Заказной").

Если указанное <PatternName> (или то, на
которое имеется косвенная ссылка из

<PatternName> (наименование образца)
[Необязательный компонент]

<HatchAlias>) не существует, используется
образец “ANSI31”.

<PatternScale> (масштаб образца) [Необяза-
тельный компонент]

<PatternMultiplier> (множитель образца)
[Необязательный компонент]

<PatternAngle> (угол поворота образца)
[Необязательный компонент]

<PatternDouble> (дублирование образца)
[Необязательный компонент]

<PatternSpace> (шаг образца) [Необязатель-
ный компонент]

<Params> (параметры)

Описания рецептов | 4283

В этом "Элементе" задаются параметры, специфические для отдельного "Рецепта".
Обычно, это такие значение, которые нужны для "Рецепта", однако они не жестко
закодированы и, как следствие, могут быть изменены пользователем. Вот несколько
примеров:

<Item idStr="boundary"> (<Item idStr="границы">)

<Params> (параметры)

<Tongue>0.125</Tongue> (выступ)

<GrooveSpacing>0.03125</GrooveSpacing> (шаг пазов)

</Params>

</Item>

<Item idStr="boundary"> (<Item idStr="границы">)

<Params> (параметры)

<Chamfer>0.5</Chamfer> (фаска)

</Params>

</Item>

Наименования "Элементов" определяются самой "Функцией рецепта" и должны быть
известны заранее, чтобы можно было их редактировать в "Описании рецепта".

ПРИМЕЧАНИЕ

Один из способов выявить подразумеваемые "Функции рецепта" -

включить регистрацию. Подробнее см. раздел 

Регистрация рецептов

 на стр. 4297.

Раздел <Options> (опции)

Этот раздел содержит данные адаптации, которые используются на фазе размещения
("Шаблон") "Функции рецепта". В большинстве случаев "Функции рецепта" разделяют
свою работу на две фазы:

1

создание компонента,

2

размещение компонента.

Работой по размещению компонента обычно занимается стандартный "Шаблон",
который может управляться элементами, описанными в разделе <Options>. Конечно,
вы можете и заранее узнать, какие "Шаблоны" и "Объекты шаблонов" используются
в "Функции рецепта", и воспользоваться этим преимуществом.

4284 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

Приведенный ниже пример взят из группы компонентов "Кирпичные брусчатки".
В нем используется шаблон "LinearArrayJig", позволяющий повторять ряд блоков с
заданным шагом.

Описания рецептов | 4285

<?xml version="1.0" encoding="UTF-8"?> (<?xml версия="1.0" кодиров

ка="UTF-8"?>)

<AecRecipeSpec defaultUnit="in"> (<AecRecipeSpec стандартныеЕдини

цы="дюймы">)

<Recipe idStr="section">

<Label>Разрез</Label>

<Implementation> (Реализация)

<ObjectARX logicalAppname="AecDtl50"

funcRcp="AecDtlRcpUnitPaver"/>

</Implementation>

<Controls>

<CheckBox idStr="doHatch">

<Label>Элемент штриховки</Label>

<Default>1</Default>

</CheckBox>

</Controls>

<Data> (Данные)

<Item idStr="block">

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer ref="layerKey">MED</Layer>

</AcadEntityProps>

</Item>

<Item idStr="boundary"> (<Item idStr="границы">)

<Params> (параметры)

<Chamfer>0.0</Chamfer>

</Params>

</Item>

<Item idStr="infill">

<AcadHatchProps> (свойства штриховок AutoCAD)

<HatchAlias>brick</HatchAlias>

</AcadHatchProps>

<AcadEntityProps> (свойства объектов AutoCAD)

<Layer ref="layerKey">HATCH</Layer>

</AcadEntityProps>

</Item>

</Data>

<Options>

<JigEnt>

<GapSpacing>0.25</GapSpacing>

</JigEnt>

<Jig>

<PromptCount>Количество проходов</PromptCount>

</Jig>

4286 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

</Options>

</Recipe>

</AecRecipeSpec>

В разделе <Options> выдается распоряжение "Объекту шаблона" обеспечить шаг 0,25
дюймов между рядами кладки и производится замена строки запроса в одном из
запросов, производимых "Шаблоном".

Подробнее о том, какие опции доступны для определенных "Шаблонов" и "Объектов
шаблонов" см. раздел 

Шаблоны и объекты шаблонов

 на стр. 4287.

Шаблоны и объекты шаблонов

"Шаблон" (Jig) - это программируемая конструкция, которая определяет, каким
образом пользователь добавляет объекты в чертеж. Вы можете представить ее себе
как команду "Добавить", которая проявляет визуальную обратную связь тогда, когда
вы определяете, как выглядит объект. Например, простой "Шаблон дуги" (Arc Jig) в
программе AutoCAD динамически прочерчивает фантом дуги в то время, как вы
вводите разные значения.

"Объект шаблона" (JigEnt) - это объект, используемый для прорисовки визуальной
обратной связи. В AutoCAD и AutoCAD Architecture это обычно тот же тип объекта,
который создается (например, "Шаблон стены" будет использоваться для объекта
"Стена"). В структуре "Рецепта" большая часть компонентов представлены не
типовыми объектами, а набором примитивных объектов AutoCAD, таких, как
штриховка, полилиния и блок. В этом случае "Объект шаблона" - это временно
сохраняемый в памяти объект, используемый для прорисовки по ходу эксплуатации
"Шаблона", впоследствии, после добавления в чертеж реальных объектов, удаляемый
из памяти.

Структура "Рецепта" использует некоторую систему, которая вставляет особые
"ОбъектыШаблонов" в обычные "Шаблоны". Это позволяет обычному "Шаблону",
отвечающему за линейные компоненты (т.е. такому, который запрашивает "Начальную
точку" и "Конечную точку"), выглядеть совершенно по-разному, в зависимости от
того, какой "Объект шаблона" используется (например, ряд кирпичей или
металлическая балка).

Хотя разработка новых "Шаблонов" и "Объектов шаблонов" в настоящее время
доступна только для программистов ObjectARX, многими аспектами существующих
"Шаблонов" и "Объектов шаблонов" можно управлять за счет облегченных методик
адаптации. Для понимания этого полезно иметь представление о том, как
запрограммированы имеющиеся "Шаблоны" и "Объекты шаблонов".

Шаблоны и объекты шаблонов | 4287

Иерархия шаблонов

AecEdJigRcp ("Шаблон рецепта")

AecEdJigCircle ("Шаблон окружности")

AecEdJigLine ("Шаблон линии")

AecEdJigLineBlockBased ("Шаблон, основанный на блоке")

AecEdJigLinearArray ("Шаблон линейного массива")

AecEdJigStretch ("Шаблон растяжения")

AecEdJigLineOriented ("Шаблон линейной ориентации")

AecEdJigLineExtend ("Шаблон линейного удлинения")

AecEdJigSurface ("Шаблон поверхности")

AecEdJigRectangle ("Шаблон прямоугольника")

AecEdJigStamp ("Шаблон штемпеля")

ПРИМЕЧАНИЕ

Уровень отступа абзаца отражает входимость. Например, если вы

хотите знать поведение и параметры "Шаблона линейного массива", вы можете
увидеть, что он наследует поведение и все параметры "Шаблона, основанного на
блоке", "Шаблона линии" и "Шаблона рецепта".

Иерархия объектов шаблонов

AecEdJigRcp ("Шаблон рецепта")

AecEdJigEntCircle ("Объект шаблона окружности")

AecEdJigEntLine ("Объект шаблона линии")

AecEdJigEntLineBlockBased ("Объект шаблона, основанного на

блоке")

AecEdJigEntBookends ("Объект шаблона форзацев")

AecEdJigEntLinearArray ("Объект шаблона линейного массива")

AecEdJigEntStretch ("Объект шаблона растяжения")

AecEdJigEntLineOriented ("Объект шаблона линейной ориентации")

AecEdJigEntLineExtend ("Объект шаблона линейного удлинения")

AecEdJigEntSurface ("Объект шаблона поверхности")

AecEdJigEntSurfaceHlines ("Объект шаблона штриховки поверх

ности")

AecEdJigEntMeasure ("Объект шаблона измерений")

AecEdJigEntRectangle ("Объект шаблона прямоугольника")

Как можно видеть, на верхних уровнях "Шаблоны" и "Объекты шаблонов" выглядят
практически одинаково. Однако имеются дополнительные "Объекты шаблонов",
которые могут повторно использовать один и тот же шаблон. Здесь перечислены
только обычные "Объекты шаблонов". Существует много особых "Объектов
шаблонов", производных от них. Например, имеется особый "Объект шаблона" для
каждого типа деревянных и металлических балок, каждый из которых произошел
от "Объекта шаблона линейного удлинения" и сохранил большую часть его свойств.
Для каждого из них не требуется особого "Шаблона", потому что все они запрашивают

4288 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

одну и ту же последовательность данных. Если были бы перечислены все объекты
внутреннего программирования для компонентов выносных элементов, вы бы
увидели очень много "Объектов шаблонов", но совсем не так много "Шаблонов".

Обычные шаблоны

У обычных "Шаблонов" и "Объектов шаблонов", перечисленных в приведенной выше
иерархии, имеются опции, или параметры, которые могут быть определены в разделе
<Options> "Описания рецепта", а в некоторых случаях могут быть обычные рецепты,
используемые без написания какой-либо новой программы.

Ниже приведены краткие описания некоторых обычных "Шаблонов", вместе с
информацией о параметрах или "Функции рецепта", которые могут быть
использованы для каждого, если это возможно.

Шаблон штемпеля

"Шаблон штемпеля" подобен команде ВСТАВИТЬ в том отношении, что он
производит вставку базового блока (с использованием некоторых дополнительных
элементов управления). Вот пример, который показывает как раздел "Опции"
используется для управления поведением "Шаблона".

<Options>

<Jig>

<AllowScaling>false</AllowScaling>

<AllowRotation>true</AllowRotation>

<AllowXFlip>true</AllowXFlip>

<AllowYFlip>true</AllowYFlip>

<AllowBasePt>true</AllowBasePt>

</Jig>

</Options>

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

В следующей таблице перечислены опции для "Шаблонов штемпелей".

Примечания

Опция

<AllowScaling> ("Разрешить масштабирова-
ние")

<AllowRotation> ("Разрешить поворот")

Обычные шаблоны | 4289

Примечания

Опция

<AllowXFlip> ("Разрешить изменение знака
координат Х")

<AllowYFlip> ("Разрешить изменение знака
координат Y")

Логическое значение, определяющее, явля-
ются ли обычные параметры командной

<AllowBasePt> ("Разрешить базовую точку")

строки "Шаблона" допустимыми опциями
для данного "Рецепта".

Для использования этого "Шаблона" непосредственно из обычной функции рецепта,
используйте следующий раздел "Описания рецепта":

<Implementation> (Реализация)

<ObjectARX>

<AppName>AecRcpBase40</AppName>

<RcpFunc>Stamp</RcpFunc>

</ObjectARX>

</Implementation>

Шаблон линейного массива

"Шаблон линейного массива" помещает несколько копий вставляемого блока вдоль
линии, с ориентацией по оси X или Y и с заданным шагом между каждой операцией

4290 | Глава 55   Настройка и добавление нового содержимого для компонентов выносных элементов

 

 

 

 

 

 

 

содержание      ..     8      9      10      11     ..