SphereGeometry

Creates a sphere geometry

description

see http://doc.babylonjs.com/how_to/set_shapes#sphere

Hierarchy

  • _PrimitiveGeometry
    • SphereGeometry

Implements

Index

Constructors

constructor

  • new SphereGeometry(id: string, scene: Scene, segments: number, diameter: number, canBeRegenerated?: boolean, mesh?: Nullable<Mesh>, side?: number): SphereGeometry
  • Create a new sphere geometry

    Parameters

    • id: string

      defines the unique ID of the geometry

    • scene: Scene

      defines the hosting scene

    • segments: number

      defines the number of segments to use to create the sphere

    • diameter: number

      defines the diameter of the sphere

    • Optional canBeRegenerated: boolean

      defines if the geometry supports being regenerated with new parameters (false by default)

    • Optional mesh: Nullable<Mesh>

      defines the hosting mesh (can be null)

    • Optional side: number

      defines if the created geometry is double sided or not (default is BABYLON.Mesh.DEFAULTSIDE)

    Returns SphereGeometry

Properties

boundingBias

boundingBias: Vector2

Gets or sets the Bias Vector to apply on the bounding elements (box/sphere), the max extend is computed as v += v bias.x + bias.y, the min is computed as v -= v bias.x + bias.y

delayLoadState

delayLoadState: number

Gets the delay loading state of the geometry (none by default which means not delayed)

delayLoadingFile

delayLoadingFile: Nullable<string>

Gets the file containing the data to load when running in delay load state

diameter

diameter: number

Defines the diameter of the sphere

doNotSerialize

doNotSerialize: boolean

Gets a value indicating that the geometry should not be serialized

extend

extend: object

Gets the current extend of the geometry

Type declaration

id

id: string

Gets or sets the unique ID of the geometry

onGeometryUpdated

onGeometryUpdated: function

Callback called when the geometry is updated

Type declaration

    • (geometry: Geometry, kind?: string): void
    • Parameters

      • geometry: Geometry
      • Optional kind: string

      Returns void

segments

segments: number

Defines the number of segments to use to create the sphere

side

side: number

Defines if the created geometry is double sided or not (default is BABYLON.Mesh.DEFAULTSIDE)

Methods

applyToMesh

  • applyToMesh(mesh: Mesh): void
  • Apply current geometry to a given mesh

    Parameters

    • mesh: Mesh

      defines the mesh to apply geometry to

    Returns void

asNewGeometry

  • Clone the geometry

    Parameters

    • id: string

      defines the unique ID of the new geometry

    Returns Geometry

    the new geometry

canBeRegenerated

  • canBeRegenerated(): boolean
  • Gets a value indicating if the geometry supports being regenerated with new parameters (false by default)

    Returns boolean

    true if the geometry can be regenerated

copy

  • Parameters

    • id: string

    Returns Geometry

dispose

  • dispose(): void
  • Free all associated resources

    Returns void

getEngine

getIndexBuffer

  • getIndexBuffer(): Nullable<WebGLBuffer>

getIndices

getScene

getTotalIndices

  • getTotalIndices(): number
  • Return the total number of indices

    Returns number

    the total number of indices

getTotalVertices

  • getTotalVertices(): number

getVertexBuffer

getVertexBuffers

getVerticesData

  • getVerticesData(kind: string, copyWhenShared?: boolean, forceCopy?: boolean): Nullable<FloatArray>
  • Gets a specific vertex data attached to this geometry. Float data is constructed if the vertex buffer data cannot be returned directly.

    Parameters

    • kind: string

      defines the data kind (Position, normal, etc...)

    • Optional copyWhenShared: boolean

      defines if the returned array must be cloned upon returning it if the current geometry is shared between multiple meshes

    • Optional forceCopy: boolean

      defines a boolean indicating that the returned array must be cloned upon returning it

    Returns Nullable<FloatArray>

    a float array containing vertex data

getVerticesDataKinds

  • getVerticesDataKinds(): string[]
  • Gets a list of all attached data kinds (Position, normal, etc...)

    Returns string[]

    a list of string containing all kinds

isDisposed

  • isDisposed(): boolean
  • Gets a value indicating if the geometry is disposed

    Returns boolean

    true if the geometry was disposed

isReady

  • isReady(): boolean
  • Defines if the geometry is ready to use

    Returns boolean

    true if the geometry is ready to be used

