Package intrinsic_proto.geometry.v1
Message
AxisAlignedBoundingBox
Message
AxisAlignedBoundingBox2
Message
AxisAlignedBoundingBox3
Message
MortonToPrimitiveEntry
Message
TransformedPrimitiveShape
Messages
message AxisAlignedBoundingBox intrinsic/geometry/proto/v1/axis_aligned_bounding_box.proto
Generic bounding box for the n-dimensional case. For 2D and 3D, use specialized types (see below). Note that the number of dimensions is only implicitly encoded in the length of min_points and max_points (when set). However, we also consider a bounding box valid when min_points and max_points are empty (this corresponds then to an empty bounding box).
| Field | Type | Description | |
|---|---|---|---|
| 1 | min_points |
repeated
double
|
|
| 2 | max_points |
repeated
double
|
message AxisAlignedBoundingBox2 intrinsic/geometry/proto/v1/axis_aligned_bounding_box.proto
Bounding box for 2D.
| Field | Type | Description | |
|---|---|---|---|
| 1 | min |
intrinsic_proto.Vector2
|
|
| 2 | max |
intrinsic_proto.Vector2
|
message AxisAlignedBoundingBox3 intrinsic/geometry/proto/v1/axis_aligned_bounding_box.proto
Bounding box for 3D.
| Field | Type | Description | |
|---|---|---|---|
| 1 | min |
intrinsic_proto.Vector3
|
|
| 2 | max |
intrinsic_proto.Vector3
|
message Box intrinsic/geometry/proto/v1/primitives.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | size |
intrinsic_proto.Vector3
|
message Capsule intrinsic/geometry/proto/v1/primitives.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | length |
double
|
|
| 2 | radius |
double
|
message Cylinder intrinsic/geometry/proto/v1/primitives.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | length |
double
|
|
| 2 | radius |
double
|
message Ellipsoid intrinsic/geometry/proto/v1/primitives.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | radii |
intrinsic_proto.Vector3
|
message ExactGeometry intrinsic/geometry/proto/v1/exact_geometry.proto
Computational geometry representation of Geometry.
| Field | Type | Description | |
|---|---|---|---|
| 4 | octree_wrapping |
optional
intrinsic_proto.geometry.v1.OctreeWrapping
|
An optional Octree based wrapping that segments the raw data into an octree |
| 5 | options |
intrinsic_proto.geometry.v1.GeometryOptions
|
Runtime options for this geometry. |
|
oneof data
|
|||
| 1 | primitive_set |
intrinsic_proto.geometry.v1.TransformedPrimitiveShapeSet
|
|
| 2 | triangle_mesh |
intrinsic_proto.geometry.v1.TriangleMesh
|
The mesh representation of this Geometry. |
message Frustum intrinsic/geometry/proto/v1/primitives.proto
A pyramid frustum extending in the +z direction with its tip at the origin
| Field | Type | Description | |
|---|---|---|---|
| 1 | x_angle |
double
|
The angle in radians between the x-z plane and two the frustum planes that intersect the x-axis |
| 2 | y_angle |
double
|
The angle in radians between the y-z plane and the frustum planes that intersect the y-axis. |
| 3 | min_z_distance |
double
|
Distance in meters from the origin to the frustum cut plane near the tip |
| 4 | max_z_distance |
double
|
Distance in meters from the origin to the frustum base plane |
message GeometricTransform intrinsic/geometry/proto/v1/geometric_transform.proto
A proto representation of a geometric transform. It allows for both an affine matrix representation and a Translation/Rotation/Scale representation.
| Field | Type | Description | |
|---|---|---|---|
|
oneof data
|
|||
| 1 | matrix4d |
intrinsic_proto.Matrixd
|
A 4x4 affine transform matrix |
message Geometry intrinsic/geometry/proto/v1/geometry.proto
A single piece of geometry represented as a reference to a stored geometry proto or as the inlined geometry proto itself.
| Field | Type | Description | |
|---|---|---|---|
| 4 | material_overrides |
optional
intrinsic_proto.geometry.v1.MaterialProperties
|
Overrides to apply to the renderable. |
| 5 | provenance |
intrinsic_proto.geometry.v1.GeometryProvenance
|
The previous version of this geometry data if one existed. |
|
oneof data
|
|||
| 2 | geo_ref |
intrinsic_proto.geometry.v1.GeometryStorageRefs
|
|
| 3 | inline_geometry_data |
intrinsic_proto.geometry.v1.InlineGeometry
|
|
message GeometryOptions intrinsic/geometry/proto/v1/geometry_options.proto
Runtime options for a Geometry.
| Field | Type | Description | |
|---|---|---|---|
| 1 | fill_inside_for_distance_queries |
optional
bool
|
If set, the octree will be filled on the inside when constructing the octree for distance queries. This is only used when generating new octree wrappings from an existing mesh or point cloud. This is not used when loading a pre-existing octree wrapping like the one stored in the ExactGeometry proto. |
message GeometryProvenance intrinsic/geometry/proto/v1/geometry.proto
Information about a previous version of a geometry. Importantly this does not include the ref_t_shape from a transformed geometry in the history.
| Field | Type | Description | |
|---|---|---|---|
| 1 | human_readable_update_reason |
string
|
Use as a descriptor for what operation was performed to update the geometry from oneof data. |
|
oneof data
|
|||
| 2 | geometry_data_uri |
string
|
A reference to the stored geometry proto e.g. a CAS URI that represents the previous version of this geometry. Encoded as intrinsic_proto.geometry.v1.Geometry instance. |
| 3 | geometry_data |
intrinsic_proto.geometry.v1.Geometry
|
The actual data for the previous version of this geometry. |
message GeometryStorageRefs intrinsic/geometry/proto/v1/geometry_storage_refs.proto
GeometryStorageRefs is intended to be an opaque container of references to storage objects e.g. CAS URIs. The constituent fields provide no guarantees of uniqueness. Can be used to recreate an intrinsic_proto.geometry.v1.InlineGeometry instance
| Field | Type | Description | |
|---|---|---|---|
| 1 | exact_geometry_ref |
string
|
A reference to the stored geometry proto e.g. a CAS URI. Encoded as intrinsic_proto.geometry.v1.ExactGeometry instance. |
| 2 | renderable_ref |
string
|
A reference to the stored renderable proto e.g. a CAS URI. Encoded as intrinsic_proto.geometry.v1.Renderable instance. |
| 3 | keep_renderable |
bool
|
Whether the to keep the renderable because it was user provided as opposed to being auto generated by the system. |
message InlineGeometry intrinsic/geometry/proto/v1/inline_geometry.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | exact_geometry |
intrinsic_proto.geometry.v1.ExactGeometry
|
The computational geometry representation. |
|
oneof renderable_type
|
|||
| 2 | renderable |
intrinsic_proto.geometry.v1.Renderable
|
If renderable is specified then this proto contains a unique (user provided) renderable that should be maintained. |
| 3 | generated_renderable |
intrinsic_proto.geometry.v1.Renderable
|
If generated_renderable is specified then this proto contains a cached generated renderable and does not have to be maintained. |
message MaterialProperties intrinsic/geometry/proto/v1/material.proto
Material properties that can be applied to a geometry.
| Field | Type | Description | |
|---|---|---|---|
| 1 | base_color |
optional
google.type.Color
|
Base Color controls non-reflective surface detail for non-metallic surfaces. Defaults to Gray50(R=0.5,G=0.5,B=0.5) if not specified. |
| 2 | metalness |
optional
double
|
Metalness controls how the surface reflects light, either as raw metal or as a non-metallic (dielectric) surface. At full metalness, the surface is fully reflective and the base color controls the reflection strength and color. At zero metalness, the surface is fully reflective only at grazing angles, and the base color has no effect on specular reflection. Metalness is in the range [0, 1]. Defaults to 1.0 if not specified. |
| 3 | roughness |
optional
double
|
Roughness defines micro-surface bumpiness, which essentially controls how blurry or sharp reflections will be. Roughness is in the range [0, 1]. Defaults to 1.0 if not specified. |
| 4 | transmission |
optional
double
|
Transmission is used to describe the percentage of light that is transmitted through the surface of the material and handles infinitely thin volumes (e.g. stain or transparent foil). This effect, as opposed to alpha coverage, more accurately represents refractive materials like glass and water, which also show visible reflections. Transmission is in the range [0, 1]. Defaults to 0.0 if not specified. |
message MortonToPrimitiveEntry (Nested in intrinsic_proto.geometry.v1.OctreeWrapping ) intrinsic/geometry/proto/v1/octree_wrapping.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | code |
uint64
|
|
| 2 | primitives |
repeated
int32
|
message Octree intrinsic/geometry/proto/v1/octree.proto
Octree representation.
| Field | Type | Description | |
|---|---|---|---|
| 2 | is_child_k_leaf |
bytes
|
|
| 3 | has_child_k |
bytes
|
|
| 4 | morton_list |
repeated
uint64
|
|
| 6 | workspace_bounding_box |
intrinsic_proto.geometry.v1.AxisAlignedBoundingBox3
|
|
| 7 | max_depth |
uint32
|
message OctreeWrapping intrinsic/geometry/proto/v1/octree_wrapping.proto
Wrapping context for describing how a octree wraps a mesh. This data structure contains both the octree and the associations between octree voxels and the primitives contained in the corresponding mesh.
| Field | Type | Description | |
|---|---|---|---|
| 1 | octree |
intrinsic_proto.geometry.v1.Octree
|
The octree structure. |
| 3 | morton_to_primitives |
repeated
intrinsic_proto.geometry.v1.OctreeWrapping.MortonToPrimitiveEntry
|
The associations between the voxels and the primitives in the mesh. |
message PrimitiveShape intrinsic/geometry/proto/v1/primitive_shape.proto
A primitives based representation of a geometric shape.
| Field | Type | Description | |
|---|---|---|---|
|
oneof shape
|
|||
| 1 | box |
intrinsic_proto.geometry.v1.Box
|
|
| 2 | capsule |
intrinsic_proto.geometry.v1.Capsule
|
|
| 3 | cylinder |
intrinsic_proto.geometry.v1.Cylinder
|
|
| 4 | ellipsoid |
intrinsic_proto.geometry.v1.Ellipsoid
|
|
| 5 | frustum |
intrinsic_proto.geometry.v1.Frustum
|
|
| 6 | sphere |
intrinsic_proto.geometry.v1.Sphere
|
|
message Renderable intrinsic/geometry/proto/v1/renderable.proto
Renderable representation of Geometry.
| Field | Type | Description | |
|---|---|---|---|
| 1 | glb_bytes |
bytes
|
GLB representation of a geometric shape. May have gone through a lossy process to be generated. |
message TransformedGeometry intrinsic/geometry/proto/v1/transformed_geometry.proto
| Field | Type | Description | |
|---|---|---|---|
| 1 | geometry |
intrinsic_proto.geometry.v1.Geometry
|
The geometric data for the shape. |
| 2 | ref_t_shape |
intrinsic_proto.geometry.v1.GeometricTransform
|
The geometric transform from the reference frame to the shape. |
message TransformedPrimitiveShape intrinsic/geometry/proto/v1/transformed_primitive_shape.proto
A transformed primitive shape.
| Field | Type | Description | |
|---|---|---|---|
| 1 | shape |
intrinsic_proto.geometry.v1.PrimitiveShape
|
The geometric data for the shape. |
| 2 | ref_t_shape |
intrinsic_proto.geometry.v1.GeometricTransform
|
The geometric transform from the reference frame to the shape. |
message TransformedPrimitiveShapeSet intrinsic/geometry/proto/v1/transformed_primitive_shape_set.proto
A set of transformed primitive shapes, which are used to represent a geometry.
| Field | Type | Description | |
|---|---|---|---|
| 1 | primitives |
repeated
intrinsic_proto.geometry.v1.TransformedPrimitiveShape
|
message TriangleMesh intrinsic/geometry/proto/v1/triangle_mesh.proto
Represents a triangle mesh with faces and vertices specified within. The expectation is three dimensional vertices and triangles for the faces. Specified in row major order.
| Field | Type | Description | |
|---|---|---|---|
| 3 | vertices |
repeated
double
|
The vertices as a flat array, in row major order. Example ordering: x1, y1, z1, x2, y2, z2. This produces vertices like v1=(x1, y1, z1) and v2=(x2,y2,z2) |
| 6 | faces |
repeated
int32
|
The faces as a flat array, in row major order. Example ordering: v1, v2, v3, v4, v5, v6. This produces faces like f1=(v1, v2, v3) and f2=(v4, v5, v6). Where v1-v6 are indexes into the parsed set of vertices produced from the vertices field. |