mirror of
https://gitlab.kitware.com/vtk/vtk-m
synced 2024-10-05 01:49:02 +00:00
second round of fixes
This commit is contained in:
parent
fae4cc4c79
commit
5d3c9604f2
@ -29,10 +29,9 @@ protected:
|
||||
using TracerType = vtkm::rendering::raytracing::ConnectivityTracer;
|
||||
|
||||
TracerType Tracer;
|
||||
vtkm::cont::Field ScalarField;
|
||||
vtkm::cont::Field EmissionField;
|
||||
vtkm::cont::UnknownCellSet Cells;
|
||||
vtkm::cont::CoordinateSystem Coords;
|
||||
std::string CoordinateName;
|
||||
std::string FieldName;
|
||||
std::string EmissionFieldName;
|
||||
RenderMode Mode;
|
||||
vtkm::Bounds SpatialBounds;
|
||||
ColorMapType ColorMap;
|
||||
@ -41,11 +40,12 @@ protected:
|
||||
bool CompositeBackground;
|
||||
|
||||
public:
|
||||
InternalsType(const vtkm::cont::DataSet& dataSet, const std::string& fieldName)
|
||||
InternalsType(const vtkm::cont::DataSet& dataSet,
|
||||
const std::string& coordinateName,
|
||||
const std::string& fieldName)
|
||||
{
|
||||
Dataset = dataSet;
|
||||
Cells = dataSet.GetCellSet();
|
||||
Coords = dataSet.GetCoordinateSystem();
|
||||
CoordinateName = coordinateName;
|
||||
Mode = RenderMode::Volume;
|
||||
CompositeBackground = true;
|
||||
if (!fieldName.empty())
|
||||
@ -76,8 +76,9 @@ public:
|
||||
VTKM_CONT
|
||||
void SetScalarField(const std::string& fieldName)
|
||||
{
|
||||
ScalarField = Dataset.GetField(fieldName);
|
||||
const vtkm::cont::ArrayHandle<vtkm::Range> range = this->ScalarField.GetRange();
|
||||
this->FieldName = fieldName;
|
||||
const vtkm::cont::ArrayHandle<vtkm::Range> range =
|
||||
this->Dataset.GetField(this->FieldName).GetRange();
|
||||
ScalarRange = range.ReadPortal().Get(0);
|
||||
}
|
||||
|
||||
@ -104,7 +105,7 @@ public:
|
||||
throw vtkm::cont::ErrorBadValue(
|
||||
"Conn Proxy: energy mode must be set before setting emission field");
|
||||
}
|
||||
EmissionField = Dataset.GetField(fieldName);
|
||||
this->EmissionFieldName = fieldName;
|
||||
}
|
||||
|
||||
VTKM_CONT
|
||||
@ -113,7 +114,8 @@ public:
|
||||
VTKM_CONT
|
||||
vtkm::Range GetScalarFieldRange()
|
||||
{
|
||||
const vtkm::cont::ArrayHandle<vtkm::Range> range = this->ScalarField.GetRange();
|
||||
const vtkm::cont::ArrayHandle<vtkm::Range> range =
|
||||
this->Dataset.GetField(this->FieldName).GetRange();
|
||||
ScalarRange = range.ReadPortal().Get(0);
|
||||
return ScalarRange;
|
||||
}
|
||||
@ -130,19 +132,19 @@ public:
|
||||
|
||||
if (this->Mode == RenderMode::Volume)
|
||||
{
|
||||
Tracer.SetVolumeData(this->ScalarField,
|
||||
Tracer.SetVolumeData(this->Dataset.GetField(this->FieldName),
|
||||
this->ScalarRange,
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetGhostCellField());
|
||||
}
|
||||
else
|
||||
{
|
||||
Tracer.SetEnergyData(this->ScalarField,
|
||||
Tracer.SetEnergyData(this->Dataset.GetField(this->FieldName),
|
||||
rays.Buffers.at(0).GetNumChannels(),
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->EmissionField);
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetField(this->EmissionFieldName));
|
||||
}
|
||||
|
||||
Tracer.FullTrace(rays);
|
||||
@ -153,19 +155,19 @@ public:
|
||||
{
|
||||
if (this->Mode == RenderMode::Volume)
|
||||
{
|
||||
Tracer.SetVolumeData(this->ScalarField,
|
||||
Tracer.SetVolumeData(this->Dataset.GetField(this->FieldName),
|
||||
this->ScalarRange,
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetGhostCellField());
|
||||
}
|
||||
else
|
||||
{
|
||||
Tracer.SetEnergyData(this->ScalarField,
|
||||
Tracer.SetEnergyData(this->Dataset.GetField(this->FieldName),
|
||||
rays.Buffers.at(0).GetNumChannels(),
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->EmissionField);
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetField(this->EmissionFieldName));
|
||||
}
|
||||
|
||||
Tracer.FullTrace(rays);
|
||||
@ -177,19 +179,19 @@ public:
|
||||
|
||||
if (this->Mode == RenderMode::Volume)
|
||||
{
|
||||
Tracer.SetVolumeData(this->ScalarField,
|
||||
Tracer.SetVolumeData(this->Dataset.GetField(this->FieldName),
|
||||
this->ScalarRange,
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetGhostCellField());
|
||||
}
|
||||
else
|
||||
{
|
||||
Tracer.SetEnergyData(this->ScalarField,
|
||||
Tracer.SetEnergyData(this->Dataset.GetField(this->FieldName),
|
||||
rays.Buffers.at(0).GetNumChannels(),
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->EmissionField);
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetField(this->EmissionFieldName));
|
||||
}
|
||||
|
||||
return Tracer.PartialTrace(rays);
|
||||
@ -200,19 +202,19 @@ public:
|
||||
{
|
||||
if (this->Mode == RenderMode::Volume)
|
||||
{
|
||||
Tracer.SetVolumeData(this->ScalarField,
|
||||
Tracer.SetVolumeData(this->Dataset.GetField(this->FieldName),
|
||||
this->ScalarRange,
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetGhostCellField());
|
||||
}
|
||||
else
|
||||
{
|
||||
Tracer.SetEnergyData(this->ScalarField,
|
||||
Tracer.SetEnergyData(this->Dataset.GetField(this->FieldName),
|
||||
rays.Buffers.at(0).GetNumChannels(),
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->EmissionField);
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetField(this->EmissionFieldName));
|
||||
}
|
||||
|
||||
return Tracer.PartialTrace(rays);
|
||||
@ -230,16 +232,16 @@ public:
|
||||
rayCamera.SetParameters(
|
||||
camera, (vtkm::Int32)canvas->GetWidth(), (vtkm::Int32)canvas->GetHeight());
|
||||
vtkm::rendering::raytracing::Ray<vtkm::Float32> rays;
|
||||
rayCamera.CreateRays(rays, this->Coords.GetBounds());
|
||||
rayCamera.CreateRays(rays, this->Dataset.GetCoordinateSystem(this->CoordinateName).GetBounds());
|
||||
rays.Buffers.at(0).InitConst(0.f);
|
||||
raytracing::RayOperations::MapCanvasToRays(rays, camera, *canvas);
|
||||
|
||||
if (this->Mode == RenderMode::Volume)
|
||||
{
|
||||
Tracer.SetVolumeData(this->ScalarField,
|
||||
Tracer.SetVolumeData(this->Dataset.GetField(this->FieldName),
|
||||
this->ScalarRange,
|
||||
this->Cells,
|
||||
this->Coords,
|
||||
this->Dataset.GetCellSet(),
|
||||
this->Dataset.GetCoordinateSystem(this->CoordinateName),
|
||||
this->Dataset.GetGhostCellField());
|
||||
}
|
||||
else
|
||||
@ -261,22 +263,31 @@ public:
|
||||
VTKM_CONT
|
||||
ConnectivityProxy::ConnectivityProxy(const vtkm::cont::DataSet& dataSet,
|
||||
const std::string& fieldName)
|
||||
: Internals(std::make_unique<InternalsType>(dataSet, fieldName))
|
||||
: Internals(
|
||||
std::make_unique<InternalsType>(dataSet, dataSet.GetCoordinateSystemName(), fieldName))
|
||||
{
|
||||
}
|
||||
|
||||
VTKM_CONT
|
||||
ConnectivityProxy::ConnectivityProxy(const vtkm::cont::DataSet& dataSet,
|
||||
const std::string& fieldName,
|
||||
const std::string& coordinateName)
|
||||
: Internals(std::make_unique<InternalsType>(dataSet, coordinateName, fieldName))
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
VTKM_CONT
|
||||
ConnectivityProxy::ConnectivityProxy(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField)
|
||||
{
|
||||
vtkm::cont::DataSet dataset;
|
||||
|
||||
dataset.SetCellSet(cellset);
|
||||
dataset.AddCoordinateSystem(coords);
|
||||
dataset.AddField(scalarField);
|
||||
|
||||
Internals = std::make_unique<InternalsType>(dataset, scalarField.GetName());
|
||||
Internals = std::make_unique<InternalsType>(dataset, coords.GetName(), scalarField.GetName());
|
||||
}
|
||||
|
||||
ConnectivityProxy::ConnectivityProxy(const ConnectivityProxy& rhs)
|
||||
|
@ -31,6 +31,11 @@ class VTKM_RENDERING_EXPORT ConnectivityProxy
|
||||
{
|
||||
public:
|
||||
ConnectivityProxy(const vtkm::cont::DataSet& dataset, const std::string& fieldName);
|
||||
|
||||
ConnectivityProxy(const vtkm::cont::DataSet& dataSet,
|
||||
const std::string& fieldName,
|
||||
const std::string& coordinateName);
|
||||
|
||||
ConnectivityProxy(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField);
|
||||
|
@ -25,22 +25,33 @@ void Mapper::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange)
|
||||
{
|
||||
RenderCells(cellset,
|
||||
coords,
|
||||
scalarField,
|
||||
colorTable,
|
||||
camera,
|
||||
scalarRange,
|
||||
make_FieldCell(
|
||||
vtkm::cont::GetGlobalGhostCellFieldName(),
|
||||
vtkm::cont::ArrayHandleConstant<vtkm::UInt8>(0, scalarField.GetNumberOfValues())));
|
||||
RenderCellsImpl(cellset,
|
||||
coords,
|
||||
scalarField,
|
||||
colorTable,
|
||||
camera,
|
||||
scalarRange,
|
||||
make_FieldCell(vtkm::cont::GetGlobalGhostCellFieldName(),
|
||||
vtkm::cont::ArrayHandleConstant<vtkm::UInt8>(
|
||||
0, scalarField.GetNumberOfValues())));
|
||||
};
|
||||
|
||||
void Mapper::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
{
|
||||
RenderCellsImpl(cellset, coords, scalarField, colorTable, camera, scalarRange, ghostField);
|
||||
};
|
||||
|
||||
struct CompareIndices
|
||||
{
|
||||
vtkm::Vec3f CameraDirection;
|
||||
vtkm::Vec3f* Centers;
|
||||
CompareIndices(vtkm::Vec3f* centers, vtkm::Vec3f cameraDirection)
|
||||
std::vector<vtkm::Vec3f>& Centers;
|
||||
CompareIndices(std::vector<vtkm::Vec3f>& centers, vtkm::Vec3f cameraDirection)
|
||||
: CameraDirection(cameraDirection)
|
||||
, Centers(centers)
|
||||
{
|
||||
@ -59,22 +70,23 @@ void Mapper::RenderCellsPartitioned(const vtkm::cont::PartitionedDataSet partiti
|
||||
const vtkm::Range& scalarRange)
|
||||
{
|
||||
// sort partitions back to front for best rendering with the volume renderer
|
||||
vtkm::Vec3f centers[partitionedData.GetNumberOfPartitions()];
|
||||
std::vector<vtkm::Vec3f> centers(partitionedData.GetNumberOfPartitions()); // vector for centers
|
||||
std::vector<int> indices(partitionedData.GetNumberOfPartitions());
|
||||
for (unsigned int p = 0; p < partitionedData.GetNumberOfPartitions(); p++)
|
||||
for (vtkm::Id p = 0; p < partitionedData.GetNumberOfPartitions(); p++)
|
||||
{
|
||||
indices[p] = p;
|
||||
centers[p] = vtkm::cont::BoundsCompute(partitionedData.GetPartition(p)).Center();
|
||||
indices[static_cast<size_t>(p)] = p;
|
||||
centers[static_cast<size_t>(p)] =
|
||||
vtkm::cont::BoundsCompute(partitionedData.GetPartition(p)).Center();
|
||||
}
|
||||
CompareIndices comparator(centers, camera.GetLookAt() - camera.GetPosition());
|
||||
std::sort(indices.begin(), indices.end(), comparator);
|
||||
|
||||
for (unsigned int p = 0; p < partitionedData.GetNumberOfPartitions(); p++)
|
||||
for (vtkm::Id p = 0; p < partitionedData.GetNumberOfPartitions(); p++)
|
||||
{
|
||||
auto partition = partitionedData.GetPartition(indices[p]);
|
||||
auto partition = partitionedData.GetPartition(indices[static_cast<size_t>(p)]);
|
||||
this->RenderCells(partition.GetCellSet(),
|
||||
partition.GetCoordinateSystem(),
|
||||
partition.GetField(fieldName.c_str()),
|
||||
partition.GetField(fieldName),
|
||||
colorTable,
|
||||
camera,
|
||||
scalarRange,
|
||||
|
@ -37,13 +37,13 @@ public:
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange);
|
||||
|
||||
virtual void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) = 0;
|
||||
void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField);
|
||||
|
||||
virtual void RenderCellsPartitioned(const vtkm::cont::PartitionedDataSet partitionedData,
|
||||
const std::string fieldName,
|
||||
@ -65,6 +65,13 @@ protected:
|
||||
vtkm::cont::ArrayHandle<vtkm::Vec4f_32> ColorMap;
|
||||
bool LogarithmX = false;
|
||||
bool LogarithmY = false;
|
||||
c virtual void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) = 0;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -59,13 +59,13 @@ vtkm::rendering::Canvas* MapperConnectivity::GetCanvas() const
|
||||
|
||||
|
||||
VTKM_CONT
|
||||
void MapperConnectivity::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperConnectivity::RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
{
|
||||
vtkm::cont::DataSet dataset;
|
||||
|
||||
|
@ -30,22 +30,19 @@ public:
|
||||
void SetCanvas(vtkm::rendering::Canvas* canvas) override;
|
||||
virtual vtkm::rendering::Canvas* GetCanvas() const override;
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
virtual void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable&, //colorTable
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
vtkm::rendering::Mapper* NewCopy() const override;
|
||||
void CreateDefaultView();
|
||||
|
||||
protected:
|
||||
vtkm::Float32 SampleDistance;
|
||||
CanvasRayTracer* CanvasRT;
|
||||
virtual void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable&, //colorTable
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -115,13 +115,13 @@ void MapperCylinder::SetRadiusDelta(const vtkm::Float32& delta)
|
||||
this->Internals->Delta = delta;
|
||||
}
|
||||
|
||||
void MapperCylinder::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperCylinder::RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& vtkmNotUsed(ghostField))
|
||||
{
|
||||
raytracing::Logger* logger = raytracing::Logger::GetInstance();
|
||||
logger->OpenLogEntry("mapper_cylinder");
|
||||
|
@ -61,16 +61,6 @@ public:
|
||||
*/
|
||||
void SetRadiusDelta(const vtkm::Float32& delta);
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
void SetCompositeBackground(bool on);
|
||||
vtkm::rendering::Mapper* NewCopy() const override;
|
||||
|
||||
@ -79,6 +69,14 @@ private:
|
||||
std::shared_ptr<InternalsType> Internals;
|
||||
|
||||
struct RenderFunctor;
|
||||
|
||||
void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -320,13 +320,13 @@ void MapperGlyphScalar::SetGlyphType(vtkm::rendering::GlyphType glyphType)
|
||||
this->GlyphType = glyphType;
|
||||
}
|
||||
|
||||
void MapperGlyphScalar::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperGlyphScalar::RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& vtkmNotUsed(ghostField))
|
||||
{
|
||||
raytracing::Logger* logger = raytracing::Logger::GetInstance();
|
||||
|
||||
|
@ -34,20 +34,18 @@ public:
|
||||
/// @copydoc GetGlyphType
|
||||
void SetGlyphType(vtkm::rendering::GlyphType glyphType);
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
vtkm::rendering::Mapper* NewCopy() const override;
|
||||
|
||||
protected:
|
||||
vtkm::rendering::GlyphType GlyphType;
|
||||
|
||||
void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -50,13 +50,13 @@ void MapperGlyphVector::SetGlyphType(vtkm::rendering::GlyphType glyphType)
|
||||
this->GlyphType = glyphType;
|
||||
}
|
||||
|
||||
void MapperGlyphVector::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& field,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& vtkmNotUsed(fieldRange),
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperGlyphVector::RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& field,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& vtkmNotUsed(fieldRange),
|
||||
const vtkm::cont::Field& vtkmNotUsed(ghostField))
|
||||
{
|
||||
raytracing::Logger* logger = raytracing::Logger::GetInstance();
|
||||
|
||||
|
@ -35,20 +35,18 @@ public:
|
||||
/// @copydoc GetGlyphType
|
||||
void SetGlyphType(vtkm::rendering::GlyphType glyphType);
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
vtkm::rendering::Mapper* NewCopy() const override;
|
||||
|
||||
protected:
|
||||
vtkm::rendering::GlyphType GlyphType;
|
||||
|
||||
void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -106,13 +106,13 @@ void MapperPoint::UseVariableRadius(bool useVariableRadius)
|
||||
this->Internals->UseVariableRadius = useVariableRadius;
|
||||
}
|
||||
|
||||
void MapperPoint::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperPoint::RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& vtkmNotUsed(ghostField))
|
||||
{
|
||||
raytracing::Logger* logger = raytracing::Logger::GetInstance();
|
||||
|
||||
|
@ -72,16 +72,6 @@ public:
|
||||
*/
|
||||
void SetRadiusDelta(const vtkm::Float32& delta);
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
void SetCompositeBackground(bool on);
|
||||
vtkm::rendering::Mapper* NewCopy() const override;
|
||||
|
||||
@ -90,6 +80,14 @@ private:
|
||||
std::shared_ptr<InternalsType> Internals;
|
||||
|
||||
struct RenderFunctor;
|
||||
|
||||
void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -70,13 +70,13 @@ vtkm::rendering::Canvas* MapperQuad::GetCanvas() const
|
||||
return this->Internals->Canvas;
|
||||
}
|
||||
|
||||
void MapperQuad::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperQuad::RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& vtkmNotUsed(ghostField))
|
||||
{
|
||||
raytracing::Logger* logger = raytracing::Logger::GetInstance();
|
||||
logger->OpenLogEntry("mapper_ray_tracer");
|
||||
|
@ -37,16 +37,6 @@ public:
|
||||
void SetCanvas(vtkm::rendering::Canvas* canvas) override;
|
||||
virtual vtkm::rendering::Canvas* GetCanvas() const override;
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
void SetCompositeBackground(bool on);
|
||||
vtkm::rendering::Mapper* NewCopy() const override;
|
||||
|
||||
@ -55,6 +45,14 @@ private:
|
||||
std::shared_ptr<InternalsType> Internals;
|
||||
|
||||
struct RenderFunctor;
|
||||
|
||||
void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -65,13 +65,13 @@ void MapperRayTracer::RenderCellsPartitioned(const vtkm::cont::PartitionedDataSe
|
||||
for (unsigned int p = 0; p < partitionedData.GetNumberOfPartitions(); p++)
|
||||
{
|
||||
auto partition = partitionedData.GetPartition(indices[p]);
|
||||
this->RenderCells(partition.GetCellSet(),
|
||||
partition.GetCoordinateSystem(),
|
||||
partition.GetField(fieldName.c_str()),
|
||||
colorTable,
|
||||
camera,
|
||||
scalarRange,
|
||||
partition.GetGhostCellField());
|
||||
this->RenderCellsImpl(partition.GetCellSet(),
|
||||
partition.GetCoordinateSystem(),
|
||||
partition.GetField(fieldName.c_str()),
|
||||
colorTable,
|
||||
camera,
|
||||
scalarRange,
|
||||
partition.GetGhostCellField());
|
||||
}
|
||||
}
|
||||
|
||||
@ -120,13 +120,13 @@ vtkm::rendering::Canvas* MapperRayTracer::GetCanvas() const
|
||||
return this->Internals->Canvas;
|
||||
}
|
||||
|
||||
void MapperRayTracer::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperRayTracer::RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
{
|
||||
raytracing::Logger* logger = raytracing::Logger::GetInstance();
|
||||
logger->OpenLogEntry("mapper_ray_tracer");
|
||||
|
@ -31,16 +31,6 @@ public:
|
||||
void SetCanvas(vtkm::rendering::Canvas* canvas) override;
|
||||
virtual vtkm::rendering::Canvas* GetCanvas() const override;
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
void RenderCellsPartitioned(const vtkm::cont::PartitionedDataSet partitionedData,
|
||||
const std::string fieldName,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
@ -55,6 +45,14 @@ private:
|
||||
struct InternalsType;
|
||||
std::shared_ptr<InternalsType> Internals;
|
||||
struct CompareIndices;
|
||||
|
||||
void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -72,13 +72,13 @@ vtkm::rendering::Canvas* MapperVolume::GetCanvas() const
|
||||
return this->Internals->Canvas;
|
||||
}
|
||||
|
||||
void MapperVolume::RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperVolume::RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& vtkmNotUsed(colorTable),
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& vtkmNotUsed(ghostField))
|
||||
{
|
||||
if (!cellset.CanConvert<vtkm::cont::CellSetStructured<3>>())
|
||||
{
|
||||
|
@ -29,16 +29,6 @@ public:
|
||||
void SetCanvas(vtkm::rendering::Canvas* canvas) override;
|
||||
virtual vtkm::rendering::Canvas* GetCanvas() const override;
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
virtual void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable&, //colorTable
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
vtkm::rendering::Mapper* NewCopy() const override;
|
||||
void SetSampleDistance(const vtkm::Float32 distance);
|
||||
void SetCompositeBackground(const bool compositeBackground);
|
||||
@ -46,6 +36,14 @@ public:
|
||||
private:
|
||||
struct InternalsType;
|
||||
std::shared_ptr<InternalsType> Internals;
|
||||
|
||||
virtual void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable&, //colorTable
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
};
|
||||
}
|
||||
} //namespace vtkm::rendering
|
||||
|
@ -227,13 +227,13 @@ void MapperWireframer::SetIsOverlay(bool isOverlay)
|
||||
this->Internals->IsOverlay = isOverlay;
|
||||
}
|
||||
|
||||
void MapperWireframer::RenderCells(const vtkm::cont::UnknownCellSet& inCellSet,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& inScalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
void MapperWireframer::RenderCellsImpl(const vtkm::cont::UnknownCellSet& inCellSet,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& inScalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField)
|
||||
{
|
||||
vtkm::cont::UnknownCellSet cellSet = inCellSet;
|
||||
|
||||
|
@ -42,21 +42,19 @@ public:
|
||||
bool GetIsOverlay() const;
|
||||
void SetIsOverlay(bool isOverlay);
|
||||
|
||||
using Mapper::RenderCells;
|
||||
|
||||
virtual void RenderCells(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
|
||||
virtual vtkm::rendering::Mapper* NewCopy() const override;
|
||||
|
||||
private:
|
||||
struct InternalsType;
|
||||
std::shared_ptr<InternalsType> Internals;
|
||||
|
||||
virtual void RenderCellsImpl(const vtkm::cont::UnknownCellSet& cellset,
|
||||
const vtkm::cont::CoordinateSystem& coords,
|
||||
const vtkm::cont::Field& scalarField,
|
||||
const vtkm::cont::ColorTable& colorTable,
|
||||
const vtkm::rendering::Camera& camera,
|
||||
const vtkm::Range& scalarRange,
|
||||
const vtkm::cont::Field& ghostField) override;
|
||||
}; // class MapperWireframer
|
||||
}
|
||||
} // namespace vtkm::rendering
|
||||
|
Loading…
Reference in New Issue
Block a user