Лаги при рендеринге нескольких эллипсов с помощью Cesium

#javascript #reactjs #cesium

#javascript #reactjs #cesiumjs

Вопрос:

Я использую React JS с Resium для визуализации объектов-спутников как объектов. Они перемещаются с течением времени, поэтому их позиции устанавливаются с помощью SampledPositionProperty. Я хочу нарисовать круг под ними (на Земле). Проблема в том, что когда я рисую 200 спутников с эллипсами, частота кадров падает до 2 кадров в секунду. Как я могу оптимизировать рендеринг эллипсов?

 <Entity position={trajectory.getPosition /*Cesium.SampledPositionProperty*/} point={{ pixelSize: 10 }} >
    <EllipseGraphics semiMinorAxis={1000000} semiMajorAxis={1000000} height={0} />
</Entity>
  

Ответ №1:

Рассматривали ли вы возможность изменения numberOfVerticalLines на меньшее значение? Это действительно должно улучшить производительность вашего приложения

Что-то вроде:

 <Entity position={trajectory.getPosition /*Cesium.SampledPositionProperty*/} point={{ pixelSize: 10 }} >
    <EllipseGraphics semiMinorAxis={1000000} semiMajorAxis={1000000} height={0} numberOfVerticalLines = {10}/>
</Entity>