Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
developers:references:tlc:dictionary:profiles:start [2023/05/24 15:09] proxor [Определение профилей] |
developers:references:tlc:dictionary:profiles:start [2024/03/07 15:49] (текущий) proxor |
||
---|---|---|---|
Строка 2: | Строка 2: | ||
---- | ---- | ||
- | <note warning>Раздел в разработке</note> | + | <note important>Раздел на модерации</note> |
==== Функция v-profile-rect ==== | ==== Функция v-profile-rect ==== | ||
- | Объект **Профиль** не является отображаемым элементом. **Профиль** - это виртуальный эскиз используемый при **[[developers:references:tlc:dictionary:3d_model:start|построении 3D-моделей]]** путём выдавливания или вращения. | + | Объект **Профиль** не является отображаемым элементом. **Профиль** - это виртуальный эскиз используемый при **[[developers:references:tlc:dictionary:3d_model:start|построении 3D-тел]]** путём выдавливания или вращения. |
^ Описание ^^^ | ^ Описание ^^^ | ||
Строка 24: | Строка 24: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение квадратного профиля | ; Определение квадратного профиля | ||
Строка 39: | Строка 39: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение прямоугольного профиля | ; Определение прямоугольного профиля | ||
Строка 61: | Строка 61: | ||
^ Синтаксис ^^^ | ^ Синтаксис ^^^ | ||
| <code lisp> | | <code lisp> | ||
- | (v-profile-round radius) | + | (v-profile-round diameter) |
</code> ||| | </code> ||| | ||
^ Аргумент ^ Тип ^ Описание ^ | ^ Аргумент ^ Тип ^ Описание ^ | ||
- | | ''radius'' | Вещественное | Радиус | | + | | ''diameter'' | Вещественное | Диаметр | |
^ Пример ^^^ | ^ Пример ^^^ | ||
| <code lisp> | | <code lisp> | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение круглого профиля | ; Определение круглого профиля | ||
Строка 100: | Строка 100: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение профиля сегмента окружности | ; Определение профиля сегмента окружности | ||
Строка 130: | Строка 130: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение восьмиугольного профиля | ; Определение восьмиугольного профиля | ||
Строка 163: | Строка 163: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение Г-образного профиля со стенками одинаковой ширины | ; Определение Г-образного профиля со стенками одинаковой ширины | ||
Строка 178: | Строка 178: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение Г-образного профиля со стенками разной ширины | ; Определение Г-образного профиля со стенками разной ширины | ||
Строка 211: | Строка 211: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение П-образного профиля со стенками одинаковой ширины | ; Определение П-образного профиля со стенками одинаковой ширины | ||
Строка 226: | Строка 226: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение П-образного профиля со стенками разной ширины | ; Определение П-образного профиля со стенками разной ширины | ||
Строка 259: | Строка 259: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение T-образного профиля со стенками одинаковой ширины | ; Определение T-образного профиля со стенками одинаковой ширины | ||
Строка 274: | Строка 274: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude | (v-extrude | ||
; Определение T-образного профиля со стенками разной ширины | ; Определение T-образного профиля со стенками разной ширины | ||
Строка 296: | Строка 296: | ||
| Профиль ||| | | Профиль ||| | ||
^ Примечание ^^^ | ^ Примечание ^^^ | ||
- | | Профиль должен содержать минимум два вершины. Аргументами могут быть трёхмерные векторы или пары координат X и Y в любом сочетании. Координаты X и Y передаются как отдельные аргументы, поэтому важно следить за количеством и типом передаваемых аргументов.\\ **Важно!** Для корректного расчёта освещения 3D-модели, рекомендуется описывать профиль парами вершин, как если бы каждая пара вершин подразумевала грань профиля. То есть, при перечислении вершин каждую промежуточную точку необходимо дублировать, чтобы получилась конструкция вида:\\ ''Вершина 1, Вершина 2, Вершина 2, Вершина 3, Вершина 3, Вершина 4, ..., Вершина N'' ||| | + | | Профиль должен содержать минимум два вершины. Аргументами могут быть трёхмерные векторы или пары координат X и Y в любом сочетании. Координаты X и Y передаются как отдельные аргументы, поэтому важно следить за количеством и типом передаваемых аргументов.\\ **Важно!** Для корректного расчёта освещения 3D-тела, рекомендуется описывать профиль парами вершин, как если бы каждая пара вершин подразумевала грань профиля. То есть, при перечислении вершин каждую промежуточную точку необходимо дублировать, чтобы получилась конструкция вида:\\ ''Вершина 1, Вершина 2, Вершина 2, Вершина 3, Вершина 3, Вершина 4, ..., Вершина N'' ||| |
^ Синтаксис ^^^ | ^ Синтаксис ^^^ | ||
| <code lisp> | | <code lisp> | ||
Строка 303: | Строка 303: | ||
</code> ||| | </code> ||| | ||
^ Аргумент ^ Тип ^ Описание ^ | ^ Аргумент ^ Тип ^ Описание ^ | ||
- | | ''vector_#'' | 3D-вектор | Трёхмерный вектор | | + | | ''vector_#'' | [[developers:references:tlc:dictionary:vectors:start|3D-вектор]] | Трёхмерный вектор | |
| ''x_#'' | Вещественное | Координата X | | | ''x_#'' | Вещественное | Координата X | | ||
| ''y_#'' | Вещественное | Координата Y | | | ''y_#'' | Вещественное | Координата Y | | ||
Строка 320: | Строка 320: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude profile (vec 0.0 0.0 0.1)) | (v-extrude profile (vec 0.0 0.0 0.1)) | ||
) | ) | ||
Строка 338: | Строка 338: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude profile (vec 0.0 0.0 0.1)) | (v-extrude profile (vec 0.0 0.0 0.1)) | ||
) | ) | ||
Строка 358: | Строка 358: | ||
^ Синтаксис ^^^ | ^ Синтаксис ^^^ | ||
| <code lisp> | | <code lisp> | ||
- | (v-profile-shape profile_1 profile_2 ... profile_N)</code> ||| | + | (v-profile-compound profile_1 profile_2 ... profile_N)</code> ||| |
^ Аргумент ^ Тип ^ Описание ^ | ^ Аргумент ^ Тип ^ Описание ^ | ||
- | | ''profile_#'' | Профиль | Профиль | | + | | ''profile_#'' | [[developers:references:tlc:dictionary:profiles:start|Профиль]] | Профиль | |
^ Пример ^^^ | ^ Пример ^^^ | ||
| <code lisp> | | <code lisp> | ||
Строка 388: | Строка 388: | ||
; Объявление блока геометрии | ; Объявление блока геометрии | ||
(defgeometry | (defgeometry | ||
- | ; Создание 3D-модели путём выдавливания профиля | + | ; Создание 3D-тела путём выдавливания профиля |
(v-extrude compound_profile (vec 0.0 0.0 0.1)) | (v-extrude compound_profile (vec 0.0 0.0 0.1)) | ||
) | ) | ||
Строка 410: | Строка 410: | ||
</code> ||| | </code> ||| | ||
^ Аргумент ^ Тип ^ Описание ^ | ^ Аргумент ^ Тип ^ Описание ^ | ||
- | | ''profile'' | Профиль | Вращаемый профиль | | + | | ''profile'' | [[developers:references:tlc:dictionary:profiles:start|Профиль]] | Вращаемый профиль | |
| ''start_angle'' | Вещественное | Начальный угол поворота | | | ''start_angle'' | Вещественное | Начальный угол поворота | | ||
| ''end_angle'' | Вещественное | Конечный угол поворота | | | ''end_angle'' | Вещественное | Конечный угол поворота | | ||
Строка 444: | Строка 444: | ||
</code> ||| | </code> ||| | ||
^ Аргумент ^ Тип ^ Описание ^ | ^ Аргумент ^ Тип ^ Описание ^ | ||
- | | ''profile'' | Профиль | Масштабируемый профиль | | + | | ''profile'' | [[developers:references:tlc:dictionary:profiles:start|Профиль]] | Масштабируемый профиль | |
- | | ''start_scale'' | 3D-вектор | Начальный масштаб | | + | | ''start_scale'' | [[developers:references:tlc:dictionary:vectors:start|3D-вектор]] | Начальный масштаб | |
- | | ''end_scale'' | 3D-вектор | Конечный масштаб | | + | | ''end_scale'' | [[developers:references:tlc:dictionary:vectors:start|3D-вектор]] | Конечный масштаб | |
^ Пример ^^^ | ^ Пример ^^^ | ||
| <code lisp> | | <code lisp> | ||
Строка 477: | Строка 477: | ||
</code> ||| | </code> ||| | ||
^ Аргумент ^ Тип ^ Описание ^ | ^ Аргумент ^ Тип ^ Описание ^ | ||
- | | ''profile'' | Профиль | Перемещаемый профиль | | + | | ''profile'' | [[developers:references:tlc:dictionary:profiles:start|Профиль]] | Перемещаемый профиль | |
- | | ''start_position'' | 3D-вектор | Начальное положение | | + | | ''start_position'' | [[developers:references:tlc:dictionary:vectors:start|3D-вектор]] | Начальное положение | |
- | | ''end_position'' | 3D-вектор | Конечное положение | | + | | ''end_position'' | [[developers:references:tlc:dictionary:vectors:start|3D-вектор]] | Конечное положение | |
^ Пример ^^^ | ^ Пример ^^^ | ||
| <code lisp> | | <code lisp> | ||
Строка 508: | Строка 508: | ||
^ Синтаксис ^^^ | ^ Синтаксис ^^^ | ||
| <code lisp> | | <code lisp> | ||
- | (v-profile-translate profile normal) | + | (v-profile-mirror profile normal) |
</code> ||| | </code> ||| | ||
^ Аргумент ^ Тип ^ Описание ^ | ^ Аргумент ^ Тип ^ Описание ^ | ||
- | | ''profile'' | профиль | Профиль | | + | | ''profile'' | [[developers:references:tlc:dictionary:profiles:start|Профиль]] | Профиль | |
- | | ''normal'' | 3D-вектор | Нормаль плоскости отражения | | + | | ''normal'' | [[developers:references:tlc:dictionary:vectors:start|3D-вектор]] | Нормаль плоскости отражения | |