NormalizeEditor.js 611 B

12345678910111213141516171819202122232425262728
  1. import { LabelElement } from '../../libs/flow.module.js';
  2. import { BaseNode } from '../core/BaseNode.js';
  3. import { Vector3 } from 'three';
  4. import { MathNode, UniformNode } from 'three-nodes/Nodes.js';
  5. const DEFAULT_VALUE = new UniformNode( new Vector3() );
  6. export class NormalizeEditor extends BaseNode {
  7. constructor() {
  8. const node = new MathNode( MathNode.NORMALIZE, DEFAULT_VALUE );
  9. super( 'Normalize', 3, node, 175 );
  10. const input = new LabelElement( 'A' ).setInput( 3 );
  11. input.onConnect( () => {
  12. node.aNode = input.getLinkedObject() || DEFAULT_VALUE;
  13. } );
  14. this.add( input );
  15. }
  16. }