Tango Documentation


ARCameraComponent

ARCameraComponent

PLEASE NOTE: This component is only available from version 0.9.5 onwards.

The ARCameraComponent is a replacement for the Camera component which draws the real world in front of a Tango-enabled device to the screen. Like a Tango Motion component, it moves around the Unreal Engine world as the device is moved around the real world. The end result is that any objects within the Unreal Engine world will appear superimposed on top of the real world at the scale specified in the configuration struct.


Note that you will need to remove any skyboxes or features which encompass the entire screen from your levels, or you will not be able to see the passthrough camera effect (as these features will block the line of sight between the camera and the passthrough image).

The ARCameraComponent replaces the now deprecated 'Prepare Camera for Augmented Reality' function.

Set Tango Runtime Config (Function)

Description:
Sets the runtime-settable parameters of the Tango to the values of the FTangoRuntimeConfig struct passed into the Configuration argument.

Inputs:

  • Configuration [FTangoRuntimeConfig]: The runtime-settable configuration parameters to pass the Tango service.

Outputs:

  • Return Value: returns true if the runtime configuration values were successfully set.

Reconnect Tango Service (Function)

Description:
Disconnects the currently connected Tango service and reconnects the Tango service with the given configuration parameters.

Inputs:

  • Configuration [FTango Config]: The configuration parameters to pass the Tango service.

Prepare Camera for Augmented Reality (Function)

PLEASE NOTE: In plugin version 0.9.5, this function is deprecated and the user now simply needs to add an ARCameraComponent onto an object's hierarchy to achieve passthrough camera functionality.

Description
:

Convenience function which adjusts a given UE4 Camera object to match the Tango's passthrough camera for Augmented Reality applications.

Inputs:

  • Camera [Camera Component]: The camera component to prepare for AR passthrough.
  • Near Plane [float]: The desired near plane of the AR camera.
  • Far Plane [float]: The desired far plane of the AR camera.
  • Controller [Player Controller]: The active Player controller.

Is Tango Service Running (Pure Function)

Description:
Returns true if the Tango Service is currently connected and running, otherwise returns false.

Outputs:

  • Return Value [Boolean]: True if the Tango Service is currently connected and running, otherwise false.

Get Tango Config (Pure Function)

Description:
Returns structures representing the current Tango Config and Tango Runtime Config.

Outputs:

  • Runtime Config[FTango Runtime Config]: A struct containing the current runtime-settable configuration options.
  • Return Value[FTango Config]: A struct containing the current non-runtime-settable configuration options.

Get Loaded Area Description (Pure Function)

Description:
Returns the currently loaded Area Definition file.

Outputs:

  • Return Value [FTangoAreaDescription]: the ADF that is currently loaded. If no ADF is currently loaded, this will return a struct with blank values for UUID and Filename.

Get Last Area Description (Pure Function)

Description:
Returns the last used Area Definition file.

Outputs:

  • Return Value [FTangoAreaDescription]: the latest ADF that was used by this device.

Get Camera Intrinsics (Function)

Description:
Returns a structure containing information about the nature of the selected camera. This is useful for many Augmented Reality and camera alignment calculations.

Inputs:

  • Camera ID [ETango Camera Type]: an enumeration which denotes which camera's intrinsics information should be returned in the output FTangoCameraIntrinsics struct.

Outputs:

  • Return Value [FTango Camera Intrinsics]: an array of all the UUID/Filename pairs stored within this device's Tango Core repository.

Get all Area Description Data (Pure Function)

Description:
Returns an array containing all of the Area Description files which are stored within this devices's Tango Core Repository. Please note that this does not include ADFs stored in other areas on the file system of the device.

Outputs:

  • Return Value [FTango Area Description]: an array of all the UUID/Filename pairs stored within this device's Tango Core repository.

Disconnect Tango Service (Function)

Description:
Disconnects the Tango service.

Note that it's not required to call this function on EndPlay- the Tango plugin will automatically perform a disconnection when the app is paused or closed, and will automatically resume if the app is brought back into the foreground.

Connect Tango Service (Function)

Description:
Connects the Tango service with the given configuration parameters.
All Tango components require the Tango service to be connected in order to function correctly, and developers must manually connect using this function.

Inputs:

  • Configuration [FTango Config]: The configuration parameters to pass the Tango service.

ETango Pose Status (Enumeration)

Description:
This enumeration represents the state of the current pose- a pose will contain data which is usable only when in the 'Valid' state.

Valid Values:

  • [0] Tango pose initializing
  • [1] Tango pose valid
  • [2] Tango pose invalid
  • [3] Tango pose unknown

ETango Position Context (Enumeration)

Description: 
Please note: this is deprecated and will be removed from the project as of version 0.6.0.

Valid Values:

  • [0] Device from Service Start
  • [1] Device from Area Description
  • [2] Service Start from Area Description
  • [3] Device from Previous Frame

ETango Coordinate Frame Type (Enumeration)

Description:
This is a list of all the different supported Coordinate Frame types.

Valid Values:

  • [0] Global: WGS84
  • [1] Area Description
  • [2] Start of Service
  • [3] Previous Device Pose
  • [4] Device
  • [5] IMU
  • [6] Display
  • [7] Camera: Colour
  • [8] Camera: Depth
  • [9] Camera: Fisheye

Tango XYZij Data (Structure)

Description:
This data structure holds information about a Tango Point cloud, including the timestamp and how many points are contained within the current Point cloud.

Note that Blueprint users are restricted in how they may use data- we suggest either using the "Get Single Point" function to access individual array points, or if iteration over all Depth points is required, using C++. For more information read here.

Fields:

  • Timestamp [Float]: The seconds since tango service was started, when this structure was generated.
  • Count [Integer]: The number of Points (FVectors) contained within the latest point cloud.

Tango Coordinate Frame Pair (Structure)

Description:
Tango pose data is calculated as a transformation between two frames of reference (so, for example, you can be asking for the pose of the device within a learned area).
This struct is used to specify the desired base and target frames of reference when requesting pose data. You can also use it when you have a TangoPoseData structure returned from the API and want to examine which frames of reference were used to get that pose.
For more information, including which coordinate frame pairs are valid, read here.

Fields:

  • Base Frame [ETango Coordinate Frame Type Enum]: The co-ordinate from which to obtain the 'starting position' of a given pose, e.g. the point in space where the tango was present when the service started up.
  • Target Frame [ETango Coordinate Frame Type Enum]: The co-ordinate from which to obtain the 'current position' of a given pose, e.g. the current position of the Device.

Tango Pose Data (Structure)

Description:
The TangoPoseData struct contains pose information returned from motion tracking.

For more information read.

Fields:

  • Position [Vector]: The position of the tango device.
  • Rotation [Rotator]: The rotation of the tango device.
  • Frame of Reference [Tango Coordinate Frame Pair Structure]: The Frame of Reference for this TangoPoseStructure; for example Base: Start of Service, Target: Device.
  • Status Code [ETango Pose Status Enum]: The current status of the pose- can be Valid, Initializing, or Invalid.
  • Timestamp [Float]: The number of seconds since the tango service was started, when this structure was generated.

Tango Area Description (Structure)

Description:
This is the Filename/UUID pair representing an ADF which is currently within the Tango Core of the user's device. It can be used as an input for the Connect node, in which case the system will attempt to localize against it.

Fields:

  • UUID [String]: universally unique identifier string set
  • Filename [String]: Name of the file

Get Current World Scale Factor (Pure Function)

Description:
Retrieve the current factor the Tango uses to scale its data to Unreal distance units.

Inputs:

  • Target [Tango Point Cloud Component Reference]: The Unreal Engine / Tango Point Cloud interface object.

Outputs:

  • Return Value [float]: Scale factor from Tango units to Unreal units.