.new Importer(paramsopt)
Importer is a loader for meshes and any other data to your scene
- Source:
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
params |
Object
|
<optional> |
The params. |
Example
Creating a Importer, and adding to app
new Importer({
loader: new THREE.OBJLoader(),
parser(geometry, material) { // data from loader
return new THREE.Mesh(geometry, material); // should return your .native (mesh in this case)
},
position: [0, 100, 0]
}).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:
{ url: '', loader: new JSONLoader(), onLoad() {}, onProgress() {}, onError() {}, texturePath: null, useCustomMaterial: false, parser(geometry, materials) { return new Mesh(geometry, materials); } }- Source:
.instructions :Object
Static instructions
- Inherited From:
- Default Value:
{ position: ['x', 'y', 'z'], rotation: ['x', 'y', 'z'], scale: ['x', 'y', 'z'] }- 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. |
(static) .filter(object, filter) → {THREE.Mesh}
Default values for parameters
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
object |
THREE.Mesh
|
Instance for iterating through it's children. |
filter |
function
|
Function with child as argument, should return a boolean whether include the child or not. |
Example
Removing unnecessary lights from children
new Icosahedron({
loader: new THREE.OBJLoader(),
parse(group) { // data from loader
return Importer.filter(group, child => !child.isLight); // remove lights
},
position: [0, 100, 0]
}).addTo(app);
.add(object) → {Promise}
Add a child Component.
- Inherited From:
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
object |
Component
|
Component that should be added as a |
.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 |
.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: