Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции Т / Л11 2D проектирование и черчение.pdf
Скачиваний:
83
Добавлен:
06.02.2016
Размер:
15.78 Mб
Скачать

Основы. Двухмерное проектирование

Приложение II. Примеры использования некоторых функций

Использование функций ATOT (), LTOT (), SATOT (), SLTOT ().

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

Функция SATOT () преобразует вещественное число, под которым подразумевается некоторая угловая величина, в текстовую строку. Параметрами преобразования являются установки, которые заданы в команде “ST: Задать параметры документа” в пункте Размеры.

Для функции SATOT () используются данные из раздела ”Угловые размеры”. Если в команде “ST:

Задать параметры документа” установлены значения:

то вызов функции SATOT (12.34567)приведет к следующему результату:

12%%d30’

Сочетание символов %%d заменяет символ градус (°).

Для того чтобы этот набор символов превратился в градус, переменная должна быть использована в качестве параметра какого-либо элемента оформления – текста (только строчного), размера, надписи и т.д.

Поясним вышесказанное на примере. Пусть в результате вызова функции переменная $str получит следующее значение:

$str = SATOT ( 12.34567 ) = 12%%30’

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

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

Если в команде “ST: Задать параметры документа” изменить значение параметра Единицы,

544

Переменные

то получим следующий результат:

SATOT ( 12.34567 ) результат 12.5%%d

Параметр ”Точность” позволяет регулировать точность получаемых результатов.

SATOT ( 12.34567 ) результат 12%%d21

Параметр ”Минимальное количество цифр” используется только в том случае, если используется десятичная форма представления.

SATOT ( 12.34567 ) результат 12.500%%d

Работа функции SLTOT () отличается от предыдущей только тем, что под вещественным числом, подлежащим преобразованию, подразумевается линейная величина и, в соответствии с этим, изменяются и формы представления. Их для данной функции четыре:

1– десятичная форма, например1.123;

2– в виде дюймов;

3– в виде дюймов и фракций;

4– в виде футов, дюймов и фракций. При следующих установках:

получим результат:

SLTOT ( 12.34567 ) результат 12.35

Функции ATOT () и LTOT () представляют собой соответственно варианты функций SATOT () и SLTOT (), в которых параметры преобразования задаются явно.

Синтаксис вызова функции LTOT:

LTOT (значение, точность, стандарт, число), где

значение – вещественное число, которое должно быть отформатировано; точность – точность, с которой необходимо преобразовать значение; стандарт – форма представления длины; может принимать следующие значения: 1 – десятичная форма, например 1.123 2 – в виде дюймов; 3 – в виде дюймов и фракций;

4 – в виде футов дюймов и фракций; число – количество значащих цифр после запятой при десятичной форме представления.

545

Основы. Двухмерное проектирование

Синтаксис вызова функции ATOT:

ATOT (значение, точность, стандарт, число), где

значение – вещественное число, которое должно быть отформатировано; точность – точность, с которой необходимо преобразовать значение; стандарт – форма представления угла; может принимать следующие значения: 1 – десятичная форма, например 1.123; 2 – в виде градусов, минут и секунд, например 1°2’30”.

число – количество значащих цифр после запятой при десятичной форме представления. Например:

LTOT ( 12.34567, 0.001, 1, 5 ) результат 12.34600

Использование функции GET ()

Данная функция позволяет получить значение свойства 2D или 3D элемента, а также страниц текущего чертежа. Набор доступных свойств зависит от типа измеряемого элемента.

Данная функция автоматически подставляется в выражение переменной, если в команде

“PM: Измерить элемент или отношение между элементами” создаётся переменная на основе измеренной характеристики 2D или 3D объекта.

Синтаксис функции:

GET (“строка1”, “строка2”), где

строка1 - имя элемента или его идентификатор, строка2 - имя параметра.

Всё 3D элементы и операции имеют идентификатор (уникальный идентификационный номер) и параметр "Имя", значение которых по умолчанию автоматически заполняется системой. Имя, при необходимости, может быть изменено пользователем. 2D элементы по умолчанию имеют только идентификатор, а имя можно задать некоторым из них (2D узлам, линиям изображения) в командах редактирования (например, в “EN: Изменить узел” или “EG: Изменить изображение”) с помощью

опции .

Элементами, параметры которых можно получить с помощью данной функции являются:

-2D страницы чертежа;

-линии построения;

-2D узлы;

-линии изображения;

-тексты;

-фрагменты;

-штриховки;

-3D элементы построения;

-3D операции;

-грани, рёбра, циклы.

546

Переменные

Зарезервированные имена параметров, которые можно получить с помощью функции get():

для 2D страниц чертежа:

“ZONES_STEP_X” размер одной зоны по оси X (величина шага по оси X); “ZONES_STEP_Y” размер одной зоны по оси X (величина шага по оси Y_;

“ZONES_OFFSET_X” смещение разбиваемой на зоны области относительно точки (0,0) - по оси X; “ZONES_OFFSET_Y” смещение разбиваемой на зоны области относительно точки (0,0) - по оси Y; “ZONES_COUNT_X” количество зон по оси X;

“ZONES_COUNT_Y” количество зон по оси Y.

Параметры разбивки страницы чертежа на зоны задаются в команде “ST: Задать параметры документа”, на закладке “Общие”.

для узлов:

“X” – X-координата узла;

“Y” – Y-координата узла;

для линий построения: прямых:

“X”, “Y” - координаты первой точки, через которую проходит линия построения – прямая; “P1”, “P2” - координаты второй точки, через которую проходит линия построения – прямая;

окружностей и эллипсов:

“LENGTH” – длина окружности;

“P1” – радиус окружности (данная характеристика присутствует только у окружностей); “X”, “Y” – координаты центра окружности;

сплайнов, 2D путей, функций и эквидистант:

“LENGTH” – длина элемента;

для линий изображения: отрезков:

“LENGTH” - длина отрезка;

“START_X”, “START_Y” – координаты начальной точки отрезка “END_X”, “END_Y” – координаты конечной точки отрезка;

построенных на основе окружностей:

“LENGTH” - длина дуги окружности;

“CENTER_X”, “CENTER_Y” – координаты центра окружности; “ANGLE” - угол дуги линии изображения;

“RADIUS” – радиус окружности;

построенных на основе эллипсов, сплайнов, 2D путей, эквидистант и функций:

“LENGTH” – длина элемента

547

Основы. Двухмерное проектирование

для линий изображения, построенных как дуга окружности или эллипса, часть сплайна, 2D

пути, эквидистанты или функции, добавляются следующие характеристики: “START_X”, “START_Y” – координаты начальной точки дуги; “END_X”, “END_Y” – координаты конечной точки дуги;

для штриховок:

“AREA” - площадь штриховки; “PERIMETER” - периметр штриховки; “XMASS” - X-координата центра масс; “YMASS” - Y-координата центра масс

для текстов:

“HEIGHT” – высота текста; “WIDTH” – ширина текста;

“X”, “Y” – координаты X и Y точки привязки текста;

для фрагментов: в качестве “строки 1” выступает имя или идентификатор фрагмента, в качестве “строки 2” - имя переменной фрагмента (переменная не должна быть текстовой). Функция возвращает значение переменной.

Кроме того, для 2D фрагментов доступны параметры:

“BoundBoxLeft” – левая граница охватывающего прямоугольника (координата X); “BoundBoxRight” – правая граница охватывающего прямоугольника (координата X); “BoundBoxTop” – верхняя граница охватывающего прямоугольника (координата Y); “BoundBoxBottom” нижняя граница охватывающего прямоугольника (координата Y); “BoundBoxCenterX” – координата X центра охватывающего прямоугольника фрагмента; “BoundBoxCenterY” – координата Y центра охватывающего прямоугольника фрагмента.

В трёхмерной версии системы можно получать параметры следующих 3D элементов:

для операций:

“Area” – площадь поверхности;

“Mass” – масса тела (учитывается плотность материала);

“Xmass”, “Ymass”, “Zmass” - X,Y,Z-координаты центра масс;

“IX”, “IY”, “IZ” – Моменты инерции относительно осей X, Y, Z;

“IXY”, “IYZ”, “IZX” – Значение инерции относительно плоскостей XY, YZ, ZX;

“Volume” – объём;

для операции “Наложение материала” добавляется свойство:

“MaterialArea” – общая площадь граней, на которые назначен материал;

для 3D массивов операций, Тел и элементов построения любых видов добавляется свойство:

“CopyCount” – фактическое количество копий в массиве (с учётом ограничений и исключений);

548

Переменные

для 3D узлов:

“POINTX”, “POINTY”, “POINTZ” - X, Y, Z-координаты 3D узла;

для 3D профиля:

“Area” - площадь поверхности 3D профиля;

“Perimeter” - периметр замкнутого 3D профиля или длина разомкнутого;

для 3D пути:

“Perimeter” – длина 3D пути;

для грани:

“Area” - площадь поверхности; “Perimeter” - периметр грани;

для плоской грани добавляются свойства:

“LocationX”, “LocationY”, “LocationZ” – X, Y, Z-координаты начальной точки плоскости грани;

“NormalX”, “NormalY”, “NormalZ” – X, Y, Z-компоненты нормали плоскости грани;

“RefDirectionX”, “RefDirectionY”, “RefDirectionZ” – X, Y, Z-компоненты вектора плоскости (вектор плоскости определяет направление оси X плоскости грани);

для цилиндрической грани добавляются свойства:

“Radius” - радиус цилиндра; “Diameter” – диаметр цилиндра;

“CenterX”, “CenterY”, “CenterZ” – X, Y, Z-координаты центра; “AXISX”, “AXISY”, “AXISZ” – X, Y, Z-компоненты оси цилиндра;

для тороидальной грани добавляются свойства:

“MaxRadius”, “MinRadius” - максимальный и минимальный радиусы тора;

“CenterX”, “CenterY”, “CenterZ” – X, Y, Z-координаты центра тора; “AxisX”, “AxisY”, “AxisZ” – X, Y, Z-компоненты оси тора;

для сферической грани добавляются характеристики: “Radius” – радиус сферы;

“Diameter” – диаметр сферы;

“CenterX”, “CenterY”, “CenterZ” – X, Y, Z-координаты центра сферы;

для ребра:

“Perimeter” – длина ребра;

“StartX”, “StartY”, “StartZ” – X, Y, Z-координаты начальной точки;

“EndX”, “EndY”, “EndZ” – X, Y, Z-координаты конечной точки;

для прямого ребра добавляются свойства:

“VECTORX”, “VECTORY”, “VECTORZ” – X, Y, Z-компоненты направления отрезка;

для ребра по окружности или по дуге окружности:

“Radius” – радиус окружности;

549

Основы. Двухмерное проектирование

“Diameter” – диаметр окружности;

“CenterX”, “CenterY”, “CenterZ” – X, Y, Z-компонента центра окружности;

“AxisX”, “AxisY”, “AxisZ” – X, Y, Z-компоненты нормали к плоскости окружности; “StartAngle” – начальный угол дуги окружности;

“EndAngle” – конечный угол дуги окружности;

для эллиптического ребра добавляются свойства:

“MajorRadius” – радиус большой полуоси эллипса; “MinorRadius” – радиус малой полуоси эллипса;

“CenterX”, “CenterY”, “CenterZ” – X, Y, Z-компонента центра эллипса;

“AxisX”, “AxisY”, “AxisZ” – X, Y, Z-компоненты нормали к плоскости эллипса;

“MaxDirectionX”, “MaxDirectionY”, “MaxDirectionZ” – X, Y, Z-компонента большой полуоси эллипса;

“MinDirectionX”, “MinDirectionY”, “MinDirectionZ” – X, Y, Z-компонента малой полуоси эллипса;

“StartAngle” – начальный угол дуги эллипса; “EndAngle” – конечный угол дуги эллипса;

для цикла:

“Perimeter” – периметр цикла.

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

Примеры:

Для узла, имеющего имя NODE_1, можно получить значение его X-координаты с помощью следующего вызова функции GET ():

get ( “NODE_1”, “X” )

Для линии изображения, имеющей имя IMAGE_1, можно получить значение её длины: get ( “IMAGE_1”, “length” )

Для штриховки, имеющей идентификатор 0x9000001, можно получить длину периметра её контура: get ("0x9000001", "PERIMETER")

Для 3D фрагмента с именем 3D фрагмент_11 можно получить объем тела 3D этого фрагмента: get ("3D фрагмент_11", "volume")

В том случае, если требуется вычислить суммарную длину нескольких связанных линий изображения, можно вызвать функцию GET() для каждой линии, а результаты сложить. Но эффективнее будет построить 2D путь, который повторяет цепочку линий изображения, и создать одну линию изображения на основе этого пути. 2D путь в таком случае считается обычным сплайном. Для этой единственную линию изображения можно получить её длину.

550