Viewport.Camera.js 783 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import { UISelect } from './libs/ui.js';
  2. function ViewportCamera( editor ) {
  3. var signals = editor.signals;
  4. //
  5. var cameraSelect = new UISelect();
  6. cameraSelect.setPosition( 'absolute' );
  7. cameraSelect.setRight( '10px' );
  8. cameraSelect.setTop( '10px' );
  9. cameraSelect.onChange( function () {
  10. editor.setViewportCamera( this.getValue() );
  11. } );
  12. signals.cameraAdded.add( update );
  13. signals.cameraRemoved.add( update );
  14. update();
  15. //
  16. function update() {
  17. var options = {};
  18. var cameras = editor.cameras;
  19. for ( var key in cameras ) {
  20. var camera = cameras[ key ];
  21. options[ camera.uuid ] = camera.name;
  22. }
  23. cameraSelect.setOptions( options );
  24. cameraSelect.setValue( editor.viewportCamera.uuid );
  25. }
  26. return cameraSelect;
  27. }
  28. export { ViewportCamera };