osmgl 0.9.0 → 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/osmgl.cjs +4 -4
- package/dist/osmgl.cjs.map +1 -1
- package/dist/osmgl.d.cts +38 -6
- package/dist/osmgl.d.ts +38 -6
- package/dist/osmgl.global.js +5 -5
- package/dist/osmgl.js +4 -4
- package/dist/osmgl.js.map +1 -1
- package/package.json +1 -1
package/dist/osmgl.d.cts
CHANGED
|
@@ -1367,16 +1367,27 @@ interface ModelLayerSpec {
|
|
|
1367
1367
|
/** Прятать здание, которое модель заменяет (`replaces` + `anchor: replace`). */
|
|
1368
1368
|
maskReplaced?: boolean;
|
|
1369
1369
|
/**
|
|
1370
|
-
*
|
|
1370
|
+
* Полная геометрия (lod0) с самого нижнего зума, без упрощённой ступени.
|
|
1371
1371
|
*
|
|
1372
|
-
* По умолчанию у порога показа объект получает
|
|
1373
|
-
*
|
|
1374
|
-
*
|
|
1372
|
+
* По умолчанию у порога показа объект получает lod1 и «дорисовывается» до lod0 только через
|
|
1373
|
+
* два зума. На общем плане это незаметно, но если карта показывает объект как достопримечательность,
|
|
1374
|
+
* читается браком: сначала огрублённый силуэт, потом подмена.
|
|
1375
1375
|
*
|
|
1376
|
-
*
|
|
1377
|
-
*
|
|
1376
|
+
* Число объектов флаг НЕ трогает — за него отвечает `fullBudget`. Разделены они не для порядка:
|
|
1377
|
+
* замер на боевой карте (Душанбе, z15.2, окно 1551×1346, наклон 55°) показал, что кадр сажает
|
|
1378
|
+
* именно количество, а не подробность — со снятыми обеими поблажками медиана кадра при панораме
|
|
1379
|
+
* была 30–38 мс против 17 мс на z17.8.
|
|
1378
1380
|
*/
|
|
1379
1381
|
fullDetail?: boolean;
|
|
1382
|
+
/**
|
|
1383
|
+
* Полный бюджет моделей с нижнего зума.
|
|
1384
|
+
*
|
|
1385
|
+
* По умолчанию на пороге показа берётся четверть бюджета, и дальше он плавно растёт до полного
|
|
1386
|
+
* за три зума: на общем плане объект занимает считанные пиксели, и сотня таких объектов стоит
|
|
1387
|
+
* кадра и трафика, ничего не добавляя глазу. Включать на широком экране с осторожностью —
|
|
1388
|
+
* модели дают около 84 % треугольников кадра.
|
|
1389
|
+
*/
|
|
1390
|
+
fullBudget?: boolean;
|
|
1380
1391
|
};
|
|
1381
1392
|
}
|
|
1382
1393
|
type StyleLayerSpec = FillLayerSpec | LineLayerSpec | FillExtrusionLayerSpec | SurfaceLayerSpec | SymbolLayerSpec | RasterLayerSpec;
|
|
@@ -3896,6 +3907,27 @@ declare class LayerRenderer {
|
|
|
3896
3907
|
/** Разобранные поверхности без заменённых фигур. Сбрасывается вместе с `hiddenCut`. */
|
|
3897
3908
|
private surfaceCut;
|
|
3898
3909
|
private bucketIds;
|
|
3910
|
+
/**
|
|
3911
|
+
* Собрать дома, разрезанные границей тайла. Зовётся В НАЧАЛЕ КАДРА — и это принципиально.
|
|
3912
|
+
*
|
|
3913
|
+
* Сборка стояла внутри прохода зданий, а раскладка «что прятать в каком тайле»
|
|
3914
|
+
* (`syncHiddenStamp`) считается раньше. В одном и том же кадре резка шла, значит, по ПРОШЛОЙ
|
|
3915
|
+
* сборке. Пока состав кусков не менялся, разницы не было, но при движении карты тайлы приезжают
|
|
3916
|
+
* и вытесняются постоянно, и кадр получал одно из двух:
|
|
3917
|
+
*
|
|
3918
|
+
* · дом перестал собираться — куски по прошлой раскладке ещё спрятаны, а замены уже нет: на
|
|
3919
|
+
* месте дома ДЫРА, обрезанная ровно по границам тайлов;
|
|
3920
|
+
* · дом начал собираться — замена нарисована, а куски по прошлой раскладке ещё не спрятаны:
|
|
3921
|
+
* две геометрии в одном месте.
|
|
3922
|
+
*
|
|
3923
|
+
* И то и другое живёт один кадр, поэтому и выглядело как «иногда при движении». Теперь сборка и
|
|
3924
|
+
* раскладка считаются в одном порядке, и кадр видит согласованное состояние.
|
|
3925
|
+
*
|
|
3926
|
+
* Слой берём ПЕРВЫЙ подходящий: сборщик один на карту, ключ бакета у него один. Второй объёмный
|
|
3927
|
+
* слой на базовом источнике сборку бы перетирал — но такого в наших стилях нет, а появится —
|
|
3928
|
+
* сломается заметно, а не тихо.
|
|
3929
|
+
*/
|
|
3930
|
+
private syncSeams;
|
|
3899
3931
|
/**
|
|
3900
3932
|
* Что заменено 3D-моделями. Для заливок и линий — единственный набор, который к ним применим.
|
|
3901
3933
|
*
|
package/dist/osmgl.d.ts
CHANGED
|
@@ -1367,16 +1367,27 @@ interface ModelLayerSpec {
|
|
|
1367
1367
|
/** Прятать здание, которое модель заменяет (`replaces` + `anchor: replace`). */
|
|
1368
1368
|
maskReplaced?: boolean;
|
|
1369
1369
|
/**
|
|
1370
|
-
*
|
|
1370
|
+
* Полная геометрия (lod0) с самого нижнего зума, без упрощённой ступени.
|
|
1371
1371
|
*
|
|
1372
|
-
* По умолчанию у порога показа объект получает
|
|
1373
|
-
*
|
|
1374
|
-
*
|
|
1372
|
+
* По умолчанию у порога показа объект получает lod1 и «дорисовывается» до lod0 только через
|
|
1373
|
+
* два зума. На общем плане это незаметно, но если карта показывает объект как достопримечательность,
|
|
1374
|
+
* читается браком: сначала огрублённый силуэт, потом подмена.
|
|
1375
1375
|
*
|
|
1376
|
-
*
|
|
1377
|
-
*
|
|
1376
|
+
* Число объектов флаг НЕ трогает — за него отвечает `fullBudget`. Разделены они не для порядка:
|
|
1377
|
+
* замер на боевой карте (Душанбе, z15.2, окно 1551×1346, наклон 55°) показал, что кадр сажает
|
|
1378
|
+
* именно количество, а не подробность — со снятыми обеими поблажками медиана кадра при панораме
|
|
1379
|
+
* была 30–38 мс против 17 мс на z17.8.
|
|
1378
1380
|
*/
|
|
1379
1381
|
fullDetail?: boolean;
|
|
1382
|
+
/**
|
|
1383
|
+
* Полный бюджет моделей с нижнего зума.
|
|
1384
|
+
*
|
|
1385
|
+
* По умолчанию на пороге показа берётся четверть бюджета, и дальше он плавно растёт до полного
|
|
1386
|
+
* за три зума: на общем плане объект занимает считанные пиксели, и сотня таких объектов стоит
|
|
1387
|
+
* кадра и трафика, ничего не добавляя глазу. Включать на широком экране с осторожностью —
|
|
1388
|
+
* модели дают около 84 % треугольников кадра.
|
|
1389
|
+
*/
|
|
1390
|
+
fullBudget?: boolean;
|
|
1380
1391
|
};
|
|
1381
1392
|
}
|
|
1382
1393
|
type StyleLayerSpec = FillLayerSpec | LineLayerSpec | FillExtrusionLayerSpec | SurfaceLayerSpec | SymbolLayerSpec | RasterLayerSpec;
|
|
@@ -3896,6 +3907,27 @@ declare class LayerRenderer {
|
|
|
3896
3907
|
/** Разобранные поверхности без заменённых фигур. Сбрасывается вместе с `hiddenCut`. */
|
|
3897
3908
|
private surfaceCut;
|
|
3898
3909
|
private bucketIds;
|
|
3910
|
+
/**
|
|
3911
|
+
* Собрать дома, разрезанные границей тайла. Зовётся В НАЧАЛЕ КАДРА — и это принципиально.
|
|
3912
|
+
*
|
|
3913
|
+
* Сборка стояла внутри прохода зданий, а раскладка «что прятать в каком тайле»
|
|
3914
|
+
* (`syncHiddenStamp`) считается раньше. В одном и том же кадре резка шла, значит, по ПРОШЛОЙ
|
|
3915
|
+
* сборке. Пока состав кусков не менялся, разницы не было, но при движении карты тайлы приезжают
|
|
3916
|
+
* и вытесняются постоянно, и кадр получал одно из двух:
|
|
3917
|
+
*
|
|
3918
|
+
* · дом перестал собираться — куски по прошлой раскладке ещё спрятаны, а замены уже нет: на
|
|
3919
|
+
* месте дома ДЫРА, обрезанная ровно по границам тайлов;
|
|
3920
|
+
* · дом начал собираться — замена нарисована, а куски по прошлой раскладке ещё не спрятаны:
|
|
3921
|
+
* две геометрии в одном месте.
|
|
3922
|
+
*
|
|
3923
|
+
* И то и другое живёт один кадр, поэтому и выглядело как «иногда при движении». Теперь сборка и
|
|
3924
|
+
* раскладка считаются в одном порядке, и кадр видит согласованное состояние.
|
|
3925
|
+
*
|
|
3926
|
+
* Слой берём ПЕРВЫЙ подходящий: сборщик один на карту, ключ бакета у него один. Второй объёмный
|
|
3927
|
+
* слой на базовом источнике сборку бы перетирал — но такого в наших стилях нет, а появится —
|
|
3928
|
+
* сломается заметно, а не тихо.
|
|
3929
|
+
*/
|
|
3930
|
+
private syncSeams;
|
|
3899
3931
|
/**
|
|
3900
3932
|
* Что заменено 3D-моделями. Для заливок и линий — единственный набор, который к ним применим.
|
|
3901
3933
|
*
|