Replaced constants with functions for type traits.
This commit is contained in:
@ -54,7 +54,7 @@ void createSphereInVolume(SimpleVolume<MaterialDensityPair44>& volData, float fR
|
||||
if(fDistToCenter <= fRadius)
|
||||
{
|
||||
//Our new density value
|
||||
uint8_t uDensity = VoxelTypeTraits<MaterialDensityPair44>::MaxDensity;
|
||||
uint8_t uDensity = VoxelTypeTraits<MaterialDensityPair44>::maxDensity();
|
||||
|
||||
//Get the old voxel
|
||||
MaterialDensityPair44 voxel = volData.getVoxelAt(x,y,z);
|
||||
|
@ -48,7 +48,7 @@ void createSphereInVolume(LargeVolume<MaterialDensityPair44>& volData, float fRa
|
||||
//then we make it solid, otherwise we make it empty space.
|
||||
if(fDistToCenter <= fRadius)
|
||||
{
|
||||
volData.setVoxelAt(x,y,z, MaterialDensityPair44(uValue, uValue > 0 ? VoxelTypeTraits<MaterialDensityPair44>::MaxDensity : VoxelTypeTraits<MaterialDensityPair44>::MinDensity));
|
||||
volData.setVoxelAt(x,y,z, MaterialDensityPair44(uValue, uValue > 0 ? VoxelTypeTraits<MaterialDensityPair44>::maxDensity() : VoxelTypeTraits<MaterialDensityPair44>::minDensity()));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -57,8 +57,8 @@ void createSphereInVolume(LargeVolume<MaterialDensityPair44>& volData, float fRa
|
||||
|
||||
void createCubeInVolume(LargeVolume<MaterialDensityPair44>& volData, Vector3DInt32 lowerCorner, Vector3DInt32 upperCorner, uint8_t uValue)
|
||||
{
|
||||
int maxDen = VoxelTypeTraits<MaterialDensityPair44>::MaxDensity;
|
||||
int minDen = VoxelTypeTraits<MaterialDensityPair44>::MinDensity;
|
||||
int maxDen = VoxelTypeTraits<MaterialDensityPair44>::maxDensity();
|
||||
int minDen = VoxelTypeTraits<MaterialDensityPair44>::minDensity();
|
||||
//This three-level for loop iterates over every voxel between the specified corners
|
||||
for (int z = lowerCorner.getZ(); z <= upperCorner.getZ(); z++)
|
||||
{
|
||||
|
@ -97,9 +97,9 @@ int main(int argc, char *argv[])
|
||||
createCubeInVolume(volData, Vector3DInt32(midPos+1, minPos, midPos+1), Vector3DInt32(maxPos, midPos-1, maxPos), 0);
|
||||
createCubeInVolume(volData, Vector3DInt32(minPos, midPos+1, midPos+1), Vector3DInt32(midPos-1, maxPos, maxPos), 0);
|
||||
|
||||
createCubeInVolume(volData, Vector3DInt32(1, midPos-10, midPos-10), Vector3DInt32(maxPos-1, midPos+10, midPos+10), VoxelTypeTraits<MaterialDensityPair44>::MaxDensity);
|
||||
createCubeInVolume(volData, Vector3DInt32(midPos-10, 1, midPos-10), Vector3DInt32(midPos+10, maxPos-1, midPos+10), VoxelTypeTraits<MaterialDensityPair44>::MaxDensity);
|
||||
createCubeInVolume(volData, Vector3DInt32(midPos-10, midPos-10 ,1), Vector3DInt32(midPos+10, midPos+10, maxPos-1), VoxelTypeTraits<MaterialDensityPair44>::MaxDensity);
|
||||
createCubeInVolume(volData, Vector3DInt32(1, midPos-10, midPos-10), Vector3DInt32(maxPos-1, midPos+10, midPos+10), VoxelTypeTraits<MaterialDensityPair44>::maxDensity());
|
||||
createCubeInVolume(volData, Vector3DInt32(midPos-10, 1, midPos-10), Vector3DInt32(midPos+10, maxPos-1, midPos+10), VoxelTypeTraits<MaterialDensityPair44>::maxDensity());
|
||||
createCubeInVolume(volData, Vector3DInt32(midPos-10, midPos-10 ,1), Vector3DInt32(midPos+10, midPos+10, maxPos-1), VoxelTypeTraits<MaterialDensityPair44>::maxDensity());
|
||||
|
||||
//Smooth part of the volume
|
||||
RawVolume<MaterialDensityPair44> tempVolume(PolyVox::Region(0,0,0,128, 128, 128));
|
||||
|
@ -50,7 +50,7 @@ void createPerlinVolumeSlow(LargeVolume<MaterialDensityPair44>& volData)
|
||||
|
||||
perlinVal += 1.0f;
|
||||
perlinVal *= 0.5f;
|
||||
perlinVal *= VoxelTypeTraits<MaterialDensityPair44>::MaxDensity;
|
||||
perlinVal *= VoxelTypeTraits<MaterialDensityPair44>::maxDensity();
|
||||
|
||||
MaterialDensityPair44 voxel;
|
||||
|
||||
@ -60,12 +60,12 @@ void createPerlinVolumeSlow(LargeVolume<MaterialDensityPair44>& volData)
|
||||
/*if(perlinVal < 0.0f)
|
||||
{
|
||||
voxel.setMaterial(245);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MaxDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::maxDensity());
|
||||
}
|
||||
else
|
||||
{
|
||||
voxel.setMaterial(0);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MinDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::minDensity());
|
||||
}*/
|
||||
|
||||
volData.setVoxelAt(x, y, z, voxel);
|
||||
@ -105,12 +105,12 @@ void createPerlinVolumeSlow(LargeVolume<MaterialDensityPair44>& volData)
|
||||
if(perlinVal < 0.0f)
|
||||
{
|
||||
voxel.setMaterial(245);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MaxDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::maxDensity());
|
||||
}
|
||||
else
|
||||
{
|
||||
voxel.setMaterial(0);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MinDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::minDensity());
|
||||
}
|
||||
|
||||
volData.setVoxelAt(x, y, z, voxel);
|
||||
@ -143,12 +143,12 @@ void createPerlinTerrain(LargeVolume<MaterialDensityPair44>& volData)
|
||||
if(z < perlinVal)
|
||||
{
|
||||
voxel.setMaterial(245);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MaxDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::maxDensity());
|
||||
}
|
||||
else
|
||||
{
|
||||
voxel.setMaterial(0);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MinDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::minDensity());
|
||||
}
|
||||
|
||||
volData.setVoxelAt(x, y, z, voxel);
|
||||
@ -181,7 +181,7 @@ void createSphereInVolume(LargeVolume<MaterialDensityPair44>& volData, Vector3DF
|
||||
if(fDistToCenter <= fRadius)
|
||||
{
|
||||
//Our new density value
|
||||
uint8_t uDensity = VoxelTypeTraits<MaterialDensityPair44>::MaxDensity;
|
||||
uint8_t uDensity = VoxelTypeTraits<MaterialDensityPair44>::maxDensity();
|
||||
|
||||
//Get the old voxel
|
||||
MaterialDensityPair44 voxel = volData.getVoxelAt(x,y,z);
|
||||
@ -219,17 +219,17 @@ void load(const ConstVolumeProxy<MaterialDensityPair44>& volume, const PolyVox::
|
||||
if((x-xpos)*(x-xpos) + (z-zpos)*(z-zpos) < 200) {
|
||||
// tunnel
|
||||
voxel.setMaterial(0);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MinDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::minDensity());
|
||||
} else {
|
||||
// solid
|
||||
voxel.setMaterial(245);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MaxDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::maxDensity());
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
voxel.setMaterial(0);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::MinDensity);
|
||||
voxel.setDensity(VoxelTypeTraits<MaterialDensityPair44>::minDensity());
|
||||
}
|
||||
|
||||
volume.setVoxelAt(x, y, z, voxel);
|
||||
|
@ -55,8 +55,8 @@ void createSphereInVolume(SimpleVolume<Density8>& volData, float fRadius)
|
||||
if(fDistToCenter <= fRadius)
|
||||
{
|
||||
//Our new density value
|
||||
//uint8_t uDensity = Density8::getMaxDensity();
|
||||
uint8_t uDensity = VoxelTypeTraits<Density8>::MaxDensity;
|
||||
//uint8_t uDensity = Density8::getmaxDensity()();
|
||||
uint8_t uDensity = VoxelTypeTraits<Density8>::maxDensity();
|
||||
|
||||
//Get the old voxel
|
||||
Density8 voxel = volData.getVoxelAt(x,y,z);
|
||||
|
Reference in New Issue
Block a user