Перейти к содержанию

RibbonLayer

Слой WorldCanvas для отрисовки текстурированных или сплошных лент, маршрутов и полилиний в мировых координатах.

Обзор

RibbonLayer отрисовывает непрерывные текстурированные или сплошные ленты, маршруты и геометрические пути внутри WorldCanvas.

Ключевые возможности: - Текстурированные или однотонные ленты с настраиваемой шириной и шагом повтора текстуры (width, textureLength). - Кэширование меша: геометрия переиспользуется до изменения точек пути, камеры или параметров оформления. - Расширенная настройка через RibbonOptions: замкнутые контуры, miter limits, инверсия/обмен UV и скругленные стыки. - Управление точками пути: path, addPoint, clear.

Отрисовка текстурированного пути ленты

RibbonLayer ribbon = new RibbonLayer()
    .width(16.0f)
    .addPoint(0, 0)
    .addPoint(100, 150);
canvas.addWorldLayer(ribbon);

Связанные ссылки

  • WorldCanvas: Холст бесконечного 2D/3D пространства с поддержкой панорамирования, зума камеры, преобразования координат, фоновых слоев и привязанных экранных виджетов.
  • WorldLayer: Функциональный контракт для фоновых или декоративных слоев отрисовки внутри WorldCanvas.

API

RibbonLayer::addPoint(float, float)

Добавляет новую точку в мировых координатах в конец пути ленты.

Параметр Тип Описание
worldX float Мировая координата X.
worldY float Мировая координата Y.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::cacheHits()

Возвращает количество успешных обращений к кэшу меша ленты.

Возвращает long: Числовое количество..

RibbonLayer::cacheRebuilds()

Возвращает количество перестроений кэша меша ленты.

Возвращает long: Числовое количество..

RibbonLayer::clear()

Удаляет все точки из пути ленты.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::closed()

Возвращает true, если путь ленты образует замкнутый контур.

Возвращает boolean: True, если активно, включено или успешно..

RibbonLayer::closed(boolean)

Настраивает замыкание конца ленты обратно в ее начало.

Параметр Тип Описание
closed boolean Замкнут ли путь ленты в кольцо.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::flipU()

Возвращает true, если горизонтальная координата текстуры U инвертирована.

Возвращает boolean: True, если активно, включено или успешно..

RibbonLayer::flipU(boolean)

Настраивает инверсию горизонтальной координаты текстуры U.

Параметр Тип Описание
flipU boolean Инвертировать ли горизонтальную координату текстуры U.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::flipV()

Возвращает true, если вертикальная координата текстуры V инвертирована.

Возвращает boolean: True, если активно, включено или успешно..

RibbonLayer::flipV(boolean)

Настраивает инверсию вертикальной координаты текстуры V.

Параметр Тип Описание
flipV boolean Инвертировать ли вертикальную координату текстуры V.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::invalidateCache()

Принудительно инвалидирует закэшированную геометрию меша ленты.

RibbonLayer::jointDots()

Возвращает true, если на стыках вершин пути отрисовываются скругленные точки.

Возвращает boolean: True, если активно, включено или успешно..

RibbonLayer::jointDots(boolean)

Настраивает отрисовку скругленных точек на стыках вершин пути.

Параметр Тип Описание
jointDots boolean Отрисовывать ли скругленные точки на стыках вершин.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::jointSegments()

Возвращает количество сегментов для скругления угловых стыков.

Возвращает int: Числовое количество..

RibbonLayer::jointSegments(int)

Задает количество сегментов для скругления угловых стыков.

Параметр Тип Описание
jointSegments int Количество сегментов для скругления угловых стыков.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::miterLimit()

Возвращает порог скоса угловых стыков (miter limit).

Возвращает float: Координата или числовое значение с плавающей точкой..

RibbonLayer::miterLimit(float)

Устанавливает порог скоса угловых стыков (miter limit).

Параметр Тип Описание
miterLimit float Порог ограничения скоса угловых стыков (miter limit).

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::options()

Возвращает активные параметры генерации ленты.

Возвращает RibbonOptions: Активные параметры ленты RibbonOptions..

RibbonLayer::options(RibbonOptions)

Устанавливает параметры генерации ленты.

Параметр Тип Описание
options RibbonOptions Параметры ленты, управляющие отрисовкой и триангуляцией.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::path()

Возвращает неизменяемый список всех мировых точек вдоль пути ленты.

Возвращает List: Неизменяемый список точек пути в мировых координатах..

RibbonLayer::path(List)

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

Параметр Тип Описание
points List Список точек в мировых координатах, задающих путь ленты.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::render(WorldCanvas, DrawScope)

Отрисовывает меш ленты в область рисования холста.

Параметр Тип Описание
canvas WorldCanvas WorldCanvas, содержащий этот слой ленты.
draw DrawScope DrawScope для записи команд отрисовки меша ленты.

RibbonLayer::resetCacheStats()

Сбрасывает диагностическую статистику кэширования меша.

RibbonLayer::swapUv()

Возвращает true, если координаты текстуры U и V поменяны местами.

Возвращает boolean: True, если активно, включено или успешно..

RibbonLayer::swapUv(boolean)

Настраивает обмен осей текстуры U и V.

Параметр Тип Описание
swapUv boolean Менять ли местами оси текстуры U и V.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::texture()

Возвращает дескриптор текстуры ленты или null при сплошной цветной заливке.

Возвращает TextureHandle: Дескриптор текстуры..

RibbonLayer::texture(TextureHandle)

Устанавливает текстуру, применяемую к ленте.

Параметр Тип Описание
texture TextureHandle Дескриптор текстуры.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::textureLength()

Возвращает расстояние в мировых единицах для одного полного повтора тайла текстуры.

Возвращает float: Координата или числовое значение с плавающей точкой..

RibbonLayer::textureLength(float)

Устанавливает расстояние в мировых единицах для одного полного повтора тайла текстуры.

Параметр Тип Описание
textureLength float Расстояние в мировых единицах для одного полного повтора тайла текстуры.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::tint()

Возвращает изменяемый цвет тонирования вершин ленты.

Возвращает MutableColor: Экземпляр изменяемого цвета..

RibbonLayer::tint(ColorView)

Устанавливает цвет тонирования вершин ленты.

Параметр Тип Описание
tint ColorView Цвет тонирования.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..

RibbonLayer::width()

Возвращает ширину ленты в мировых единицах.

Возвращает float: Координата или числовое значение с плавающей точкой..

RibbonLayer::width(float)

Устанавливает ширину ленты в мировых единицах.

Параметр Тип Описание
width float Ширина.

Возвращает RibbonLayer: Текущий экземпляр для цепочки вызовов..