ArStreetscapeGeometry

ARCore Geospatial Streetscape Geometry APIs.

See the Streetscape Geometry Developer Guide for additional information.

Summary

Enumerations

ArStreetscapeGeometryQuality{
  AR_STREETSCAPE_GEOMETRY_QUALITY_NONE = 0,
  AR_STREETSCAPE_GEOMETRY_QUALITY_BUILDING_LOD_1 = 1,
  AR_STREETSCAPE_GEOMETRY_QUALITY_BUILDING_LOD_2 = 2
}
enum
Describes the quality of the mesh data.
ArStreetscapeGeometryType{
  AR_STREETSCAPE_GEOMETRY_TYPE_TERRAIN = 0,
  AR_STREETSCAPE_GEOMETRY_TYPE_BUILDING = 1
}
enum
Describes the type of a Streetscape Geometry.

Typedefs

ArStreetscapeGeometry typedef
struct ArStreetscapeGeometry_
A Streetscape Geometry trackable (reference type,long-lived").

Functions

ArStreetscapeGeometry_acquireMesh(const ArSession *session, const ArStreetscapeGeometry *streetscape_geometry, ArMesh **out_mesh)
void
Acquires a polygon ArMesh that corresponds to this geometry.
ArStreetscapeGeometry_getMeshPose(const ArSession *session, const ArStreetscapeGeometry *streetscape_geometry, ArPose *out_pose)
void
Gets the origin pose of the streetscape_geometry.
ArStreetscapeGeometry_getQuality(const ArSession *session, const ArStreetscapeGeometry *streetscape_geometry, ArStreetscapeGeometryQuality *out_quality)
void
Gets the ArStreetscapeGeometryQuality corresponding to this geometry.
ArStreetscapeGeometry_getType(const ArSession *session, const ArStreetscapeGeometry *streetscape_geometry, ArStreetscapeGeometryType *out_type)
void
Gets the ArStreetscapeGeometryType corresponding to this geometry.

Enumerations

ArStreetscapeGeometryQuality

 ArStreetscapeGeometryQuality

Describes the quality of the mesh data.

The values correspond to the levels of detail (LOD) defined by the CityGML 2.0 standard.

Obtained by ArStreetscapeGeometry_getQuality.

Properties
AR_STREETSCAPE_GEOMETRY_QUALITY_BUILDING_LOD_1

The AR_STREETSCAPE_GEOMETRY_TYPE_BUILDING geometry is the building footprint extruded up to a single flat top.

The building contains empty space above any angled roofs.

AR_STREETSCAPE_GEOMETRY_QUALITY_BUILDING_LOD_2

The AR_STREETSCAPE_GEOMETRY_TYPE_BUILDING geometry is the building footprint with rough heightmap.

The geometry will closely follow simple angled roofs. Chimneys and roof vents on top of roofs will poke outside of the Streetscape Geometry.

AR_STREETSCAPE_GEOMETRY_QUALITY_NONE

The quality of the geometry is not defined, e.g.

when the ArStreetscapeGeometryType is AR_STREETSCAPE_GEOMETRY_TYPE_TERRAIN.

ArStreetscapeGeometryType

 ArStreetscapeGeometryType

Describes the type of a Streetscape Geometry.

Obtained by ArStreetscapeGeometry_getType.

Properties
AR_STREETSCAPE_GEOMETRY_TYPE_BUILDING

This geometry represents a building or other structure.

AR_STREETSCAPE_GEOMETRY_TYPE_TERRAIN

This geometry represents the ground or floor.

Typedefs

ArStreetscapeGeometry

struct ArStreetscapeGeometry_ ArStreetscapeGeometry

A Streetscape Geometry trackable (reference type,long-lived").

Defines geometry such as terrain, buildings, or other structures obtained from the Streetscape Geometry API. See the Streetscape Geometry Developer Guide for additional information.

Obtained from a call to ArSession_getAllTrackables and ArFrame_getUpdatedTrackables when ArStreetscapeGeometryMode is set to AR_STREETSCAPE_GEOMETRY_MODE_ENABLED and ArGeospatialMode is set to AR_GEOSPATIAL_MODE_ENABLED.

Functions

ArStreetscapeGeometry_acquireMesh

void ArStreetscapeGeometry_acquireMesh(
  const ArSession *session,
  const ArStreetscapeGeometry *streetscape_geometry,
  ArMesh **out_mesh
)

Acquires a polygon ArMesh that corresponds to this geometry.

A ArMesh describes the geometry as a collection of polygons which should be transformed by ArStreetscapeGeometry_getMeshPose.

ArMesh must be released by calling ArMesh_release.

ArStreetscapeGeometry_getMeshPose

void ArStreetscapeGeometry_getMeshPose(
  const ArSession *session,
  const ArStreetscapeGeometry *streetscape_geometry,
  ArPose *out_pose
)

Gets the origin pose of the streetscape_geometry.

This pose should be applied to all the points in the geometry from ArStreetscapeGeometry_acquireMesh.

ArStreetscapeGeometry_getQuality

void ArStreetscapeGeometry_getQuality(
  const ArSession *session,
  const ArStreetscapeGeometry *streetscape_geometry,
  ArStreetscapeGeometryQuality *out_quality
)

Gets the ArStreetscapeGeometryQuality corresponding to this geometry.

ArStreetscapeGeometry_getType

void ArStreetscapeGeometry_getType(
  const ArSession *session,
  const ArStreetscapeGeometry *streetscape_geometry,
  ArStreetscapeGeometryType *out_type
)

Gets the ArStreetscapeGeometryType corresponding to this geometry.