Sphere

components/meshes/ Sphere

Constructor

.new Sphere(paramsopt)

Sphere class is used to create sphere objects by its radius property and other values that determines its detality.

It is similar to THREE.SphereGeometry, but it also contains all Shape properties, such as material, mass and vectors like position (pos) and rotation (rot).

Then it creates an Three.js mesh or a Physijs mesh, that is similar to Three.js mesh, but it also take into consideration collision calculations. This mesh is a combination of Three.js geometry and Physijs material (The same as in three.js, but with friction and restitution).

Source:
Parameters:
Name Type Attributes Description
params Object <optional>

The params.

Example

Creating a Sphere, and adding it to app

new Sphere({
  geometry: {
    radius: 2
  },

  material: new THREE.MeshBasicMaterial({
    color: 0xffffff
  }),

  position: {
    y: 100
  }
}).addTo(app);

Extends module:core.MeshComponent

Members

(private) ._wait :Array

Array of promises that should be resolved before Component is ready.

Inherited From:
Source:

.children :Array

Collection of child Components.

Inherited From:
Source:

.defaults :Object

Default values for parameters

Overrides:
Default Value:
                  
    {
      geometry: {
        radius: 1,
        widthSegments: 8,
        heightSegments: 6
    }
    
Source:

.instructions :Object

Instructions

Overrides:
Default Value:
                  
    {
      geometry: ['radius', 'widthSegments', 'heightSegments']
    }
    
Source:

.isDeffered :Boolean

Returns whether the object is async (wait promises are more than 0).

Inherited From:
Source:

.manager :ModuleManager

Returns the ModuleManager used for this component.

Inherited From:
Source:

.modules :Array

Collection of modules.

Inherited From:
Source:

.native :Object

Returns the native object used for this component.

Inherited From:
Source:

Methods

(static) .build(params) → {THREE.Mesh}

Build livecycle creates a mesh using input params.

Source:
Parameters:
Name Type Description
params Object

Component parameters.

.add(object) → {Promise}

Add a child Component.

Inherited From:
Source:
Parameters:
Name Type Description
object Component

Component that should be added as a child.

.addTo(object)

Adds this Component to specified App/Component.

Inherited From:
Source:
Parameters:
Name Type Description
object Component

Component that will be a parent of this.

.clone() → {MeshComponent}

Make a clone of this MeshComponent using .copy()

Inherited From:
Source:

.copy() → {this}

Copy source transforms & execute Component.copy()

Inherited From:
Source:

.defer(func)

Execute func (Callback) when Component is ready.

Inherited From:
Source:
Parameters:
Name Type Description
func function

Callback.

.remove(object)

Remove a child Component.

Inherited From:
Source:
Parameters:
Name Type Description
object Component

Component that should be a child of this Component.

.updateParams() → {Object}

Updates parameters of the Component.

Inherited From:
Source:

.wait(promiseopt) → {Promise}

Wait for a promise.

Inherited From:
Source:
Parameters:
Name Type Attributes Description
promise Promise <optional>

The promise that should be added to a queue.

.wrap() → {Promise}

Wraps transforms (position & rotation)

Inherited From:
Source: