Loading...
Searching...
No Matches
Ogre::Volume::GridSource Class Referenceabstract
Optional Components » Volume

A volume source from a discrete 3d grid. More...

`#include <OgreVolumeGridSource.h>`

Inheritance diagram for Ogre::Volume::GridSource:
[legend]

## Public Member Functions

| GridSource (bool trilinearValue, bool trilinearGradient, bool sobelGradient)
virtual | ~GridSource (void)
| Destructor.
virtual void | combineWithSource (CSGOperationSource *operation, Source *source, const Vector3 &center, Real radius)
| Updates this grid with another source in a certain area.
size_t | getDepth (void) const
| Gets the depth of the texture.
size_t | getHeight (void) const
| Gets the height of the texture.
Real | getValue (const Vector3 &position) const override
| Overridden from VolumeSource.
Vector4 | getValueAndGradient (const Vector3 &position) const override
| Overridden from VolumeSource.
Real | getVolumeSpaceToWorldSpaceFactor (void) const
| Overridden from VolumeSource.
size_t | getWidth (void) const
| Gets the width of the texture.
Public Member Functions inherited from Ogre::Volume::Source
virtual | ~Source (void)
| Destructor.
bool | getFirstRayIntersection (const Ray &ray, Vector3 &result, Real scale=(Real) 1.0, size_t maxIterations=5000, Real maxDistance=(Real) 10000.0) const
| Gets the first intersection of a ray with the volume.
Real | getVolumeSpaceToWorldSpaceFactor (void) const
| Gets a factor to come from volume coordinate to world coordinate.
void | serialize (const Vector3 &from, const Vector3 &to, float voxelWidth, const String &file)
| Serializes a volume source to a discrete grid file with deflated compression.
void | serialize (const Vector3 &from, const Vector3 &to, float voxelWidth, Real maxClampedAbsoluteDensity, const String &file)
| Same as the other serialize function but with a user definable maximum absolute density value.

## Additional Inherited Members

Static Public Attributes inherited from Ogre::Volume::Source
static const size_t | SERIALIZATION_CHUNK_SIZE
| The amount of items being written as one chunk during serialization.
static const uint32 | VOLUME_CHUNK_ID
| The id of volume files.
static const uint16 | VOLUME_CHUNK_VERSION
| The version of volume files.

## Detailed Description

A volume source from a discrete 3d grid.

## Constructor & Destructor Documentation

## GridSource()

Ogre::Volume::GridSource::GridSource | ( | bool | trilinearValue,
|  | bool | trilinearGradient,
|  | bool | sobelGradient )

## ~GridSource()

virtual Ogre::Volume::GridSource::~GridSource | ( | void |  | ) |

virtual

Destructor.

## Member Function Documentation

## getValueAndGradient()

Vector4 Ogre::Volume::GridSource::getValueAndGradient | ( | const Vector3 & | position | ) | const

override virtual

Overridden from VolumeSource.

Implements Ogre::Volume::Source.

## getValue()

Real Ogre::Volume::GridSource::getValue | ( | const Vector3 & | position | ) | const

override virtual

Overridden from VolumeSource.

Implements Ogre::Volume::Source.

## getWidth()

size_t Ogre::Volume::GridSource::getWidth | ( | void |  | ) | const

Gets the width of the texture.

Returns
  The width of the texture.

## getHeight()

size_t Ogre::Volume::GridSource::getHeight | ( | void |  | ) | const

Gets the height of the texture.

Returns
  The height of the texture.

## getDepth()

size_t Ogre::Volume::GridSource::getDepth | ( | void |  | ) | const

Gets the depth of the texture.

Returns
  The depth of the texture.

## combineWithSource()

virtual void Ogre::Volume::GridSource::combineWithSource | ( | CSGOperationSource * | operation,
|  | Source * | source,
|  | const Vector3 & | center,
|  | Real | radius )

virtual

Updates this grid with another source in a certain area.

Use it for example to add spheres as a brush.

Parameters

  operation | The operation to use, will use this source and the other given one as operands. Beware that this function overrides the maybe existing sources in the operation.
  source | The other source to combine this one with.
  center | The rough center of the affected area by the operation. If the other source is a sphere, take its center for example.
  radius | The radius of the affected area. For the example sphere, you might use its radius times two because the density outside of the sphere is needed, too.

## getVolumeSpaceToWorldSpaceFactor()

Real Ogre::Volume::GridSource::getVolumeSpaceToWorldSpaceFactor | ( | void |  | ) | const

Overridden from VolumeSource.

The documentation for this class was generated from the following file:

- OgreVolumeGridSource.h