GridHelper.js 971 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. /**
  2. * @author mrdoob / http://mrdoob.com/
  3. */
  4. THREE.GridHelper = function ( size, step ) {
  5. var geometry = new THREE.Geometry();
  6. var material = new THREE.LineBasicMaterial( { vertexColors: THREE.VertexColors } );
  7. this.color1 = new THREE.Color( 0x444444 );
  8. this.color2 = new THREE.Color( 0x888888 );
  9. for ( var i = - size; i <= size; i += step ) {
  10. geometry.vertices.push(
  11. new THREE.Vector3( - size, 0, i ), new THREE.Vector3( size, 0, i ),
  12. new THREE.Vector3( i, 0, - size ), new THREE.Vector3( i, 0, size )
  13. );
  14. var color = i === 0 ? this.color1 : this.color2;
  15. geometry.colors.push( color, color, color, color );
  16. }
  17. THREE.Line.call( this, geometry, material, THREE.LinePieces );
  18. };
  19. THREE.GridHelper.prototype = Object.create( THREE.Line.prototype );
  20. THREE.GridHelper.prototype.setColors = function( colorCenterLine, colorGrid ) {
  21. this.color1.set( colorCenterLine );
  22. this.color2.set( colorGrid );
  23. this.geometry.colorsNeedUpdate = true;
  24. }