babylon.mesh.vertexData.d.ts 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. declare module BABYLON {
  2. interface IGetSetVerticesData {
  3. isVerticesDataPresent(kind: string): boolean;
  4. getVerticesData(kind: string): number[];
  5. getIndices(): number[];
  6. setVerticesData(kind: string, data: number[], updatable?: boolean): void;
  7. updateVerticesData(kind: string, data: number[], updateExtends?: boolean, makeItUnique?: boolean): void;
  8. setIndices(indices: number[]): void;
  9. }
  10. class VertexData {
  11. public positions: number[];
  12. public normals: number[];
  13. public uvs: number[];
  14. public uv2s: number[];
  15. public colors: number[];
  16. public matricesIndices: number[];
  17. public matricesWeights: number[];
  18. public indices: number[];
  19. public set(data: number[], kind: string): void;
  20. public applyToMesh(mesh: Mesh, updatable?: boolean): void;
  21. public applyToGeometry(geometry: Geometry, updatable?: boolean): void;
  22. public updateMesh(mesh: Mesh, updateExtends?: boolean, makeItUnique?: boolean): void;
  23. public updateGeometry(geometry: Geometry, updateExtends?: boolean, makeItUnique?: boolean): void;
  24. private _applyTo(meshOrGeometry, updatable?);
  25. private _update(meshOrGeometry, updateExtends?, makeItUnique?);
  26. public transform(matrix: Matrix): void;
  27. public merge(other: VertexData): void;
  28. static ExtractFromMesh(mesh: Mesh): VertexData;
  29. static ExtractFromGeometry(geometry: Geometry): VertexData;
  30. private static _ExtractFrom(meshOrGeometry);
  31. static CreateBox(size: number): VertexData;
  32. static CreateSphere(segments: number, diameter: number): VertexData;
  33. static CreateCylinder(height: number, diameterTop: number, diameterBottom: number, tessellation: number, subdivisions?: number): VertexData;
  34. static CreateTorus(diameter: any, thickness: any, tessellation: any): VertexData;
  35. static CreateLines(points: Vector3[]): VertexData;
  36. static CreateGround(width: number, height: number, subdivisions: number): VertexData;
  37. static CreateTiledGround(xmin: number, zmin: number, xmax: number, zmax: number, subdivisions?: {
  38. w: number;
  39. h: number;
  40. }, precision?: {
  41. w: number;
  42. h: number;
  43. }): VertexData;
  44. static CreateGroundFromHeightMap(width: number, height: number, subdivisions: number, minHeight: number, maxHeight: number, buffer: Uint8Array, bufferWidth: number, bufferHeight: number): VertexData;
  45. static CreatePlane(size: number): VertexData;
  46. static CreateTorusKnot(radius: number, tube: number, radialSegments: number, tubularSegments: number, p: number, q: number): VertexData;
  47. static ComputeNormals(positions: number[], indices: number[], normals: number[]): void;
  48. }
  49. }