Buckets:
| import { LineSegments } from '../objects/LineSegments.js'; | |
| import { LineBasicMaterial } from '../materials/LineBasicMaterial.js'; | |
| import { Float32BufferAttribute } from '../core/BufferAttribute.js'; | |
| import { BufferGeometry } from '../core/BufferGeometry.js'; | |
| import { Color } from '../math/Color.js'; | |
| class AxesHelper extends LineSegments { | |
| constructor( size = 1 ) { | |
| const vertices = [ | |
| 0, 0, 0, size, 0, 0, | |
| 0, 0, 0, 0, size, 0, | |
| 0, 0, 0, 0, 0, size | |
| ]; | |
| const colors = [ | |
| 1, 0, 0, 1, 0.6, 0, | |
| 0, 1, 0, 0.6, 1, 0, | |
| 0, 0, 1, 0, 0.6, 1 | |
| ]; | |
| const geometry = new BufferGeometry(); | |
| geometry.setAttribute( 'position', new Float32BufferAttribute( vertices, 3 ) ); | |
| geometry.setAttribute( 'color', new Float32BufferAttribute( colors, 3 ) ); | |
| const material = new LineBasicMaterial( { vertexColors: true, toneMapped: false } ); | |
| super( geometry, material ); | |
| this.type = 'AxesHelper'; | |
| } | |
| setColors( xAxisColor, yAxisColor, zAxisColor ) { | |
| const color = new Color(); | |
| const array = this.geometry.attributes.color.array; | |
| color.set( xAxisColor ); | |
| color.toArray( array, 0 ); | |
| color.toArray( array, 3 ); | |
| color.set( yAxisColor ); | |
| color.toArray( array, 6 ); | |
| color.toArray( array, 9 ); | |
| color.set( zAxisColor ); | |
| color.toArray( array, 12 ); | |
| color.toArray( array, 15 ); | |
| this.geometry.attributes.color.needsUpdate = true; | |
| return this; | |
| } | |
| dispose() { | |
| this.geometry.dispose(); | |
| this.material.dispose(); | |
| } | |
| } | |
| export { AxesHelper }; | |
Xet Storage Details
- Size:
- 1.49 kB
- Xet hash:
- fe75eaeba687f3f9e4fffd94b3f15cf0f7e15fb41c166322226d4b4cfd86757f
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.