Geometry3d.aip -

Raw 3D data from LiDAR, CAD files (STEP, STL), depth cameras, or NeRFs is normalized.
Example encoding:

Contains the version, endianness (little-endian for most modern systems), and a hash map of the "Geometry Tree" offset.

struct AIPHeader 
    char magic[4];           // "GDAI"
    uint32_t version;        // e.g., 0x00010002
    uint64_t vertex_offset;  // Byte position of vertex data
    uint64_t topology_offset;
    uint64_t attribute_offset;
    uint64_t graph_offset;   // The "secret sauce" - computational graph
;

geometry3d.aip can encode continuous implicit representations as weights of a Multi-Layer Perceptron (MLP). This allows AI to learn high-quality 3D shapes from 2D views alone. geometry3d.aip

The library defines several fundamental geometric objects:

| Class | Description | |-------|-------------| | Point | A point in 3D space (x, y, z) | | Vector | A direction vector | | Line | Infinite line defined by a point + direction | | LineSegment | Finite line between two points | | Plane | Infinite plane defined by a point + normal vector | | Triangle | Triangle defined by 3 points | | Sphere | Sphere defined by center + radius | | Box | Axis-aligned bounding box | | Ray | Half-line from a point in a direction | Raw 3D data from LiDAR, CAD files (STEP,

temperature = mesh.get_attribute('temperature') # Shape: (N,)

u, v = np.mgrid[0:2*np.pi:20j, 0:np.pi:10j] sphere = Sphere(Point(0,0,0), 1) x = sphere.center.x + sphere.radius * np.cos(u) * np.sin(v) y = sphere.center.y + sphere.radius * np.sin(u) * np.sin(v) z = sphere.center.z + sphere.radius * np.cos(v) ax.plot_wireframe(x, y, z, color='b', alpha=0.3) geometry3d

plt.show()

Note: Not all geometry3d versions include a visualization submodule. For custom shapes, use matplotlib’s 3D tools directly.

The preprocessed output is exposed as framework-specific tensors: