Я пытаюсь создать и загрузить 3D-объекты в Цезий.
Мне нужно создать эти объекты программно (с помощью некоторого сервиса импорта-преобразования, используемой платформы .NET) из различных источников
У меня есть опыт сделать это в ТРИ.
Я читаю файл DXF, преобразую объекты в геометрии PostGIS, триангулирую (для создания поверхности из данных высот), создаю геометрию тесселяции и, наконец, строю
THREEJS-совместимая сцена (формат JSON, Gzipped, THREE.BufferGeometry используется). Это работает довольно хорошо: нет проблем с загрузкой тысяч треугольников / точек.
Иногда я использую веб-работников только для запроса и анализа JSON.
Кроме того, мне удалось без проблем загрузить довольно большой (40 МБ) geojson в мое клиентское приложение OpenLayers (Map и WebGLMap)
Но я не могу загрузить даже 20 Мб геоджонов (полилиний) в цезий (1.51.0)!
viewer.dataSources.add(Cesium.GeoJsonDataSource.load('data/geojson/test1.geojson'));
дает мне
An error occurred while rendering. Rendering has stopped.
RangeError: Array buffer allocation failed
RangeError: Array buffer allocation failed
at arrayBufferConstructor_DoNotInitialize (<anonymous>)
at new Float64Array (<anonymous>)
at Object.o.createTypedArray (http://localhost:9090/public/ThirdParty/Cesium/Workers/combineGeometry.js:227:18570)
at H (http://localhost:9090/public/ThirdParty/Cesium/Workers/combineGeometry.js:230:21640)
at j (http://localhost:9090/public/ThirdParty/Cesium/Workers/combineGeometry.js:230:22200)
at ne (http://localhost:9090/public/ThirdParty/Cesium/Workers/combineGeometry.js:230:30083)
at Object.ae.splitLongitude (http://localhost:9090/public/ThirdParty/Cesium/Workers/combineGeometry.js:231:7036)
at v (http://localhost:9090/public/ThirdParty/Cesium/Workers/combineGeometry.js:231:10398)
at Object.M.combineGeometry (http://localhost:9090/public/ThirdParty/Cesium/Workers/combineGeometry.js:231:13298)
at r (http://localhost:9090/public/ThirdParty/Cesium/Workers/combineGeometry.js:231:18552)
Почему это?
Что я могу сделать? Плитки GLTF / GLB / 3D - довольно сложные форматы Не существует богатого набора инструментов для настройки / управления созданием объектов с использованием этих форматов.
Я не хочу покупать супер-пупер (действительно) сервер FME для создания GLTF ...
Может быть, я могу использовать czml для загрузки сложных геометрий, используя полилинии и т. Д.)?