Reference Source
public class | source

PointsMaterial

Extends:

ComponentMaterial → PointsMaterial

Configures the size and shape of "points" geometry primitives.

  • Located at Scene#pointsMaterial.
  • Supports round and square points.
  • Optional perspective point scaling.
  • Globally configures "points" primitives for all VBOSceneModels.

Usage

In the example below, we'll customize the Scene's global PointsMaterial, then use an XKTLoaderPlugin to load a model containing a point cloud.

[Run this example]

import {Viewer, XKTLoaderPlugin} from "xeokit-sdk.es.js";

const viewer = new Viewer({
    canvasId: "myCanvas",
    transparent: true
});

viewer.scene.camera.eye = [0, 0, 5];
viewer.scene.camera.look = [0, 0, 0];
viewer.scene.camera.up = [0, 1, 0];

viewer.scene.pointsMaterial.pointSize = 2;
viewer.scene.pointsMaterial.roundPoints = true;
viewer.scene.pointsMaterial.perspectivePoints = true;
viewer.scene.pointsMaterial.minPerspectivePointSize = 1;
viewer.scene.pointsMaterial.maxPerspectivePointSize = 6;
viewer.scene.pointsMaterial.filterIntensity = true;
viewer.scene.pointsMaterial.minIntensity = 0.0;
viewer.scene.pointsMaterial.maxIntensity = 1.0;

const xktLoader = new XKTLoaderPlugin(viewer);

const model = xktLoader.load({
     id: "myModel",
     src: "../assets/models/xkt/MAP-PointCloud.xkt"
});

Constructor Summary

Public Constructor
public

constructor(owner: Component, cfg: *)

Member Summary

Public Members
public set

Sets if rendered point size reduces with distance when Camera#projection is set to "perspective".

public get

Gets if rendered point size reduces with distance when Camera#projection is set to "perspective".

public set

Sets the maximum rendered size of points when PointsMaterial#filterIntensity is true.

public get

Gets the maximum rendered size of points when PointsMaterial#filterIntensity is true.

public set

Sets the maximum rendered size of points when PointsMaterial#perspectivePoints is true.

public get

Gets the maximum rendered size of points when PointsMaterial#perspectivePoints is true.

public set

Sets the minimum rendered size of points when PointsMaterial#perspectivePoints is true.

public get

Gets the minimum rendered size of points when PointsMaterial#filterIntensity is true.

public set

Sets the minimum rendered size of points when PointsMaterial#perspectivePoints is true.

public get

Gets the minimum rendered size of points when PointsMaterial#perspectivePoints is true.

public set

Sets if rendered point size reduces with distance when Camera#projection is set to "perspective".

public get

Gets if rendered point size reduces with distance when Camera#projection is set to "perspective".

public set

Sets point size.

public get

Gets point size.

public set

Selects a preset PointsMaterial configuration.

public get

The current preset PointsMaterial configuration.

public get

Gets available PointsMaterial presets.

public set

Sets if points are round or square.

public get

Gets if points are round or square.

Method Summary

Public Methods
public

Destroys this PointsMaterial.

Inherited Summary

From class Component
public get

The Component that owns the lifecycle of this Component, if any.

public

True as soon as this Component has been destroyed

public

ID of this Component, unique within the Scene.

public

meta: *

Arbitrary, user-defined metadata on this component.

public

The parent Scene that contains this Component.

public

The viewer that contains this Scene.

public

clear()

Destroys all Components that are owned by this.

public

Destroys this component.

public

error(message: String)

Logs an error for this component to the JavaScript console.

public

fire(event: String, value: Object, forget: Boolean)

Fires an event on this component.

public

Returns true if there are any subscribers to the given event on this component.

public

isType(type: *): *: Boolean

Tests if this component is of the given type, or is a subclass of the given type.

public

log(message: String)

Logs a console debugging message for this component.

public

off(subId: String)

Cancels an event subscription that was previously made with Component#on or Component#once.

public

on(event: String, callback: Function, scope: Object): String

Subscribes to an event on this component.

public

once(event: String, callback: Function, scope: Object)

Subscribes to the next occurrence of the given event, then un-subscribes as soon as the event is subIdd.

public

scheduleTask(task: *)

Schedule a task to perform on the next browser interval

public

warn(message: String)

Logs a warning for this component to the JavaScript console.

From class Material
public

Public Constructors

public constructor(owner: Component, cfg: *) source

Override:

Material#constructor

Params:

NameTypeAttributeDescription
owner Component

Owner component. When destroyed, the owner will destroy this component as well.

cfg *
  • optional

The PointsMaterial configuration

cfg.id String
  • optional

Optional ID, unique among all components in the parent Scene, generated automatically when omitted.

cfg.pointSize Number
  • optional
  • default: 2

Point size in pixels.

cfg.roundPoints Boolean
  • optional
  • default: true

Whether points are round (true) or square (false).

cfg.perspectivePoints Boolean
  • optional
  • default: true

Whether apparent point size reduces with distance when Camera#projection is set to "perspective".

cfg.minPerspectivePointSize Number
  • optional
  • default: 1

When perspectivePoints is true, this is the minimum rendered size of each point in pixels.

cfg.maxPerspectivePointSize Number
  • optional
  • default: 6

When perspectivePoints is true, this is the maximum rendered size of each point in pixels.

cfg.filterIntensity Boolean
  • optional
  • default: false

When this is true, points are only rendered when their intensity value falls within the range given in {@link }

cfg.minIntensity Number
  • optional
  • default: 0

When filterIntensity is true, points with intensity below this value will not be rendered.

cfg.maxIntensity Number
  • optional
  • default: 1

When filterIntensity is true, points with intensity above this value will not be rendered.

cfg.preset String
  • optional

Selects a preset PointsMaterial configuration - see PointsMaterial#presets.

Public Members

public set filterIntensity: Boolean source

Sets if rendered point size reduces with distance when Camera#projection is set to "perspective".

Default is false.

public get filterIntensity: Boolean source

Gets if rendered point size reduces with distance when Camera#projection is set to "perspective".

Default is false.

public set maxIntensity: Number source

Sets the maximum rendered size of points when PointsMaterial#filterIntensity is true.

Default value is 1.

public get maxIntensity: Number source

Gets the maximum rendered size of points when PointsMaterial#filterIntensity is true.

Default value is 1.

public set maxPerspectivePointSize: Number source

Sets the maximum rendered size of points when PointsMaterial#perspectivePoints is true.

Default value is 6 pixels.

public get maxPerspectivePointSize: Number source

Gets the maximum rendered size of points when PointsMaterial#perspectivePoints is true.

Default value is 6 pixels.

public set minIntensity: Number source

Sets the minimum rendered size of points when PointsMaterial#perspectivePoints is true.

Default value is 0.

public get minIntensity: Number source

Gets the minimum rendered size of points when PointsMaterial#filterIntensity is true.

Default value is 0.

public set minPerspectivePointSize: Number source

Sets the minimum rendered size of points when PointsMaterial#perspectivePoints is true.

Default value is 1.0 pixels.

public get minPerspectivePointSize: Number source

Gets the minimum rendered size of points when PointsMaterial#perspectivePoints is true.

Default value is 1.0 pixels.

public set perspectivePoints: Boolean source

Sets if rendered point size reduces with distance when Camera#projection is set to "perspective".

Default is true.

public get perspectivePoints: Boolean source

Gets if rendered point size reduces with distance when Camera#projection is set to "perspective".

Default is false.

public set pointSize: Number source

Sets point size.

Default value is 2.0 pixels.

public get pointSize: Number source

Gets point size.

Default value is 2.0 pixels.

public set preset: String source

Selects a preset PointsMaterial configuration.

Default value is "default".

public get preset: String source

The current preset PointsMaterial configuration.

Default value is "default".

public get presets: Object source

Gets available PointsMaterial presets.

public set roundPoints: Boolean source

Sets if points are round or square.

Default is true to set points round.

public get roundPoints: Boolean source

Gets if points are round or square.

Default is true to set points round.

Public Methods

public destroy() source

Destroys this PointsMaterial.

Override:

Material#destroy