isVertexBufferUpdatable

  • isVertexBufferUpdatable(kind: string): boolean
  • Returns a boolean defining if the vertex data for the requested kind is updatable

    Parameters

    • kind: string

      defines the data kind (Position, normal, etc...)

    Returns boolean

    true if the vertex buffer with the specified kind is updatable

isVerticesDataPresent

  • isVerticesDataPresent(kind: string): boolean

load

  • load(scene: Scene, onLoaded?: function): void
  • Load the geometry if it was flagged as delay loaded

    Parameters

    • scene: Scene

      defines the hosting scene

    • Optional onLoaded: function

      defines a callback called when the geometry is loaded

        • (): void
        • Returns void

    Returns void

regenerate

  • regenerate(): void
  • If the geometry supports regeneration, the function will recreates the geometry with updated parameter values

    Returns void

releaseForMesh

  • releaseForMesh(mesh: Mesh, shouldDispose?: boolean): void
  • Release the associated resources for a specific mesh

    Parameters

    • mesh: Mesh

      defines the source mesh

    • Optional shouldDispose: boolean

      defines if the geometry must be disposed if there is no more mesh pointing to it

    Returns void

removeVerticesData

  • removeVerticesData(kind: string): void
  • Removes a specific vertex data

    Parameters

    • kind: string

      defines the data kind (Position, normal, etc...)

    Returns void

serialize

  • serialize(): any
  • Returns any

serializeVerticeData

  • serializeVerticeData(): any
  • Serialize all vertices data into a JSON oject

    Returns any

    a JSON representation of the current geometry data

setAllVerticesData

  • setAllVerticesData(vertexData: VertexData, updatable?: boolean): void

setIndices

  • Creates a new index buffer

    Parameters

    • indices: IndicesArray

      defines the indices to store in the index buffer

    • Optional totalVertices: Nullable<number>

      defines the total number of vertices (could be null)

    • Optional updatable: boolean

      defines if the index buffer must be flagged as updatable (false by default)

    Returns void

setVerticesBuffer

  • Affect a vertex buffer to the geometry. the vertexBuffer.getKind() function is used to determine where to store the data

    Parameters

    • buffer: VertexBuffer

      defines the vertex buffer to use

    • Optional totalVertices: Nullable<number>

      defines the total number of vertices for position kind (could be null)

    Returns void

setVerticesData

  • setVerticesData(kind: string, data: FloatArray, updatable?: boolean): void

toLeftHanded

  • toLeftHanded(): void
  • Invert the geometry to move from a right handed system to a left handed one.

    Returns void

updateIndices

  • updateIndices(indices: IndicesArray, offset?: number): void
  • Update index buffer

    Parameters

    • indices: IndicesArray

      defines the indices to store in the index buffer

    • Optional offset: number

      defines the offset in the target buffer where to store the data

    Returns void

updateVerticesData

  • updateVerticesData(kind: string, data: FloatArray, updateExtends?: boolean): void
  • Update a specific vertex buffer This function will create a new buffer if the current one is not updatable

    Parameters

    • kind: string

      defines the data kind (Position, normal, etc...)

    • data: FloatArray

      defines the data to use

    • Optional updateExtends: boolean

      defines if the geometry extends must be recomputed (false by default)

    Returns void

updateVerticesDataDirectly

  • updateVerticesDataDirectly(kind: string, data: DataArray, offset: number, useBytes?: boolean): void
  • Update a specific vertex buffer This function will directly update the underlying WebGLBuffer according to the passed numeric array or Float32Array It will do nothing if the buffer is not updatable

    Parameters

    • kind: string

      defines the data kind (Position, normal, etc...)

    • data: DataArray

      defines the data to use

    • offset: number

      defines the offset in the target buffer where to store the data

    • Optional useBytes: boolean

      set to true if the offset is in bytes

    Returns void

Static CreateGeometryForMesh

  • Static function used to attach a new empty geometry to a mesh

    Parameters

    • mesh: Mesh

      defines the mesh to attach the geometry to

    Returns Geometry

    the new {BABYLON.Geometry}

Static ExtractFromMesh

  • Extracts a clone of a mesh geometry

    Parameters

    • mesh: Mesh

      defines the source mesh

    • id: string

      defines the unique ID of the new geometry object

    Returns Nullable<Geometry>

    the new geometry object

Static Parse

Static RandomId

  • RandomId(): string

Generated using TypeDoc