Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prepare release 0.4.3 #152

Merged
merged 5 commits into from
Sep 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
Change Log
==========

### 0.4.3 - 2024-09-14

- Fixed the handling of legacy B3DM files that contain glTF 1.0 data with texture coordinates that are stored as "quantized" 3D coordinates, via [#148](https://github.com/CesiumGS/3d-tiles-tools/pull/148)
- Fixed the `upgrade` command for `targetVersion 1.1` for the case that the input data contains very old B3DM files that do not define a `BATCHID` attribute, via [#147](https://github.com/CesiumGS/3d-tiles-tools/pull/147).
- Added a `mergeJson` command to create a tileset JSON that refers to other tilesets as external tilesets, without copying the input tilesets to the output directory, via [#140](https://github.com/CesiumGS/3d-tiles-tools/pull/140) and [#143](https://github.com/CesiumGS/3d-tiles-tools/pull/143).
- Fixed a bug where the `combine` command did not properly update the content URIs when an external tileset in a subdirectory referred to another external tileset in the same subdirectory, via [#139](https://github.com/CesiumGS/3d-tiles-tools/pull/139)
- Added an `updateAlignment` command that can process a B3DM, I3DM, PNGS, or CMPT file, to ensure that the alignment requirements for the batch- and feature table and the tile data as a whole are met, via [#136](https://github.com/CesiumGS/3d-tiles-tools/pull/136)

### 0.4.2 - 2024-05-15

- When upgrading a tileset to version 1.1, then the `upgrade` command did not yet convert CMPT files into GLB. This functionality was now added via [#117](https://github.com/CesiumGS/3d-tiles-tools/pull/117), including an attempt to merge multiple GLB files that contain the Cesium glTF metadata extensions. Details of the merge process are not yet specified, but should cover the most common cases that appear during the conversion of CMPT files.
Expand Down
11 changes: 11 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,17 @@ Example:
npx 3d-tiles-tools merge -i ./specs/data/mergeTilesets/TilesetA -i ./specs/data/mergeTilesets/sub/TilesetA -o ./specs/data/mergeTilesets/output
```

#### mergeJson

Merge multiple tilesets into a single tileset JSON file that refers to the input tilesets as external tilesets.

This differs from the `merge` command insofar that it does not copy the input tilesets to the output directory, but only creates the JSON file for the merged tileset, which uses relative paths to refer to the input tilesets. A common use case for this is to create a tileset JSON file in a certain directory, with the input tilesets being located in subdirectories.

Example:
```
npx 3d-tiles-tools mergeJson -i ./example/TilesetA/tileset.json -i ./example/TilesetB/tileset.json -o ./example/mergedTileset.json
```

#### upgrade

Upgrade a tileset to the latest 3D Tiles version.
Expand Down
2 changes: 1 addition & 1 deletion ThirdParty.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
"license": [
"Apache-2.0"
],
"version": "1.117.0",
"version": "1.121.1",
"url": "https://www.npmjs.com/package/cesium"
},
{
Expand Down
6 changes: 5 additions & 1 deletion etc/3d-tiles-tools.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -580,6 +580,7 @@ export class ContentOps {
static i3dmToGlbBuffer(inputBuffer: Buffer): Buffer;
static optimizeB3dmBuffer(inputBuffer: Buffer, options: any): Promise<Buffer>;
static optimizeI3dmBuffer(inputBuffer: Buffer, options: any): Promise<Buffer>;
static updateAlignment(inputBuffer: Buffer): Buffer;
}

// @internal
Expand Down Expand Up @@ -2791,6 +2792,7 @@ export class TilesetJsonCreator {
export class TilesetMerger {
constructor();
merge(tilesetSourceNames: string[], tilesetTargetName: string, overwrite: boolean): Promise<void>;
mergeJson(tilesetSourceNames: string[], tilesetTargetName: string, overwrite: boolean): Promise<void>;
}

// @internal
Expand All @@ -2803,6 +2805,7 @@ export class TilesetObjectUpgrader {
export class TilesetOperations {
static combine(tilesetSourceName: string, tilesetTargetName: string, overwrite: boolean): Promise<void>;
static merge(tilesetSourceNames: string[], tilesetTargetName: string, overwrite: boolean): Promise<void>;
static mergeJson(tilesetSourceNames: string[], tilesetTargetName: string, overwrite: boolean): Promise<void>;
static upgrade(tilesetSourceName: string, tilesetTargetName: string, overwrite: boolean, targetVersion: string, gltfUpgradeOptions: any): Promise<void>;
static upgradeTileset(tileset: Tileset, targetVersion: string): Promise<void>;
}
Expand Down Expand Up @@ -2855,6 +2858,7 @@ export class TilesetProcessorContexts {
// @internal
export class Tilesets {
static areEqualPackages(tilesetPackageName0: string, tilesetPackageName1: string): boolean;
static determineTilesetDirectoryName(tilesetName: string): string;
static determineTilesetJsonFileName(tilesetDataName: string): string;
}

Expand Down Expand Up @@ -3056,7 +3060,7 @@ export class TileTableDataPnts {

// @internal
export class TileTableDataToMeshFeatures {
static convertBatchIdToMeshFeatures(document: Document, primitive: Primitive, batchIdToFeatureIdAccessor: Map<Accessor, Accessor>): MeshFeaturesFeatureId;
static convertBatchIdToMeshFeatures(document: Document, primitive: Primitive, batchIdToFeatureIdAccessor: Map<Accessor, Accessor>): MeshFeaturesFeatureId | undefined;
}

// @internal
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "3d-tiles-tools",
"version": "0.4.2",
"version": "0.4.3",
"license": "Apache-2.0",
"description": "3D Tiles tools",
"author": {
Expand Down
Loading