osmgl 0.1.0 → 0.2.0

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.d.cts CHANGED
@@ -1140,6 +1140,14 @@ interface SurfaceLayerSpec extends LayerBase {
1140
1140
  /** Ширина фаски по горизонтали, метры. 0 — резкий край. */
1141
1141
  bevel?: number;
1142
1142
  /** На сколько фаска опускается, метры. */
1143
+ /**
1144
+ * Насколько широкую щель между кусками СЛИТЬ, метры. По умолчанию — общее значение движка.
1145
+ *
1146
+ * Ноль нужен слоям, куски которых обязаны остаться порознь. Первый такой — зебра перехода: она
1147
+ * набрана отдельными полосами с промежутками около метра, и общая сварка слепила её в сплошную
1148
+ * белую плиту.
1149
+ */
1150
+ weld?: number;
1143
1151
  bevelDrop?: number;
1144
1152
  paint: MaterialPaint & {
1145
1153
  color: Interpolated<string>;
@@ -1350,6 +1358,7 @@ interface LayerPlan {
1350
1358
  elevation?: number;
1351
1359
  base?: number;
1352
1360
  bevel?: number;
1361
+ weld?: number;
1353
1362
  bevelDrop?: number;
1354
1363
  /**
1355
1364
  * Линия ложится НА ПОВЕРХНОСТЬ, по которой идёт (см. `generators/ground`).
@@ -4351,6 +4360,19 @@ interface RoundOptions {
4351
4360
  * получилась бы ступенька.
4352
4361
  */
4353
4362
  extent?: number;
4363
+ /**
4364
+ * Насколько дальше квадрата тайла проходит НАСТОЯЩИЙ разрез, единицы тайла.
4365
+ *
4366
+ * Замораживать надо ровно линию разреза, а не квадрат. Пока поверхности резались по квадрату,
4367
+ * это было одно и то же, но теперь они режутся с запасом (`cutMargin`), и геометрия законно живёт
4368
+ * за квадратом. Со старым определением одна и та же вершина у левого тайла оказывалась «за
4369
+ * границей» и не скруглялась, а у правого — внутри и срезалась: контуры расходились, и вдоль
4370
+ * стыка появлялся вырезанный уступ. Замечено на клине газона в центре Душанбе — обе соседние
4371
+ * зелёные области были срезаны по одной вертикали, ровно по границе тайла.
4372
+ *
4373
+ * Ноль — прежнее поведение: разрез идёт по квадрату (так режут здания и заливки).
4374
+ */
4375
+ margin?: number;
4354
4376
  /**
4355
4377
  * Вершины, которые скруглять НЕЛЬЗЯ (по индексу в кольце без замыкающей
4356
4378
  * точки). Ими помечают углы на общем ребре с соседним полигоном: скругление
@@ -4702,7 +4724,9 @@ interface LineMesh {
4702
4724
  }
4703
4725
  declare function generateLine(layer: VectorTileLayer, filter: Filter | undefined, maxSegment?: number,
4704
4726
  /** Уровни поверхностей тайла: по ним дорога ложится на то, по чему идёт. Нет — лежит на нуле. */
4705
- ground?: GroundField): LineMesh | null;
4727
+ ground?: GroundField,
4728
+ /** Метров в единице тайла. Ноль — плавный переход ширины на стыках не строится. */
4729
+ metersPerUnit?: number): LineMesh | null;
4706
4730
 
4707
4731
  /**
4708
4732
  * Положение камеры в адресе страницы.
@@ -4802,6 +4826,8 @@ interface SurfaceOptions {
4802
4826
  /** Ширина фаски по горизонтали, метры. 0 — резкий край. */
4803
4827
  bevel?: number;
4804
4828
  /** Насколько фаска опускается по высоте, метры. */
4829
+ /** Насколько широкую щель между кусками слить, метры. Пусто — SURFACE_WELD_METERS. */
4830
+ weld?: number;
4805
4831
  bevelDrop?: number;
4806
4832
  /** Скругление углов в плане, метры. */
4807
4833
  cornerRadius?: number;
package/dist/osmgl.d.ts CHANGED
@@ -1140,6 +1140,14 @@ interface SurfaceLayerSpec extends LayerBase {
1140
1140
  /** Ширина фаски по горизонтали, метры. 0 — резкий край. */
1141
1141
  bevel?: number;
1142
1142
  /** На сколько фаска опускается, метры. */
1143
+ /**
1144
+ * Насколько широкую щель между кусками СЛИТЬ, метры. По умолчанию — общее значение движка.
1145
+ *
1146
+ * Ноль нужен слоям, куски которых обязаны остаться порознь. Первый такой — зебра перехода: она
1147
+ * набрана отдельными полосами с промежутками около метра, и общая сварка слепила её в сплошную
1148
+ * белую плиту.
1149
+ */
1150
+ weld?: number;
1143
1151
  bevelDrop?: number;
1144
1152
  paint: MaterialPaint & {
1145
1153
  color: Interpolated<string>;
@@ -1350,6 +1358,7 @@ interface LayerPlan {
1350
1358
  elevation?: number;
1351
1359
  base?: number;
1352
1360
  bevel?: number;
1361
+ weld?: number;
1353
1362
  bevelDrop?: number;
1354
1363
  /**
1355
1364
  * Линия ложится НА ПОВЕРХНОСТЬ, по которой идёт (см. `generators/ground`).
@@ -4351,6 +4360,19 @@ interface RoundOptions {
4351
4360
  * получилась бы ступенька.
4352
4361
  */
4353
4362
  extent?: number;
4363
+ /**
4364
+ * Насколько дальше квадрата тайла проходит НАСТОЯЩИЙ разрез, единицы тайла.
4365
+ *
4366
+ * Замораживать надо ровно линию разреза, а не квадрат. Пока поверхности резались по квадрату,
4367
+ * это было одно и то же, но теперь они режутся с запасом (`cutMargin`), и геометрия законно живёт
4368
+ * за квадратом. Со старым определением одна и та же вершина у левого тайла оказывалась «за
4369
+ * границей» и не скруглялась, а у правого — внутри и срезалась: контуры расходились, и вдоль
4370
+ * стыка появлялся вырезанный уступ. Замечено на клине газона в центре Душанбе — обе соседние
4371
+ * зелёные области были срезаны по одной вертикали, ровно по границе тайла.
4372
+ *
4373
+ * Ноль — прежнее поведение: разрез идёт по квадрату (так режут здания и заливки).
4374
+ */
4375
+ margin?: number;
4354
4376
  /**
4355
4377
  * Вершины, которые скруглять НЕЛЬЗЯ (по индексу в кольце без замыкающей
4356
4378
  * точки). Ими помечают углы на общем ребре с соседним полигоном: скругление
@@ -4702,7 +4724,9 @@ interface LineMesh {
4702
4724
  }
4703
4725
  declare function generateLine(layer: VectorTileLayer, filter: Filter | undefined, maxSegment?: number,
4704
4726
  /** Уровни поверхностей тайла: по ним дорога ложится на то, по чему идёт. Нет — лежит на нуле. */
4705
- ground?: GroundField): LineMesh | null;
4727
+ ground?: GroundField,
4728
+ /** Метров в единице тайла. Ноль — плавный переход ширины на стыках не строится. */
4729
+ metersPerUnit?: number): LineMesh | null;
4706
4730
 
4707
4731
  /**
4708
4732
  * Положение камеры в адресе страницы.
@@ -4802,6 +4826,8 @@ interface SurfaceOptions {
4802
4826
  /** Ширина фаски по горизонтали, метры. 0 — резкий край. */
4803
4827
  bevel?: number;
4804
4828
  /** Насколько фаска опускается по высоте, метры. */
4829
+ /** Насколько широкую щель между кусками слить, метры. Пусто — SURFACE_WELD_METERS. */
4830
+ weld?: number;
4805
4831
  bevelDrop?: number;
4806
4832
  /** Скругление углов в плане, метры. */
4807
4833
  cornerRadius?: number;