Anthroposcaper — Руководство пользователя
Параметрическое создание 3D-моделей городской и архитектурной среды.
Anthroposcaper — это веб-приложение для параметрического создания 3D-моделей
городской и архитектурной среды: дорог, тротуаров, бордюров, заборов, ландшафта.
Вы рисуете обычный 2D-план (или импортируете DXF) и помечаете грани и линии тегами вроде
road, grass, fence. Теги раскрываются в классы — именованные наборы свойств
(материалы, текстуры, высоты, уклоны), которые вы определяете сами. Сложную геометрию —
бордюры, заборы, перила — вы импортируете как готовые 3D-модели (GLB) с материалами и
текстурами и оформляете как шаблоны, а система автоматически раскладывает их вдоль
нужных рёбер. На выходе — готовая 3D-сцена с материалами, текстурами и геометрией стыков.
1. Введение
Что это
Топология (где грани, где рёбра, где углы) выводится из чертежа автоматически, а правила превращения 2D → 3D задаются декларативно — тегами и атрибутами, а не нодами и не кодом. Поправили один тег или один шаблон — пересчиталось всё, что его использует.
Anthroposcaper выигрывает на массовости и повторяемости — когда вдоль улиц района нужно расставить километры однотипных элементов. Типичные пользователи — архитектурные визуализаторы (окружение для рендера), архитекторы и градостроители (концептуальные планы района), ландшафтные дизайнеры (дорожки, газоны, заборы, бордюры как тиражируемые шаблоны) и геймдев (уровни и окружение).
Общий рабочий процесс
Чертёж (условно 2D) → Топология (DCEL) → Теги/атрибуты/шаблоны → 3D-модель
- Нарисуйте или импортируйте (DXF) план.
- Из пересечений линий автоматически строятся грани и рёбра (топология).
- Назначьте граням, рёбрам и объектам теги и атрибуты с правилами.
- Подготовьте шаблоны сложной геометрии (бордюр, забор), импортировав 3D-модели (GLB).
- Нажмите Build 3D — система соберёт 3D-сцену.
2. Начало работы
Интерфейс
Приложение открывается в браузере (никакой установки). Основные области:
- Вьюпорт в центре — один 3D-вид со свободной камерой.
- Левая панель — дерево проекта, слои, координатные системы, панель DCEL.
- Правая панель — свойства выделенного и панели «Атрибуты» / «Атрибуты слоя».
- Тулбар инструментов и строка статуса.
- Нижняя панель — чекбоксы отображения (оси, DCEL, 3D) и кнопка сборки 3D.
Вьюпорт и камера
Камера орбитальная — вращается вокруг целевой точки. Управление мышью:
| Действие мышью | Результат |
|---|---|
| Правая кнопка + перетаскивание | Вращение (орбита вокруг целевой точки) |
| Средняя кнопка (колесо) + перетаскивание | Панорама — сдвиг сцены в плоскости экрана |
| Колесо прокрутки | Приближение / отдаление (zoom) |
Стандартные виды и проекции (горячие клавиши; виды ориентируются по активной координатной системе):
| Клавиша | Действие |
|---|---|
| T | Вид сверху (Top) |
| F | Вид спереди (Front) |
| L | Вид слева (Left) |
| P | Перспективная проекция |
| O | Ортогональная проекция |
| C | Переместить центр камеры на позицию курсора |
| Z | Вписать всю сцену или выделение в экран (Zoom to Fit) |
Проекты и хранение
- Проекты хранятся в браузере (IndexedDB) и/или экспортируются в файл (
.asprj). - Операции: создать, открыть, сохранить, сохранить как, закрыть.
- Проект самодостаточен: чертёж, импортированные текстуры, меши, материалы и наборы классов хранятся в одном файле.
- Звёздочка в заголовке означает несохранённые изменения.
Ваши данные остаются у вас. Приложение работает целиком в браузере: проекты, импортированные файлы и результаты сборки никуда не отправляются. Мы не получаем и не храним ваши рабочие данные на сервере — всё лежит локально на вашем устройстве (в хранилище браузера и в файлах, которые вы экспортируете сами).
⚠ Делайте резервные копии на диск. Хранилище браузера (IndexedDB) не вечно: его легко потерять — при очистке данных сайта, в режиме инкогнито (стирается после закрытия окна), при работе с другого браузера или устройства, при переустановке браузера. Регулярно экспортируйте важные проекты в файл
.asprj(Сохранить как / экспорт на диск) — это единственная по-настоящему надёжная копия.
3. Чертёж
Чертёж трёхмерный: каждая точка имеет координаты X, Y и Z (высоту), а объекты можно строить в любых плоскостях. При этом грани (замкнутые области) определяются по пересечениям линий в виде сверху — топология считается в проекции на горизонтальную плоскость, а высота Z переносится в неё с самих объектов. Кривые разбиваются на отрезки — конечная цель ведь 3D-модель.
Примитивы
| Тип | Описание | |
|---|---|---|
| Point | Точка в пространстве. | |
| Polyline | Ломаная (последовательность вершин), может быть замкнутой. | |
| Circle | Окружность — центр, радиус, число сегментов, нормаль плоскости, угол поворота. | |
| Arc | Дуга — центр, радиус, начальный и конечный угол, число сегментов, нормаль плоскости. | |
| Image | Подложка — прямоугольник с картинкой, позиционируется и масштабируется в пространстве. | |
| MeshInstance | Размещение импортированного 3D-меша (ссылка на шаблон в дереве + трансформация). |
Число сегментов у кривых — пользовательская настройка точности конечного меша. Вы видите во вьюпорте именно ту аппроксимацию, которая попадёт в 3D-модель. В поле «сегменты» можно ввести либо число (
Nсегментов), либо длину одного сегмента в метрах — например3m: тогда число сегментов вычисляется автоматически из длины кривой (чем длиннее дуга или окружность, тем больше сегментов при той же заданной длине).
Ориентация плоскости. Circle, Arc и Image хранят собственную нормаль плоскости. Это позволяет рисовать их в любой наклонной плоскости. Новые объекты сразу ложатся в плоскость активной координатной системы.
Инструменты рисования
Инструменты выбираются на тулбаре. У части есть горячие клавиши (см. справочник).
| Инструмент | Что делает | |
|---|---|---|
| Point | Добавить одиночную точку. | |
| Polyline | Ломаная (несколько сегментов; Enter завершает). | |
| Rect | Прямоугольник (по 2 углам или по базовой линии и третьей точке). | |
| Circle | Окружность (центр → точка на окружности). | |
| Arc | Дуга окружности. | |
| Image | Вставить растровую подложку с позиционированием. | |
| PlaceMesh | Разместить 3D-меш-шаблон в чертеже. | |
| CS | Создать координатную систему (см. §5). |
Инструменты редактирования
Выделение бывает трёх режимов — целые объекты, отдельные точки, отдельные сегменты; плюс выделение граней топологии. Переключаются клавишами ` / 1 / 2 / 4.
| Инструмент | Клавиша | Что делает | |
|---|---|---|---|
| Select | ` | Выделение объектов целиком (клик или рамка; Ctrl+клик — мультиселект). | |
| PointSelect | 1 | Выделение отдельных вершин/точек. | |
| SegmentSelect | 2 | Выделение отдельных сегментов. | |
| FaceSelect (DCEL) | 4 | Выделение граней топологии (для назначения атрибутов граням). | |
| Move | W | Переместить выделенное. | |
| Rotate | E | Повернуть выделенное. | |
| Scale | R | Масштабировать выделенное. | |
| Trim | — | Обрезать сегменты до пересечений. | |
| Extend | — | Удлинить рёбра до ближайшего пересечения. | |
| Refine | — | Вставить вершину на сегменте. | |
| Break | — | Разбить полилинию на отдельные части. | |
| Merge | — | Объединить соседние объекты (полилинии, дуги) в один. | |
| Fillet | — | Скруглить угол дугой (радиус задаётся параметром r). |
|
| Chamfer | — | Срезать угол прямой (катет задаётся параметром d). |
|
| Offset | — | Параллельная копия на заданном расстоянии. | |
| Mirror | — | Отразить относительно оси. | |
| ArrayRect | — | Прямоугольный массив копий. | |
| ArrayPolar | — | Радиальный (круговой) массив копий. | |
| Explode | — | Разобрать составной объект на части. | |
| Q | Q | Вернуться к последнему инструменту выделения. |
Буфер обмена: Ctrl+C копировать, Ctrl+X вырезать, Ctrl+Shift+C копировать с базовой точкой (укажите её кликом), Ctrl+V вставить (геометрия-призрак следует за курсором).
Копируются не только сами примитивы, но и их слои, цвета и параметрические атрибуты (теги и значения, в том числе на отдельных вершинах и сегментах). При вставке слои переносятся по имени: если в целевом чертеже уже есть слой с таким именем — объекты лягут на него, иначе слой создаётся.
Буфер общий для всего приложения и сохраняется при открытии или создании другого проекта. Поэтому вставлять можно не только в другой чертёж того же проекта, но и в другой файл: скопируйте в одном проекте, откройте/создайте другой — и вставьте.
4. Точное построение
Точность построения обеспечивают два механизма: объектные привязки (прикрепляют курсор к геометрии) и координатный ввод (точные числа с клавиатуры).
Объектные привязки
Привязки заставляют курсор «прилипать» к характерным точкам геометрии. Включение/выключение — клавиша S; настройка отдельных режимов — Shift+S.
| Привязка | Что даёт |
|---|---|
| Endpoint | Конечные точки сегментов, дуг. |
| Midpoint | Середина сегмента или дуги. |
| Center | Центр окружности или дуги. |
| Node | Точечный объект (Point). |
| Intersection | Пересечение сегментов или направляющих. |
| Nearest | Ближайшая точка на сегменте. |
| Extension | Луч-продолжение захваченного сегмента за его конец. |
| Normal | Перпендикуляр (проекция точки на сегмент). |
| Parallel | Луч, параллельный захваченному сегменту. |
| Bisector | Биссектриса угла между соседними сегментами. |
| Tangent | Касательная к окружности/дуге. |
| Ortho | Горизонтальные/вертикальные направляющие от захваченных точек. |
Отслеживание привязок
Эта функция запоминает точки, к которым вы привязывались, и строит от них невидимые направляющие лучи. Наведите курсор на привязанную точку и задержите его (короткий hover) — точка «захватывается». После захвата от неё тянутся лучи (продолжение, нормаль, биссектриса, орто), и курсор может привязаться к их пересечениям с лучами от других захваченных точек. Это позволяет строить «на пересечении продолжений» без вспомогательной геометрии.
Координатный ввод (ограничения)
Во время построения у курсора показывается плавающая табличка с полями точных значений — они
переопределяют положение курсора. Чтобы задать значение, перейдите в нужное поле клавишей
Tab (Shift+Tab — назад) и введите число. Сами метки полей
(x, len, ang…) печатать не нужно — это лишь подписи. Какие поля показывать, настраивается
через Shift+C. Значения трактуются в локальных координатах активной
координатной системы.
| Поле | Значение | Требует опорной точки |
|---|---|---|
x / y / z |
Абсолютная координата по соответствующей оси. | нет |
len |
Расстояние от опорной точки до текущей. | да |
dx / dy / dz |
Смещение от опорной точки по оси. | да |
ang |
Угол (в градусах) от опорного направления. | да |
Display vs Lock. Незаблокированное поле (Display) просто показывает текущее значение и обновляется при движении мыши. Залоченное поле фиксирует своё значение (фон выделяется), и курсор привязывается к точкам, удовлетворяющим ограничению. Если заблокировать противоречащие ограничения — появится сообщение CONFLICT; разблокируйте одно из полей.
Как зафиксировать/снять. Сначала выберите нужное поле клавишами Tab / Shift+Tab. Затем введите число и примените нажатием Tab, Enter или Esc — поле применяется по своему содержимому:
- поле не пустое → ограничение фиксируется (lock) на этом значении;
- поле пустое → блокировка снимается (поле очищено).
Разница между клавишами — только в том, куда уходит фокус после применения:
- Tab / Shift+Tab — к следующему / предыдущему полю;
- Enter — остаться в этом поле (для инструментов вроде полилинии — также завершить построение);
- Esc — вернуть фокус на холст; повторный Esc (вне поля) отменяет операцию инструмента.
5. Слои, координатные системы, изоляция
Слои
Каждый объект принадлежит слою. Слой задаёт:
- Имя и цвет (используется, если объект не задаёт свой цвет).
- Видимость — невидимые объекты исключаются из рендера и привязок.
- Блокировку — заблокированные объекты рисуются приглушённо, к ним работает привязка, но выделять и редактировать нельзя.
- Исключение из построения топологии — чтобы слой не участвовал в построении граней, добавьте ему тег
noDcel(в «Атрибутах слоя»). Тот же тег можно повесить на отдельный объект или через класс с телом{noDcel}. - Атрибуты слоя — общий набор тегов/атрибутов для всех объектов слоя (редактируется в правой панели «Атрибуты слоя»).
Координатные системы (UCS)
Можно создавать пользовательские системы координат. Построение и ввод координат ведутся относительно активной СК.
- World (мировая) всегда есть, не удаляется и не переименовывается.
- Для создания СК есть два инструмента:
- СК (начало + X) — два клика: начало координат и направление оси X. Плоскость остаётся горизонтальной (ось Z = мировая вертикаль).
- СК (начало + X + Y) — три клика: начало, направление оси X и точка, задающая плоскость XY. Позволяет задать произвольную наклонную ориентацию в 3D.
- Активная СК влияет на: проекцию привязок, ввод координат (в локальных осях), отображение осей, стандартные виды (T/F/L), плоскость новых объектов.
- Точки хранятся в мировых координатах; ввод интерпретируется в активной СК.
Изоляция объектов
Временное скрытие (живёт только в текущей сессии, в файл не сохраняется), работает по объектам целиком:
| Клавиша | Действие |
|---|---|
| H | Скрыть выделенные. |
| I | Изолировать (показать выделенные, скрыть остальные). |
| Shift+H / Shift+I | Показать все скрытые. |
6. Импорт
- DXF — обменный формат 2D-чертежей (черчение из других CAD). Z-координаты приходят вместе с импортом.
- GLB — открытый стандартный формат 3D (геометрия + PBR-материалы + текстуры; «JPEG для 3D»). Импортируется самодостаточный файл
.glb— вся геометрия, текстуры и материалы упакованы внутри одного файла. Текстовый вариант.gltfс внешними ресурсами (отдельные файлы геометрии/текстур) не поддерживается. При импорте создаётся папка с именем файла, внутри — изображения, текстуры, материалы и сам меш. Размещение копий меша в чертеже — инструмент PlaceMesh.
Импортированные меши живут «снаружи» планарной топологии — они не участвуют в построении граней.
7. Топология (грани и рёбра)
Когда вы рисуете план — дороги, перекрёстки, газоны — система автоматически распознаёт все замкнутые грани и рёбра между ними. Вручную создавать «контуры заливки» не нужно: топология выводится из пересечений линий.
- Грани и рёбра строятся автоматически из всех пересечений линий чертежа.
- Построение всегда в мировой плоскости XY (план сверху); активная СК на топологию не влияет.
- Любая правка чертежа вызывает реактивную пересборку в фоне — интерфейс не блокируется.
- Слой можно исключить из построения топологии — добавьте ему тег
noDcel(в «Атрибутах слоя»; см. §5). Тот же тег работает на отдельном объекте. - Грани не существуют в чертеже как объекты — выделяйте их инструментом FaceSelect (4).
Отображение топологии: F2 — общий переключатель показа топологии (цветная заливка граней и вся отрисовка DCEL включаются/выключаются разом); Shift+F2 — диагностический режим (показ полурёбер и проблемных вершин).
8. Параметризация
Параметризация — это то, как 2D-чертёж превращается в 3D. На элементы вешаются теги и атрибуты, которые управляют генерацией геометрии.
Теги и атрибуты
- Тег — ключ без значения, например
roadилиgrass. Работает как метка/класс: проверяется только «наличие ключа». - Атрибут — ключ со значением, например
dz: -0.2илиmaterial: asphalt. Проверяется конкретное значение.
Назначаются через правую панель «Атрибуты». Ввод в поле (по Enter): строка с
: добавляет атрибут; строка без : добавляет тег. Атрибуты можно ставить на:
- Объекты чертежа (Polyline, Circle, Arc, Point, Image, MeshInstance);
- Подобъекты — отдельные вершины и сегменты полилинии;
- Грани топологии (выделив их через FaceSelect);
- Слои (панель «Атрибуты слоя»).
Классы
Класс — именованный набор атрибутов. Определяется в узле ContentClass в дереве проекта (можно иметь несколько таких узлов, тематически). У каждого класса есть имя и тело (набор атрибутов).
Применяется класс назначением тега с именем класса. Например, класс urban-street с телом
road; dz: -0.1; material: asphalt разворачивается, как только вы повесите тег urban-street
на объект или грань.
Приоритеты (каскад): прямой атрибут перекрывает атрибут из класса; атрибут объекта перекрывает атрибут слоя.
Атрибуты граней
Управляют геометрией самой грани. Грань попадает в 3D, если у неё есть хотя бы один из
ключей dz / material / slope / proj.
| Атрибут | Синтаксис | Что делает | Пример |
|---|---|---|---|
| dz | dz: <число> |
Постоянное смещение грани по высоте (метры). | dz: -0.2 (опустить на 20 см) |
| material | material: <имя> |
3D-материал грани (по имени узла материала в проекте). | material: asphalt |
| color | color: <hex> |
Цвет заливки грани в режиме DCEL (F2). Форматы #RGB/#RRGGBB/#RRGGBBAA. | color: #FF6600 |
| proj | proj: planar [sx] [sy] |
Проекция текстуры (UV). Режим planar (XY); sx/sy — размер тайла в метрах. Без размера — 1:1. | proj: planar 3 3 (тайл 3×3 м) |
| slope | slope: <классы> |
Плавный уклон: высота интерполируется по грани между уровнями названных соседних граней. | slope: road roadHi |
Атрибуты рёбер и вершин
Назначаются на сегменты/вершины полилиний для локального воздействия на стыки граней.
| Атрибут | Синтаксис | Что делает |
|---|---|---|
| dz (на ребре/вершине) | dz: <n> <классы> [<n> <классы>] |
Локальное смещение по высоте конкретной смежной грани. Мультигруппа: число открывает группу, слова за ним — классы, к которым оно применяется. |
| normal: up | normal: up [классы] |
Принудительно вертикальная нормаль в вершине — плавное затенение на острой кромке скоса. |
| offset | offset: <d> <классы> |
Сдвиг контура грани в плане (XY), чтобы отодвинуть её от ребра-шаблона (не заезжать на бордюр). Знак «+» внутрь, «−» наружу. |
| break | break |
Граница между лентами раскладки: в этой вершине/сегменте одна лента шаблона заканчивается и начинается следующая, и каждая раскладывается независимо (см. §9). |
| corner | corner |
Принудительно ставит угловую вставку шаблона в этой вершине (см. §9). |
Пример мультигруппы:
dz: -0.15 grass sidewalk 0.1 road— со стороны гранейgrassиsidewalkребро опускается на 15 см, со стороныroadподнимается на 10 см. Так одно ребро может задавать разную высоту своим соседям.
9. Шаблоны вдоль рёбер
Шаблон — это сложная геометрия (бордюр, забор, перила, отбойник), которую система автоматически раскладывает вдоль рёбер модели с учётом длины, изгибов и углов. Топология берётся из плана, а шаблон рисуется как обычный чертёж.
Основы (T-маркер)
Шаблон — это небольшой замкнутый контур, разделённый внутренним отрезком (path) на две грани.
На каждой из двух граней ставятся теги-классы, описывающие, к каким рёбрам применять шаблон
(например, левая грань — road, правая — grass). На сам разделяющий отрезок (path) тоже
можно вешать теги и атрибуты: ими уточняют отбор (шаблон ляжет только на рёбра, помеченные
таким же тегом) и задают распределение копий вдоль ребра (см.
Распределение). Внутри контура размещаются 3D-меши,
импортированные из GLB (с их материалами и текстурами) и расставленные инструментом
PlaceMesh — именно они раскладываются вдоль ребра.
Все объекты шаблона объединяет имя семейства — тег T: <имя> (например T: bordur). Он
должен стоять на всех объектах шаблона — и на гранях контура, и на мешах. Удобнее всего
завести для шаблона отдельный слой и повесить T: <имя> на него (в «Атрибутах слоя»):
тогда все объекты слоя унаследуют тег автоматически, и не нужно проставлять его каждому
объекту вручную.
Как применяется. Система берёт каждое ребро вашего плана и смотрит на теги двух его соседних граней. Если они совпадают с тегами левой и правой граней шаблона — шаблон раскладывается вдоль этого ребра. Где именно нарисован сам шаблон, неважно: шаблоны ищутся по всему проекту, их можно держать в стороне или в отдельном чертеже-библиотеке.
Шаблон "bordur": На модели:
левая грань: road ребро со стороной road и стороной grass → совпало,
правая грань: grass бордюр раскладывается вдоль ребра
Роли (TR)
Один логический шаблон («семейство») может состоять из нескольких контуров с разными ролями —
вы рисуете каждый отдельно и помечаете тегом TR: <роль>. Система сама ставит нужную роль в
нужном месте ленты.
| Роль | Синтаксис | Где применяется |
|---|---|---|
| Default | TR: default или без TR |
Повторяющийся «средний» сегмент по всей длине. |
| Begin | TR: begin |
Один раз в начале ленты (торец). |
| End | TR: end |
Один раз в конце ленты (торец). |
| Corner | TR: corner / TR: corner>N |
Вставка на углах. corner>N — только для изломов ≥ N°; можно задать несколько порогов (для мягких и резких углов выбирается самый подходящий). |
Любое другое значение TR (не из списка) трактуется как пользовательское — используется для разделения наборов мешей внутри семейства. Торцы begin/end автоматически появляются на границах участка, углы — на изломах; забор «не гнётся» на повороте.
Распределение вдоль ребра
Как именно шаблон тиражируется вдоль ребра, задаётся тегами/атрибутами на внутреннем ребре (path) шаблона. По умолчанию (без тегов) — режим «round-N»: число копий ≈ длина ÷ длина шаблона, каждая слегка растягивается.
| Тег / атрибут | Синтаксис | Что делает |
|---|---|---|
| stretch | stretch (тег) |
Одна копия, растянутая на всю длину. Игнорирует n/clip. |
| n | n: K |
Ровно K копий. Без clip каждая растягивается; с clip — копии полной длины с обрезкой. |
| clip | clip / clip: start / clip: end / clip: center |
Копии не растягиваются (полная длина шаблона), лишнее обрезается с указанной стороны (по умолчанию center). |
| minScale | minScale: S |
Нижняя граница масштаба копии (доля длины шаблона). round-N округляет число копий вниз, чтобы масштаб ≥ S; короткие участки на изломе не режутся, а гнутся. |
| every | every: K / every: Km |
Точечная вставка (slot): этот контур ставится каждую K-ю копию или каждые K метров. Для столбов, решёток. |
| break | break / break: N |
Разрезать ленту на изломах: break — на каждой вершине, break: N — только при изломе ≥ N°. Каждый кусок тиражируется независимо. |
| rigid | rigid (тег) |
Жёсткие копии — не деформируются на углах, длина фиксирована (для прямых панелей). |
| overlay | overlay (тег) |
Аддитивное семейство: не конкурирует с основным шаблоном, а рисуется поверх. Кейс: общий бордюр + перила на тех же рёбрах. |
| baseline | baseline: <класс> |
Поднять/опустить Z всех мешей шаблона на уровень поверхности названной соседней грани (чтобы бордюр лёг на уклонённую дорогу, а не висел). |
| offset | offset: <d> <классы> |
Отодвинуть смежные грани ребра в плане (та же грамматика, что edge-offset). |
Примеры:
n: 4— ровно 4 копии;clip: center— целые копии, обрезка с обеих сторон;n: 3+clip: end— 3 целых копии, обрезка справа;break: 30+minScale: 0.5— резать на изломах ≥ 30°, но не сжимать ниже 50%.
Параметры отдельных мешей в шаблоне
На конкретный меш (MeshInstance) внутри шаблона можно повесить дополнительные атрибуты:
| Атрибут | Синтаксис | Что делает |
|---|---|---|
| snap | snap / snap: begin / center / end / 75% / 0.3 |
Якорь меша внутри копии: snap — к ближайшему краю; значение — фиксированная позиция (0…1 или проценты). Меш гнётся на изломах, но не растягивается. |
| rigid | rigid |
Конкретный меш не деформируется (в отличие от rigid на всём шаблоне). |
| bisector | bisector / bisector: <N |
Поворачивать меш на биссектрису стыка (опц. только при изломе ≤ N°). |
Шаблоны «along» (открытая полилиния)
Если шаблон применяется не по граням, а просто вдоль самого объекта (забор по линии газона, перила по краю), его можно задать открытой полилинией:
- Нарисуйте открытую полилинию, повесьте на неё тег
T: <имя>(и при желанииTR:+ теги распределения). Её концы задают длину и направление шаблона. - Рядом разместите геометрию (она пойдёт слева/справа от линии).
- На целевом объекте (Polyline/Arc/Circle) поставьте атрибут
along: <имя>— шаблон протянется вдоль него, независимо от топологии. - Направление задаётся порядком вершин (Polyline) или флагом Reverse в свойствах; видно стрелкой в режиме точек (F4).
10. Генерация и экспорт 3D
3D-сцена пересчитывается по команде (а не автоматически — чтобы вы управляли тяжёлыми сборками):
- Ctrl+B — собрать 3D и включить показ.
- B — включить/выключить показ сгенерированной геометрии.
- На нижней панели есть чекбокс «3D» и кнопка сборки.
Что попадает в сборку:
- Грани с атрибутами
dz/material/slope/proj— триангулируются в поверхность. - Рёбра с шаблонами (тег
T:) — вдоль них раскладывается геометрия. - Объекты с
along— шаблон протягивается вдоль линии.
Экспорт. Готовую геометрию можно выгрузить из меню: Экспорт GLB — 3D-сцена в файл
.glb (со всеми мешами и материалами), Экспорт DXF — плоский чертёж. Результат можно
открыть в Blender, 3ds Max и других пакетах.
11. Undo / Redo
Все операции, изменяющие проект, обратимы. История линейная и единая для всего проекта: она общая для всех чертежей, поэтому отмена/повтор работают сквозь переключение между чертежами (Ctrl+Z отменит последнее действие, даже если оно было сделано в другом чертеже).
| Клавиши | Действие |
|---|---|
| Ctrl+Z | Отменить (Undo) |
| Ctrl+Shift+Z или Ctrl+Y | Повторить (Redo) |
Изменения камеры в историю не входят. После выполнения новой операции «ветка повтора» сбрасывается (как обычно в редакторах).
12. Справочник
Горячие клавиши
Камера и виды
| Клавиша | Действие |
|---|---|
| T / F / L | Вид сверху / спереди / слева (по активной СК) |
| P / O | Перспектива / Ортогональ |
| C | Центр камеры на курсоре |
| Z | Вписать сцену/выделение в экран |
Инструменты
| Клавиша | Действие |
|---|---|
| ` | Select (объекты) |
| 1 / 2 / 4 | Выделение точек / сегментов / граней |
| Q | Последний инструмент выделения |
| W / E / R | Move / Rotate / Scale |
| Escape | Отмена / выход из инструмента |
Отображение
| Клавиша | Действие |
|---|---|
| F2 | Заливка граней (DCEL) вкл/выкл |
| Shift+F2 | Диагностика DCEL |
| F3 | Каркас (wireframe) |
| F4 | Точки |
| B | Показ 3D вкл/выкл |
| Ctrl+B | Собрать 3D и показать |
Редактирование, буфер, изоляция
| Клавиша | Действие |
|---|---|
| Ctrl+Z / Ctrl+Shift+Z / Ctrl+Y | Undo / Redo |
| Ctrl+C / Ctrl+X / Ctrl+V | Копировать / Вырезать / Вставить |
| Ctrl+Shift+C | Копировать с базовой точкой |
| H / I | Скрыть / Изолировать выделенные |
| Shift+H / Shift+I | Показать все скрытые |
Привязки и ввод
| Клавиша | Действие |
|---|---|
| S | Объектные привязки вкл/выкл |
| Shift+S | Настройки привязок |
| Shift+C | Настройки координатного ввода |
| Tab / Shift+Tab | Переход между полями ввода |
| Enter | Подтвердить значение / точку |
Поля координатного ввода
| Поле | Значение |
|---|---|
x, y, z |
Абсолютные координаты |
len |
Расстояние от опорной точки |
dx, dy, dz |
Смещение от опорной точки |
ang |
Угол (градусы) |
Сводка атрибутов
Параметризация / грани
| Ключ | Тип | Назначение |
|---|---|---|
dz |
атрибут | Смещение по высоте (метры); мультигруппа на ребре |
material |
атрибут | 3D-материал грани |
color |
атрибут | Цвет заливки грани в DCEL-режиме |
proj |
атрибут | Проекция текстуры (planar + размер тайла) |
slope |
атрибут | Плавный уклон между соседями |
normal: up |
атрибут | Вертикальная нормаль в вершине |
offset |
атрибут | Сдвиг контура грани в плане |
along |
атрибут | Протянуть шаблон вдоль объекта |
Шаблоны (теги/атрибуты)
| Ключ | Тип | Назначение |
|---|---|---|
T |
тег / атрибут | Маркер шаблона (T: имя) |
TR |
атрибут | Роль: default / begin / end / corner>N |
stretch |
тег | Одна растянутая копия |
n |
атрибут | Число копий |
clip |
тег / атрибут | Копии полной длины с обрезкой |
minScale |
атрибут | Нижняя граница масштаба копии |
every |
атрибут | Точечная вставка (slot) |
break |
тег / атрибут | Резать ленту на изломах |
rigid |
тег | Жёсткие (недеформируемые) копии |
overlay |
тег | Аддитивное семейство поверх основного |
baseline |
атрибут | Высота мешей по уровню соседней грани |
snap |
тег / атрибут | Якорь меша внутри копии |
bisector |
тег / атрибут | Поворот меша на биссектрису стыка |
corner |
тег | Принудительная угловая вставка в вершине |