Dice249UV.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. var Dice249UV = function () {
  2. var scope = this;
  3. THREE.Geometry.call(this);
  4. v( -1.000000, -1.000000, 1.000000 );
  5. v( -1.000000, 1.000000, 1.000000 );
  6. v( 1.000000, -1.000000, 1.000000 );
  7. v( 1.000000, 1.000000, 1.000000 );
  8. v( 1.000000, -1.000000, -1.000000 );
  9. v( 1.000000, 1.000000, -1.000000 );
  10. v( -1.000000, -1.000000, -1.000000 );
  11. v( -1.000000, 1.000000, -1.000000 );
  12. f4( 0, 2, 3, 1, -0.577349, -0.577349, 0.577349 );
  13. f4( 2, 4, 5, 3, 0.577349, -0.577349, 0.577349 );
  14. f4( 4, 6, 7, 5, 0.577349, -0.577349, -0.577349 );
  15. f4( 6, 0, 1, 7, -0.577349, -0.577349, -0.577349 );
  16. f4( 1, 3, 5, 7, -0.577349, 0.577349, 0.577349 );
  17. f4( 2, 0, 6, 4, 0.577349, -0.577349, 0.577349 );
  18. uv( 0.011675, 0.325550, 0.488325, 0.325550, 0.488325, 0.007784, 0.011675, 0.007784);
  19. uv( 0.511675, 0.325550, 0.988325, 0.325550, 0.988325, 0.007784, 0.511675, 0.007784);
  20. uv( 0.011675, 0.658883, 0.488325, 0.658883, 0.488325, 0.341117, 0.011675, 0.341117);
  21. uv( 0.511675, 0.658883, 0.988325, 0.658883, 0.988325, 0.341117, 0.511675, 0.341117);
  22. uv( 0.011675, 0.992216, 0.488325, 0.992216, 0.488325, 0.674450, 0.011675, 0.674450);
  23. uv( 0.988325, 0.674450, 0.511675, 0.674450, 0.511675, 0.992216, 0.988325, 0.992216);
  24. function v( x, y, z ) {
  25. scope.vertices.push( new THREE.Vertex( new THREE.Vector3( x, y, z ) ) );
  26. }
  27. function f3( a, b, c, nx, ny, nz ) {
  28. scope.faces.push( new THREE.Face3( a, b, c, nx && ny && nz ? new THREE.Vector3( nx, ny, nz ) : null ) );
  29. }
  30. function f4( a, b, c, d, nx, ny, nz ) {
  31. scope.faces.push( new THREE.Face4( a, b, c, d, nx && ny && nz ? new THREE.Vector3( nx, ny, nz ) : null ) );
  32. }
  33. function uv( u1, v1, u2, v2, u3, v3, u4, v4 ) {
  34. var uv = [];
  35. uv.push( new THREE.UV( u1, v1 ) );
  36. uv.push( new THREE.UV( u2, v2 ) );
  37. uv.push( new THREE.UV( u3, v3 ) );
  38. if ( u4 && v4 ) uv.push( new THREE.UV( u4, v4 ) );
  39. scope.uvs.push( uv );
  40. }
  41. }
  42. Dice249UV.prototype = new THREE.Geometry();
  43. Dice249UV.prototype.constructor = Dice249UV;