2016-05-12 10 views
1

Я хочу уменьшить толщину контура полигона, нарисованного с использованием CZML в цезие. Я попытался выполнить поиск, если в CZML есть какой-либо вариант для его достижения.Можно ли задать свойство outlineWidth для многоугольника, нарисованного с использованием CZML в цезие?

Я нашел this, но он предоставляет «outlineWidth» для метки и точки.

Есть ли способ отрегулировать толщину контура полигона?

Заранее спасибо.

ответ

1

К сожалению, это не работает так гладко, как можно было бы надеяться. Существует действительно свойство outlineWidth, которое может быть применено к многоугольнику в CZML, но, к сожалению, это просто сопоставляется с встроенным в WebGL lineWidth, который не гарантированно поддерживает любое значение, превышающее 1.0. В частности, проект ANGLE, который позволяет WebGL во многих браузерах Windows, имеет refused to support line widths greater than 1.0 на том основании, что спецификация не требует его.

цезий действительно предлагает систему Polylines in CZML, и эти полилинии использовать цезий-Конкретная реализация экрана пространства толстых линий, которые, как известно, работают во всех Цезий поддерживаемых систем, независимо от угла или максимум lineWidth ограничений.

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

+0

Я попытался установить «outlineWidth» равным 0,1 (максимально возможно 1) и надеялся увидеть более тонкий контур. Но он не работает и показывает схему с шириной по умолчанию. – meen

+0

Похоже, что минимум равен 1. Пользовательские линейные ширины не поддерживаются в ANGLE и не требуются спецификацией WebGL. Использование полилиний цезия - единственный обходной путь, который я знаю для этого. – emackey