3d data: volumetric, mechanical, point clouds, meshes
Goals
- understand core libraries and formats for handling web-based 3d data
- understand wofkwlos for generating and manipulating 3d content
- become familiar with core generative models for 3D
- be capable of working with 2.5 and 3d datasets productively
- be capable of developing 3d-based AI apps
Types
- DEMs - digital elevation maps
- 2.5D information encoded in an image
- Appears as black and white, but the blackness or color value indicates height or other information
- Usually represents topgoraphy, bathymetry and terrain
- Point cloud data
- list of x,y,z coordinates usually from scanned 3D - lidar or phogrammetry
- usually enormous and requires compression
- requires point cloud viewers like MeshLab
- Mesh
- derived fro point clouds, connecting those points with triangles
- sometimes with image textures, respresenting 3D surfaces and solids
Lecture
- Image whose raster values represent height, 2.5D terrain information, similar to a "depth field"
- On 3D scenes: consturction, camera, scene
- Three.js allows you to quickly implement
- Industry standard Javascript library
- Generate solid and meshes
- Includes simple built-in navigation
- Includes importers for key file formats
- How to do it
- import three, set up camera and scene, set renderer and add to page (DOM), create new ceomgetry, animate rotation
- formats
- gITF / GLB - fast, web native, low overhead
- OBJ / MTL - industry-standard format
- FBX (FBXLoader) - includes animation data
- STL (STLLoader) - raw mesh file
- old mesh format, from the 70s
- file type: ASCII or binary
- Rhino3D (via rhino3dm.js) - common CAD format
- on point clouds
- waymo open dataset with point clouds of scenes encountered during driving situations; for autonomous navigation
liner notes
- are there point cloud info from martian terrain?
- webapp that makes 3d models of animals for planet zoo 2 modding rigs