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

Переменные

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

Функция distance() возвращает значение расстояния между двумя 2D или 3D элементами.

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

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

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

distance ( “имя1”, “имя2” ), где

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

Определить расстояние с помощью функции distance() можно для следующих пар 2D и 3D объектов:

2D элементы – расстояние можно измерить между 2D узлом и другим 2D узлом, линией построения, линией изображения или штриховкой (порядок выбора измеряемых элементов не важен);

3D объекты – расстояние можно измерить между любыми двумя 3D объектами, являющимися 3D элементами построения (кроме ЛСК) или операциями.

Функция distance() также позволяет измерять расстояния для таких топологических 3D объектов, как вершины, рёбра, циклы, грани. Это возможно только для предварительно именованных топологических объектов. Присвоение имени (например, “Вершина_1” или “Ребро_3”) осуществляется автоматически в команде “PM: Измерить элемент или отношение между элементами” или при использовании данного объекта в какой-либо 3D операции. Присвоенное объекту имя и нужно использовать в качестве его идентификатора при работе с функцией distance().

Функция measure() позволяет измерить различные отношения между двумя 2D или 3D элементами.

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

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

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

Measure ( “имя1”, “имя2”, “отношение”), где

имя1 – имя первого элемента или его идентификатор, имя2 – имя второго элемента или его идентификатор, отношение – тип вычисляемого отношения.

Функция позволяет вычислить следующие типы отношений:

для 2D элементов:

“Angle” – Угол между двумя прямыми, отрезками или прямой и отрезком;

для 3D объектов:

“Angle” – Угол между векторами направления двух 3D объектов. Ниже перечислены 3D объекты, для которых можно определить направление (и, соответственно, вычислить данное отношение). Также указано, что будет выбрано в качестве вектора направления для каждого объекта:

3D путь или разомкнутый 3D профиль, лежащие на прямой, – направление прямой;

551

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

3D путь или разомкнутый 3D профиль, лежащие на эллипсе (окружности), – вектор, направленный из центра эллипса (окружности) по нормали к плоскости эллипса (окружности);

Плоский 3D профиль; рабочая плоскость; тело операции, состоящее из одной грани, лежащей на плоскости, – нормаль к плоскости;

Цилиндрическая рабочая поверхность; 3D профиль, лежащий на цилиндре; тело операции, состоящее из одной грани, лежащей на цилиндре, – ось цилиндра;

3D профиль, лежащий на конусе; тело операции, состоящее из одной грани, лежащей на конусе, – ось конуса;

Тороидальная рабочая поверхность; 3D профиль, лежащий на торе; тело операции, состоящее из одной грани, лежащей на торе, – ось тора.

“AxisDistance” – Расстояние между осями двух 3D объектов. В качестве объектов измерения можно выбирать те же 3D объекты, что и в предыдущем случае (при нахождении “Angle”), за исключением рабочих плоскостей. Оси выбранных объектов совпадают с их векторами направления.

Функция measure(), как и функция distance(), может измерять отношения между топологическими 3D объектами (вершины, рёбра, циклы, грани), если данным объектам раннее уже было присвоено имя в команде “PM: Измерить элемент или отношение между элементами” или в другой 3D

операции.

Для двух топологических объектов типа вершина, ребро, грань, а также пары топологический объект

– 3D узел возможно также определить дополнительное отношение:

“GeomDistance” – Расстояние между 3D точками, 3D кривыми или поверхностями, соответствующими двум 3D объектам типа: 3D узел, вершина, ребро, грань.

Как и при использовании функции get(), названия параметров функций distance() и measure() можно указывать как заглавными, так и строчными буквами. Если имя элемента или отношения задано неверно, то функция возвращает значение 0.

Примеры:

Вычислить расстояние между двумя 3D узлами с именами “3D Узел_0” и “3D Узел_1”, можно с помощью следующего вызова функции distance():

distance ( “3D Узел_0”, “3D Узел_1” )

Расстояние между линией изображения, имеющей идентификатор 0x3000014, и 2D узлом с именем “Узел 1”, также можно вычислить с помощью функции distance():

distance ( “0x3000014”, “Узел 1” )

Вычислить расстояние между осями двух тел, например, цилиндра, полученного в результате операции “Выталкивание_1”, и тора, построенного с помощью операции “Вращение_2”, можно с помощью следующего вызова функции measure():

measure ("Выталкивание_1", "Вращение_2", "AxisDistance")

Для работы с функциями distance() и measure() рекомендуется использовать команду “PM:

Измерить элемент или отношение между элементами”. Подробное описание данной команды приведено в главе “ Измерение элементов и отношений между ними ”.

552

Переменные

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

Данная функция предназначена для определения наличия файлов с заданным именем в определенных директориях. Поиск файлов происходит в текущей директории, а также в директориях, установленных командой “SO: Задать установки системы” на закладке “Папки”.

CHECK (“ИМЯ ФАЙЛА”, ТИП)

Имя файла указывается с расширением. Тип файла указывается следующими значениями: 0 – неопределенный;

1– документ системы T-FLEX CAD;

2– шрифт;

3– база данных;

4– текстура;

5– спецификация.

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

Функции setv() и getv() позволяют получать и задавать значения вещественных служебных характеристик документов T-FLEX CAD, таких как количество страниц документа, масштаб и размер шрифта, установленные для каждой страницы, координаты углов форматок страниц, объём всех тел в 3D сцене (если документ содержит 3D модель) и т.п. Значения данных характеристик можно использовать, например, для передачи данных между сборочным чертежом и фрагментами.

Синтаксис функций setv("NAME",N)

Функция устанавливает для параметра NAME текущего документа числовое значение N.

getv ("NAME",Err)

Функция возвращает значение параметра NAME текущего чертежа. Err – значение, которое вернёт функция, если не найдет указанного параметра.

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

Для обращения к характеристикам других страниц необходимо к имени параметра прибавить “_Страница”, где “Страница” – имя нужной страницы документа.

Список характеристик документа T-FLEX CAD, с которыми может работать функция getv()

Характеристики 2D страниц документа:

PAGES – общее количество страниц в текущем документе; SCALE – масштаб чертежа;

XL – координата X левой границы чертежа;

XH – координата X правой границы чертежа;

YL – координата Y нижней границы чертежа;

YH – координата Y верхней границы чертежа; FSIZE – размер шрифта чертежа.

553

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

LTHICK – толщина основных линий чертежа.

TLTHICK - толщина тонких линий документа.

Характеристики 3D сцены документа:

MASS – значение массы всех тел в 3D сцене текущего документа; VOLUME – значение объёма всех тел в 3D сцене текущего документа;

AREA – значение площади поверхности всех тел в 3D сцене текущего документа;

EXPLODE – состояние режима разборки фрагментов 3D модели текущего документа (0 – режим разборки выключен, 1 – включен).

Характеристики фрагмента, вычисляемые из сборки:

_XL – координата X левой границы сборочного чертежа при использовании текущего чертежа в качестве фрагмента;

_XH – координата X правой границы сборочного чертежа при использовании текущего чертежа в качестве фрагмента;

_YL – координата Y нижней границы сборочного чертежа при использовании текущего чертежа в качестве фрагмента;

_YH – координата Y верхней границы сборочного чертежа при использовании текущего чертежа в качестве фрагмента;

APAGES - возвращает общее количество страниц, в документе, в который включен данный фрагмент;

APAGE - возвращает номер страницы, на которую нанесен данный фрагмент;

BOMPAGES – возвращает общее количество страниц в спецификации в документе, в который включен данный фрагмент;

BOMPAGE – возвращает номер страницы спецификации, на которую нанесен данный фрагмент.

Значения этих характеристик вычисляются для документа-фрагмента внутри сборки. Например, если в документе фрагмента создана переменная, значение которой задаётся выражением get(“apage”, -1), то внутри документа фрагмента значение этой переменной будет равно -1, а внутри сборочного – номеру страницы сборочного документа, на которую нанесён данный фрагмент.

Список характеристик документа T-FLEX CAD, с которыми работает функция setv()

Характеристики 2D страниц документа:

SCALE – масштаб чертежа;

XL – координата X левой границы чертежа;

XH – координата X правой границы чертежа;

YL – координата Y нижней границы чертежа;

YH – координата Y верхней границы чертежа; FSIZE – размер шрифта чертежа.

LTHICK – толщина основных линий чертежа.

TLTHICK – толщина тонких линий документа.

554