Uploading 3D models from Blender and QGIS

Hi!

I’m trying to create 3D tiles of extruded building footprints that I’ve created with Blender (I’ve also tried using QGIS). When exporting a GLB/GLBK and uploading, the tileset gets created but Cesium isn’t able to place it and I enter the workflow for locating the features. Ideally I’d love it if Cs could just automatically place it, but if that’s not possible, how can I go about setting the position in terms of latitude and longitude? I’ve tried entering the centroid of all of the building centroids, as well as the minimum/maximums of boundaries of the polygons as well but can’t seem to get it right.

I’ve attached the .gltf that I’d like to upload, along with the zipped shapefile of the building footprints that I’m extruding. Any insights into how Cs is using the latitude and longitude to place the uploaded data would be very helpful.

footprints.gltf (2.7 MB)
buildings_with_minheight_1k.zip (166.5 KB)

Hi @patwards, welcome to the forum! After tiling in ion, you can place the tileset at a particular longitude and latitude using CesiumJS like this:

// longitude = -75.51403102446658
// latitude = 39.981221523083704
var cartesian = Cesium.Cartesian3.fromDegrees(-75.51403102446658, 39.981221523083704);
var modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(cartesian);

var tileset = viewer.scene.primitives.add(
  new Cesium.Cesium3DTileset({
    url: Cesium.IonResource.fromAssetId(<ion-asset-id>),
    modelMatrix: modelMatrix
  })
);

viewer.zoomTo(tileset);

Let me know if that helps!

I would also suggest you take a look at this page, since it may be relevant to your use case: Create 3D Tiles from KML/COLLADA with Per-Building Data – Cesium