Provides access to a location's texture--such as when working with City Scale AR.

// @input Asset.Material material

// This is an example of displaying one tile(center tile which is 0, 0) of nearby area. 9 tiles are supported, including:

// center tile: LocationAsset.getNearby(0, 0, 0)

// east tile of center: LocationAsset.getNearby(1, 0, 0)
// west tile of center: LocationAsset.getNearby(-1, 0, 0)
// south tile of center: LocationAsset.getNearby(0, 1, 0)
// north tile of center: LocationAsset.getNearby(0, -1, 0)

// southEast tile of center: LocationAsset.getNearby(1, 1, 0)
// southWest tile of center: LocationAsset.getNearby(-1, 1, 0)
// northEast tile of center: LocationAsset.getNearby(1, -1, 0)
// northWest tile of center: LocationAsset.getNearby(-1, -1, 0)

// Get the tile location asset of current position
var centerTile_0_0 = LocationAsset.getNearby(0, 0, 0);

// Create a Location Texture
var locationTexture = LocationTextureProvider.create();
locationTexture.control.location = centerTile_0_0;

// Create a Location mesh
var locationMesh = LocationRenderObjectProvider.create();
locationMesh.control.location = centerTile_0_0;

// Create a LocatedAtComponent to put location mesh in correct place
var centerPin = global.scene.createSceneObject("center_tile_0_0");
centerPin.setParent(script.getSceneObject());
var locatedAt = centerPin.createComponent("Component.LocatedAtComponent");
locatedAt.location = centerTile_0_0;

// Create render mesh to display
var mesh = global.scene.createSceneObject("mesh");
mesh.setParent(centerPin);
var renderMeshVisual = mesh.createComponent("Component.RenderMeshVisual");

// Assign texture
var locationMaterial = script.material.clone();
renderMeshVisual.clearMaterials();
renderMeshVisual.addMaterial(locationMaterial);
renderMeshVisual.mainPass["baseTex"] = locationTexture;

renderMeshVisual.mesh = locationMesh;
interface LocationTextureProvider {
    location: LocationAsset;
    getAspect(): number;
    getHeight(): number;
    getLoadStatus(): LoadStatus;
    getTypeName(): string;
    getWidth(): number;
    isOfType(type: string): boolean;
    isSame(other: ScriptObject): boolean;
}

Hierarchy (view full)

Properties

location: LocationAsset

The location texture's LocationAsset nearby tile.

Methods

  • Returns the texture's aspect ratio, which is calculated as width / height.

    Returns number

  • Returns the width of the texture in pixels.

    Returns number

  • Returns true if the object matches or derives from the passed in type.

    Parameters

    • type: string

    Returns boolean

  • Returns true if this object is the same as other. Useful for checking if two references point to the same thing.

    Parameters

    Returns boolean