[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-07-14 UTC."],[[["\u003cp\u003e\u003ccode\u003eArPoint\u003c/code\u003e represents a tracked point in space within the ARCore environment.\u003c/p\u003e\n"],["\u003cp\u003eIt provides functionalities to obtain the point's pose and orientation mode.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eArPointOrientationMode\u003c/code\u003e indicates whether the point's orientation is estimated based on surface normal or initialized to identity.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can use \u003ccode\u003eArPoint_getPose\u003c/code\u003e and \u003ccode\u003eArPoint_getOrientationMode\u003c/code\u003e to access the point's pose and orientation information respectively.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eArPoint\u003c/code\u003e objects are released using \u003ccode\u003eArTrackable_release\u003c/code\u003e.\u003c/p\u003e\n"]]],["ArPoint represents a point in space tracked by ARCore. It has an orientation mode, retrievable via `ArPoint_getOrientationMode`, which can be `AR_POINT_ORIENTATION_INITIALIZED_TO_IDENTITY` or `AR_POINT_ORIENTATION_ESTIMATED_SURFACE_NORMAL`. The pose of a point can be obtained using `ArPoint_getPose`. `ArPoint` objects are created by `ArFrame_hitTest`. If the mode is `AR_POINT_ORIENTATION_ESTIMATED_SURFACE_NORMAL`, the surface normal around the point was estimated. They are released with `ArTrackable_release`.\n"],null,["# ArPoint\n=======\n\nRepresents a point in space that ARCore is tracking.\n\nSummary\n-------\n\n| ### Enumerations ||\n|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------|\n| [ArPointOrientationMode](#arpointorientationmode)`{` ` `[AR_POINT_ORIENTATION_INITIALIZED_TO_IDENTITY](#ar_point_orientation_initialized_to_identity)` = 0,` ` `[AR_POINT_ORIENTATION_ESTIMATED_SURFACE_NORMAL](#ar_point_orientation_estimated_surface_normal)` = 1` `}` | enum Indicates the orientation mode of the [ArPoint](/ar/reference/c/group/ar-point#arpoint). |\n\n| ### Typedefs ||\n|---------------------|----------------------------------------------------------------------------------------------------------------------------------------|\n| [ArPoint](#arpoint) | typedef `struct ArPoint_` An arbitrary point in space ([reference type, long-lived](/ar/reference/c/group/concepts#object-ownership)). |\n\n| ### Functions ||\n|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------|\n| [ArPoint_getOrientationMode](#arpoint_getorientationmode)`(const `[ArSession](/ar/reference/c/group/ar-session#arsession)` *session, const `[ArPoint](/ar/reference/c/group/ar-point#arpoint)` *point, `[ArPointOrientationMode](/ar/reference/c/group/ar-point#arpointorientationmode)` *out_orientation_mode)` | `void` Returns the [ArPointOrientationMode](/ar/reference/c/group/ar-point#arpointorientationmode) of the point. |\n| [ArPoint_getPose](#arpoint_getpose)`(const `[ArSession](/ar/reference/c/group/ar-session#arsession)` *session, const `[ArPoint](/ar/reference/c/group/ar-point#arpoint)` *point, `[ArPose](/ar/reference/c/group/ar-pose#arpose)` *out_pose)` | `void` Returns the pose of the point. |\n\nEnumerations\n------------\n\n### ArPointOrientationMode\n\n```text\n ArPointOrientationMode\n``` \nIndicates the orientation mode of the [ArPoint](/ar/reference/c/group/ar-point#arpoint).\n\n| Properties ||\n|-----------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| AR_POINT_ORIENTATION_ESTIMATED_SURFACE_NORMAL | The orientation of the [ArPoint](/ar/reference/c/group/ar-point#arpoint) will follow the behavior described in [ArHitResult_getHitPose](/ar/reference/c/group/ar-hit-result#arhitresult_gethitpose). |\n| AR_POINT_ORIENTATION_INITIALIZED_TO_IDENTITY | The orientation of the [ArPoint](/ar/reference/c/group/ar-point#arpoint) is initialized to identity but may adjust slightly over time. |\n\nTypedefs\n--------\n\n### ArPoint\n\n```scdoc\nstruct ArPoint_ ArPoint\n``` \nAn arbitrary point in space ([reference type, long-lived](/ar/reference/c/group/concepts#object-ownership)).\n\n\n- Trackable type: [AR_TRACKABLE_POINT](/ar/reference/c/group/ar-trackable#ar_trackable_point)\n- Release with: [ArTrackable_release](/ar/reference/c/group/ar-trackable#artrackable_release)\n\n\u003cbr /\u003e\n\nFunctions\n---------\n\n### ArPoint_getOrientationMode\n\n```gdscript\nvoid ArPoint_getOrientationMode(\n const ArSession *session,\n const ArPoint *point,\n ArPointOrientationMode *out_orientation_mode\n)\n``` \nReturns the [ArPointOrientationMode](/ar/reference/c/group/ar-point#arpointorientationmode) of the point.\n\nFor [ArPoint](/ar/reference/c/group/ar-point#arpoint) objects created by [ArFrame_hitTest](/ar/reference/c/group/ar-frame#arframe_hittest). If [ArPointOrientationMode](/ar/reference/c/group/ar-point#arpointorientationmode) is [AR_POINT_ORIENTATION_ESTIMATED_SURFACE_NORMAL](/ar/reference/c/group/ar-point#ar_point_orientation_estimated_surface_normal), then normal of the surface centered around the [ArPoint](/ar/reference/c/group/ar-point#arpoint) was estimated successfully.\n\n\n| Details ||\n|------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Parameters | |------------------------|----------------------------------------------| | `session` | The ARCore session. | | `point` | The point to retrieve the pose of. | | `out_orientation_mode` | OrientationMode output result for the point. | |\n\n### ArPoint_getPose\n\n```gdscript\nvoid ArPoint_getPose(\n const ArSession *session,\n const ArPoint *point,\n ArPose *out_pose\n)\n``` \nReturns the pose of the point.\n\nIf [ArPoint_getOrientationMode](/ar/reference/c/group/ar-point#arpoint_getorientationmode) returns [AR_POINT_ORIENTATION_ESTIMATED_SURFACE_NORMAL](/ar/reference/c/group/ar-point#ar_point_orientation_estimated_surface_normal), the orientation will follow the behavior described in [ArHitResult_getHitPose](/ar/reference/c/group/ar-hit-result#arhitresult_gethitpose). If [ArPoint_getOrientationMode](/ar/reference/c/group/ar-point#arpoint_getorientationmode) returns [AR_POINT_ORIENTATION_INITIALIZED_TO_IDENTITY](/ar/reference/c/group/ar-point#ar_point_orientation_initialized_to_identity), then returns an orientation that is identity or close to identity.\n\n| Details ||\n|------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Parameters | |------------|----------------------------------------------------------------------------------------------------------------| | `session` | The ARCore session. | | `point` | The point to retrieve the pose of. | | `out_pose` | An already-allocated [ArPose](/ar/reference/c/group/ar-pose#arpose) object into which the pose will be stored. | |"]]