Mesh
Extends:
Implements:
- Entity ,
- Drawable
An Entity that is a drawable element, with a Geometry and a Material, that can be connected into a scene graph using Nodes.
Usage
The example below is the same as the one given for Node, since the two classes work together. In this example, we'll create a scene graph in which a root Node represents a group and the Meshes are leaves.
Since Node implements Entity, we can designate the root Node as a model, causing it to be registered by its ID in Scene#models.
Since Mesh also implements Entity, we can designate the leaf Meshes as objects, causing them to be registered by their IDs in Scene#objects.
We can then find those Entity types in Scene#models and Scene#objects.
We can also update properties of our object-Meshes via calls to Scene#setObjectsHighlighted etc.
import {Viewer, Mesh, Node, PhongMaterial, buildBoxGeometry, ReadableGeometry} from "xeokit-sdk.es.js";
const viewer = new Viewer({
canvasId: "myCanvas"
});
viewer.scene.camera.eye = [-21.80, 4.01, 6.56];
viewer.scene.camera.look = [0, -5.75, 0];
viewer.scene.camera.up = [0.37, 0.91, -0.11];
const boxGeometry = new ReadableGeometry(viewer.scene, buildBoxGeometry({
xSize: 1,
ySize: 1,
zSize: 1
}));
new Node(viewer.scene, {
id: "table",
isModel: true, // <---------- Node represents a model, so is registered by ID in viewer.scene.models
rotation: [0, 50, 0],
position: [0, 0, 0],
scale: [1, 1, 1],
children: [
new Mesh(viewer.scene, { // Red table leg
id: "redLeg",
isObject: true, // <------ Node represents an object, so is registered by ID in viewer.scene.objects
position: [-4, -6, -4],
scale: [1, 3, 1],
rotation: [0, 0, 0],
material: new PhongMaterial(viewer.scene, {
diffuse: [1, 0.3, 0.3]
}),
geometry: boxGeometry
}),
new Mesh(viewer.scene, { // Green table leg
id: "greenLeg",
isObject: true, // <------ Node represents an object, so is registered by ID in viewer.scene.objects
position: [4, -6, -4],
scale: [1, 3, 1],
rotation: [0, 0, 0],
material: new PhongMaterial(viewer.scene, {
diffuse: [0.3, 1.0, 0.3]
}),
geometry: boxGeometry
}),
new Mesh(viewer.scene, {// Blue table leg
id: "blueLeg",
isObject: true, // <------ Node represents an object, so is registered by ID in viewer.scene.objects
position: [4, -6, 4],
scale: [1, 3, 1],
rotation: [0, 0, 0],
material: new PhongMaterial(viewer.scene, {
diffuse: [0.3, 0.3, 1.0]
}),
geometry: boxGeometry
}),
new Mesh(viewer.scene, { // Yellow table leg
id: "yellowLeg",
isObject: true, // <------ Node represents an object, so is registered by ID in viewer.scene.objects
position: [-4, -6, 4],
scale: [1, 3, 1],
rotation: [0, 0, 0],
material: new PhongMaterial(viewer.scene, {
diffuse: [1.0, 1.0, 0.0]
}),
geometry: boxGeometry
}),
new Mesh(viewer.scene, { // Purple table top
id: "tableTop",
isObject: true, // <------ Node represents an object, so is registered by ID in viewer.scene.objects
position: [0, -3, 0],
scale: [6, 0.5, 6],
rotation: [0, 0, 0],
material: new PhongMaterial(viewer.scene, {
diffuse: [1.0, 0.3, 1.0]
}),
geometry: boxGeometry
})
]
});
// Find Nodes and Meshes by their IDs
var table = viewer.scene.models["table"]; // Since table Node has isModel == true
var redLeg = viewer.scene.objects["redLeg"]; // Since the Meshes have isObject == true
var greenLeg = viewer.scene.objects["greenLeg"];
var blueLeg = viewer.scene.objects["blueLeg"];
// Highlight one of the table leg Meshes
viewer.scene.setObjectsHighlighted(["redLeg"], true); // Since the Meshes have isObject == true
// Periodically update transforms on our Nodes and Meshes
viewer.scene.on("tick", function () {
// Rotate legs
redLeg.rotateY(0.5);
greenLeg.rotateY(0.5);
blueLeg.rotateY(0.5);
// Rotate table
table.rotateY(0.5);
table.rotateX(0.3);
});
Metadata
As mentioned, we can also associate MetaModels and MetaObjects with our Nodes and Meshes, within a MetaScene. See MetaScene for an example.
Constructor Summary
Public Constructor | ||
public |
constructor(owner: Component, cfg: *) |
Member Summary
Public Members | ||
public get |
Gets the Mesh's World-space 3D axis-aligned bounding box. Represented by a six-element Float64Array containing the min/max extents of the
axis-aligned volume, ie. |
|
public get |
Gets the Node's billboarding behaviour. Options are:
|
|
public get |
Gets if this Mesh casts shadows. |
|
public set |
Sets if this Mesh casts shadows. |
|
public get |
Gets if this Mesh is clippable. |
|
public set |
Sets if this Mesh is clippable. |
|
public get |
Gets if this Mesh included in boundary calculations. |
|
public set |
Sets if this Mesh included in boundary calculations. |
|
public get |
Gets the RGB colorize color for this Mesh. |
|
public set |
Sets the RGB colorize color for this Mesh. |
|
public get |
Gets if this Mesh is culled. |
|
public set |
Sets if this Mesh is culled. |
|
public get |
Defines the appearance of this Mesh when edges are enhanced. |
|
public get |
Gets if this Mesh is edge-enhanced. |
|
public set |
Sets if this Mesh is edge-enhanced. |
|
public get |
Defines the shape of this Mesh. |
|
public get |
Defines the appearance of this Mesh when highlighted. |
|
public get |
Gets if this Mesh is highlighted. |
|
public set |
Sets if this Mesh is highlighted. |
|
public get |
Returns true to indicate that Mesh implements Drawable. |
|
public get |
Returns true to indicate that Mesh implements Entity. |
|
public get |
Returns true to indicate that this Component is a Mesh. |
|
public get |
Returns |
|
public get |
Returns |
|
public get |
Property with final value |
|
public get |
Gets the Mesh's rendering order relative to other Meshes. Default value is This can be set on multiple transparent Meshes, to make them render in a specific order for correct alpha blending. |
|
public set |
Sets the Mesh's rendering order relative to other Meshes. Default value is This can be set on multiple transparent Meshes, to make them render in a specific order for correct alpha blending. |
|
public get |
Defines the appearance of this Mesh when rendering normally, ie. |
|
public get |
Gets the Mesh's local modeling transform matrix. Default value is |
|
public set |
Sets the Mesh's local modeling transform matrix. Default value is |
|
public get |
The approximate number of triangles in this Mesh. |
|
public get |
Gets the Mesh's 3D World-space offset. Default value is |
|
public set |
Sets the Mesh's 3D World-space offset. The offset dynamically translates the Mesh in World-space. Default value is Provide a null or undefined value to reset to the default value. |
|
public get |
Gets the opacity factor for this Mesh. |
|
public set |
Sets the opacity factor for this Mesh. |
|
public get |
Gets the 3D origin of the Mesh's Geometry's vertex positions. |
|
public set |
Sets the 3D origin of the Mesh's Geometry's vertex positions. |
|
public abstract |
ID of the corresponding object within the originating system, if any. |
|
public get |
The parent Node. |
|
public get |
Gets if this Mesh is pickable. |
|
public set |
Sets if this Mesh is pickable. |
|
public get |
Gets the Mesh's local translation. Default value is |
|
public set |
Sets the Mesh's local translation. Default value is |
|
public get |
quaternion: Number[] Gets the Mesh's local rotation quaternion. Default value is |
|
public set |
quaternion: Number[] Sets the Mesh's local rotation quaternion. Default value is |
|
public get |
Gets if this Mesh can have shadows cast upon it. |
|
public set |
Sets if this Mesh can have shadows cast upon it. |
|
public |
renderOrder: * |
|
public get |
Gets the Mesh's local rotation, as Euler angles given in degrees, for each of the X, Y and Z axis. Default value is |
|
public set |
Sets the Mesh's local rotation, as Euler angles given in degrees, for each of the X, Y and Z axis. Default value is |
|
public get |
this get was deprecated.
Gets the World-space origin for this Mesh. |
|
public set |
this set was deprecated.
Sets the World-space origin for this Mesh. |
|
public get abstract |
Gets if this Mesh can have Scalable Ambient Obscurance (SAO) applied to it. |
|
public get |
Gets the Mesh's local scale. Default value is |
|
public set |
Sets the Mesh's local scale. Default value is |
|
public get |
Gets if this Mesh is selected. |
|
public set |
Sets if this Mesh is selected. |
|
public get |
Defines the appearance of this Mesh when selected. |
|
public get |
Gets if the Node's position is stationary. When true, will disable the effect of Camera translations for this Mesh, while still allowing it to rotate. This is useful for skyboxes. |
|
public get |
transparent: Boolean: * Gets if this Mesh is transparent. |
|
public get |
Gets if this Mesh is visible. |
|
public set |
Sets if this Mesh is visible. |
|
public get |
Gets the Mesh's World matrix. |
|
public get |
Gets the Mesh's World normal matrix. |
|
public get |
Defines the appearance of this Mesh when xrayed. |
|
public get |
Gets if this Mesh is xrayed. |
|
public set |
Sets if this Mesh is xrayed. |
Method Summary
Public Methods | ||
public |
destroy() Destroys this Mesh. |
|
public |
Rotates the Mesh about the given local axis by the given increment. |
|
public |
rotateOnWorldAxis(axis: Number[], angle: Number): * Rotates the Mesh about the given World-space axis by the given increment. |
|
public |
Rotates the Mesh about the local X-axis by the given increment. |
|
public |
Rotates the Mesh about the local Y-axis by the given increment. |
|
public |
Rotates the Mesh about the local Z-axis by the given increment. |
|
public |
stateSortCompare(mesh1: Mesh, mesh2: Mesh): number Comparison function used by the renderer to determine the order in which xeokit should render the Mesh, relative to to other Meshes. |
|
public |
Translates the Mesh along local space vector by the given increment. |
|
public |
translateX(distance: Number): * Translates the Mesh along the local X-axis by the given increment. |
|
public |
translateY(distance: Number): * Translates the Mesh along the local Y-axis by the given increment. |
|
public |
translateZ(distance: Number): * Translates the Mesh along the local Z-axis by the given increment. |
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 |
destroy() Destroys this component. |
|
public |
Logs an error for this component to the JavaScript console. |
|
public |
Fires an event on this component. |
|
public |
Returns true if there are any subscribers to the given event on this component. |
|
public |
Tests if this component is of the given type, or is a subclass of the given type. |
|
public |
Logs a console debugging message for this component. |
|
public |
Cancels an event subscription that was previously made with Component#on or Component#once. |
|
public |
Subscribes to an event on this component. |
|
public |
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 |
Logs a warning for this component to the JavaScript console. |
Public Constructors
public constructor(owner: Component, cfg: *) source
Override:
Component#constructorParams:
Name | Type | Attribute | Description |
owner | Component | Owner component. When destroyed, the owner will destroy this component as well. |
|
cfg | * |
|
Configs |
cfg.id | String |
|
Optional ID, unique among all components in the parent scene, generated automatically when omitted. |
cfg.originalSystemId | String |
|
ID of the corresponding object within the originating system, if any. |
cfg.isModel | Boolean |
|
Specify |
cfg.isObject | Boolean |
|
Specify |
cfg.parent | Node |
|
The parent Node. |
cfg.origin | Number[] |
|
World-space origin for this Mesh. When this is given, then |
cfg.rtcCenter | Number[] |
|
Deprecated - renamed to |
cfg.position | Number[] |
|
3D position of this Mesh, relative to |
cfg.scale | Number[] |
|
Local scale. |
cfg.rotation | Number[] |
|
Local rotation, as Euler angles given in degrees, for each of the X, Y and Z axis. |
cfg.matrix | Number[] |
|
Local modelling transform matrix. Overrides the position, scale and rotation parameters. |
cfg.offset | Number[] |
|
World-space 3D translation offset. Translates the Mesh in World space, after modelling transforms. |
cfg.occluder | Boolean |
|
Indicates if the Mesh is able to occlude Markers. |
cfg.visible | Boolean |
|
Indicates if the Mesh is initially visible. |
cfg.culled | Boolean |
|
Indicates if the Mesh is initially culled from view. |
cfg.pickable | Boolean |
|
Indicates if the Mesh is initially pickable. |
cfg.clippable | Boolean |
|
Indicates if the Mesh is initially clippable. |
cfg.collidable | Boolean |
|
Indicates if the Mesh is initially included in boundary calculations. |
cfg.castsShadow | Boolean |
|
Indicates if the Mesh initially casts shadows. |
cfg.receivesShadow | Boolean |
|
Indicates if the Mesh initially receives shadows. |
cfg.xrayed | Boolean |
|
Indicates if the Mesh is initially xrayed. |
cfg.highlighted | Boolean |
|
Indicates if the Mesh is initially highlighted. |
cfg.selected | Boolean |
|
Indicates if the Mesh is initially selected. |
cfg.edges | Boolean |
|
Indicates if the Mesh's edges are initially emphasized. |
cfg.background | Boolean |
|
Indicates if the Mesh should act as background, e.g., it can be used for a skybox. |
cfg.colorize | Number[] |
|
Mesh's initial RGB colorize color, multiplies by the rendered fragment colors. |
cfg.opacity | Number |
|
Mesh's initial opacity factor, multiplies by the rendered fragment alpha. |
cfg.billboard | String |
|
Mesh's billboarding behaviour. Options are "none" for no billboarding, "spherical" to always directly face Camera.eye, rotating both vertically and horizontally, or "cylindrical" to face the Camera#eye while rotating only about its vertically axis (use that mode for things like trees on a landscape). |
cfg.geometry | Geometry |
|
Geometry to define the shape of this Mesh. Inherits Scene#geometry by default. |
cfg.material | Material |
|
Material to define the normal rendered appearance for this Mesh. Inherits Scene#material by default. |
cfg.xrayMaterial | EmphasisMaterial |
|
EmphasisMaterial to define the xrayed appearance for this Mesh. Inherits Scene#xrayMaterial by default. |
cfg.highlightMaterial | EmphasisMaterial |
|
EmphasisMaterial to define the xrayed appearance for this Mesh. Inherits Scene#highlightMaterial by default. |
cfg.selectedMaterial | EmphasisMaterial |
|
EmphasisMaterial to define the selected appearance for this Mesh. Inherits Scene#selectedMaterial by default. |
cfg.edgeMaterial | EmphasisMaterial |
|
EdgeMaterial to define the appearance of enhanced edges for this Mesh. Inherits Scene#edgeMaterial by default. |
cfg.renderOrder | Number |
|
Specifies the rendering order for this mESH. This is used to control the order in which mESHES are drawn when they have transparent objects, to give control over the order in which those objects are blended within the transparent render pass. |
Public Members
public get aabb: Number[] source
Gets the Mesh's World-space 3D axis-aligned bounding box.
Represented by a six-element Float64Array containing the min/max extents of the
axis-aligned volume, ie. [xmin, ymin,zmin,xmax,ymax, zmax]
.
public get billboard: String source
Gets the Node's billboarding behaviour.
Options are:
"none"
- (default) - No billboarding."spherical"
- Mesh is billboarded to face the viewpoint, rotating both vertically and horizontally."cylindrical"
- Mesh is billboarded to face the viewpoint, rotating only about its vertically axis. Use this mode for things like trees on a landscape.
public get clippable: Boolean source
Gets if this Mesh is clippable.
Clipping is done by the SectionPlanes in Scene#sectionPlanes.
public set clippable: Boolean source
Sets if this Mesh is clippable.
Clipping is done by the SectionPlanes in Scene#sectionPlanes.
public get colorize: Number[] source
Gets the RGB colorize color for this Mesh.
Multiplies by rendered fragment colors.
Each element of the color is in range [0..1]
.
public set colorize: Number[] source
Sets the RGB colorize color for this Mesh.
Multiplies by rendered fragment colors.
Each element of the color is in range [0..1]
.
public get culled: Boolean source
Gets if this Mesh is culled.
Only rendered when Mesh#visible is true
and Mesh#culled is false
.
public set culled: Boolean source
Sets if this Mesh is culled.
Only rendered when Mesh#visible is true
and Mesh#culled is false
.
public get edgeMaterial: EdgeMaterial source
Defines the appearance of this Mesh when edges are enhanced.
Mesh is xrayed when Mesh#edges is true
.
Set to Scene#edgeMaterial by default.
public get edges: Boolean source
Gets if this Mesh is edge-enhanced.
Edge appearance is configured by the EdgeMaterial referenced by Mesh#edgeMaterial.
public set edges: Boolean source
Sets if this Mesh is edge-enhanced.
Edge appearance is configured by the EdgeMaterial referenced by Mesh#edgeMaterial.
public get geometry: Geometry source
Defines the shape of this Mesh.
Set to Scene#geometry by default.
public get highlightMaterial: EmphasisMaterial source
Defines the appearance of this Mesh when highlighted.
Mesh is xrayed when Mesh#highlighted is true
.
Set to Scene#highlightMaterial by default.
public get highlighted: Boolean source
Gets if this Mesh is highlighted.
Highlighted appearance is configured by the EmphasisMaterial referenced by Mesh#highlightMaterial.
When Mesh#isObject and Mesh#highlighted are both true
the Mesh will be
registered by Mesh#id in Scene#highlightedObjects.
public set highlighted: Boolean source
Sets if this Mesh is highlighted.
Highlighted appearance is configured by the EmphasisMaterial referenced by Mesh#highlightMaterial.
When Mesh#isObject and Mesh#highlighted are both true
the Mesh will be
registered by Mesh#id in Scene#highlightedObjects.
public get isModel: Boolean source
Returns true
if this Mesh represents a model.
When this returns true
, the Mesh will be registered by Mesh#id in Scene#models and
may also have a corresponding MetaModel.
public get isObject: Boolean source
Returns true
if this Mesh represents an object.
When this returns true
, the Mesh will be registered by Mesh#id in Scene#objects and
may also have a corresponding MetaObject.
public get isStateSortable: Boolean source
Property with final value true
to indicate that xeokit should render this Mesh in sorted order, relative to other Meshes.
The sort order is determined by Mesh#stateSortCompare.
Sorting is essential for rendering performance, so that xeokit is able to avoid applying runs of the same state changes to the GPU, ie. can collapse them.
public get layer: Number source
Gets the Mesh's rendering order relative to other Meshes.
Default value is 0
.
This can be set on multiple transparent Meshes, to make them render in a specific order for correct alpha blending.
public set layer: Number source
Sets the Mesh's rendering order relative to other Meshes.
Default value is 0
.
This can be set on multiple transparent Meshes, to make them render in a specific order for correct alpha blending.
public get material: Material source
Defines the appearance of this Mesh when rendering normally, ie. when not xrayed, highlighted or selected.
Set to Scene#material by default.
public get matrix: Number[] source
Gets the Mesh's local modeling transform matrix.
Default value is [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]
.
public set matrix: Number[] source
Sets the Mesh's local modeling transform matrix.
Default value is [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]
.
public set offset: Number[] source
Sets the Mesh's 3D World-space offset.
The offset dynamically translates the Mesh in World-space.
Default value is [0, 0, 0]
.
Provide a null or undefined value to reset to the default value.
public get opacity: Number source
Gets the opacity factor for this Mesh.
This is a factor in range [0..1]
which multiplies by the rendered fragment alphas.
public set opacity: Number source
Sets the opacity factor for this Mesh.
This is a factor in range [0..1]
which multiplies by the rendered fragment alphas.
public get origin: Float64Array source
Gets the 3D origin of the Mesh's Geometry's vertex positions.
When this is given, then Mesh#matrix, Mesh#position and Mesh#geometry are all assumed to be relative to this center position.
public set origin: Float64Array source
Sets the 3D origin of the Mesh's Geometry's vertex positions.
When this is given, then Mesh#matrix, Mesh#position and Mesh#geometry are all assumed to be relative to this center position.
public abstract originalSystemId: String source
ID of the corresponding object within the originating system, if any.
public get parent: Node source
The parent Node.
The parent Node may also be set by passing the Mesh to the parent's Node#addChild method.
public get pickable: Boolean source
Gets if this Mesh is pickable.
Picking is done via calls to Scene#pick.
public set pickable: Boolean source
Sets if this Mesh is pickable.
Picking is done via calls to Scene#pick.
public get quaternion: Number[] source
Gets the Mesh's local rotation quaternion.
Default value is [0,0,0,1]
.
public set quaternion: Number[] source
Sets the Mesh's local rotation quaternion.
Default value is [0,0,0,1]
.
public renderOrder: * source
public get rotation: Number[] source
Gets the Mesh's local rotation, as Euler angles given in degrees, for each of the X, Y and Z axis.
Default value is [0,0,0]
.
public set rotation: Number[] source
Sets the Mesh's local rotation, as Euler angles given in degrees, for each of the X, Y and Z axis.
Default value is [0,0,0]
.
public get rtcCenter: Float64Array source
Gets the World-space origin for this Mesh.
Deprecated and replaced by Mesh#origin.
public set rtcCenter: Float64Array source
Sets the World-space origin for this Mesh.
Deprecated and replaced by Mesh#origin.
public get abstract saoEnabled: Boolean source
Gets if this Mesh can have Scalable Ambient Obscurance (SAO) applied to it.
SAO is configured by SAO.
public get selected: Boolean source
Gets if this Mesh is selected.
Selected appearance is configured by the EmphasisMaterial referenced by Mesh#selectedMaterial.
When Mesh#isObject and Mesh#selected are both `true
the Mesh will be
registered by Mesh#id in Scene#selectedObjects.
public set selected: Boolean source
Sets if this Mesh is selected.
Selected appearance is configured by the EmphasisMaterial referenced by Mesh#selectedMaterial.
When Mesh#isObject and Mesh#selected are both `true
the Mesh will be
registered by Mesh#id in Scene#selectedObjects.
public get selectedMaterial: EmphasisMaterial source
Defines the appearance of this Mesh when selected.
Mesh is xrayed when Mesh#selected is true
.
Set to Scene#selectedMaterial by default.
public get stationary: Boolean source
Gets if the Node's position is stationary.
When true, will disable the effect of Camera translations for this Mesh, while still allowing it to rotate. This is useful for skyboxes.
public get visible: Boolean source
Gets if this Mesh is visible.
Only rendered when Mesh#visible is true
and Mesh#culled is false
.
When Mesh#isObject and Mesh#visible are both true
the Mesh will be
registered by Mesh#id in Scene#visibleObjects.
public set visible: Boolean source
Sets if this Mesh is visible.
Only rendered when Mesh#visible is true
and Mesh#culled is false
.
When Mesh#isObject and Mesh#visible are both true
the Mesh will be
registered by Mesh#id in Scene#visibleObjects.
public get worldMatrix: Number[] source
Gets the Mesh's World matrix.
Properties:
Name | Type | Attribute | Description |
worldMatrix | * |
public get xrayMaterial: EmphasisMaterial source
Defines the appearance of this Mesh when xrayed.
Mesh is xrayed when Mesh#xrayed is true
.
Set to Scene#xrayMaterial by default.
public get xrayed: Boolean source
Gets if this Mesh is xrayed.
XRayed appearance is configured by the EmphasisMaterial referenced by Mesh#xrayMaterial.
When Mesh#isObject and Mesh#xrayed are both `true
the Mesh will be
registered by Mesh#id in Scene#xrayedObjects.
public set xrayed: Boolean source
Sets if this Mesh is xrayed.
XRayed appearance is configured by the EmphasisMaterial referenced by Mesh#xrayMaterial.
When Mesh#isObject and Mesh#xrayed are both `true
the Mesh will be
registered by Mesh#id in Scene#xrayedObjects.
Public Methods
public rotate(axis: Number[], angle: Number): * source
Rotates the Mesh about the given local axis by the given increment.
Return:
* |
public rotateOnWorldAxis(axis: Number[], angle: Number): * source
Rotates the Mesh about the given World-space axis by the given increment.
Return:
* |
public rotateX(angle: Number): * source
Rotates the Mesh about the local X-axis by the given increment.
Params:
Name | Type | Attribute | Description |
angle | Number | Angle increment in degrees. |
Return:
* |
public rotateY(angle: Number): * source
Rotates the Mesh about the local Y-axis by the given increment.
Params:
Name | Type | Attribute | Description |
angle | Number | Angle increment in degrees. |
Return:
* |
public rotateZ(angle: Number): * source
Rotates the Mesh about the local Z-axis by the given increment.
Params:
Name | Type | Attribute | Description |
angle | Number | Angle increment in degrees. |
Return:
* |
public stateSortCompare(mesh1: Mesh, mesh2: Mesh): number source
Comparison function used by the renderer to determine the order in which xeokit should render the Mesh, relative to to other Meshes.
xeokit requires this method because Mesh implements Drawable.
Sorting is essential for rendering performance, so that xeokit is able to avoid needlessly applying runs of the same rendering state changes to the GPU, ie. can collapse them.
public translate(axis: Number[], distance: Number): * source
Translates the Mesh along local space vector by the given increment.
Return:
* |
public translateX(distance: Number): * source
Translates the Mesh along the local X-axis by the given increment.
Params:
Name | Type | Attribute | Description |
distance | Number | Distance to translate along the X-axis. |
Return:
* |