warnings and store depth separately

This commit is contained in:
Matt Larsen 2020-02-18 07:25:00 -08:00
parent aa468f5c00
commit 5fc77cb585
8 changed files with 16 additions and 13 deletions

@ -210,7 +210,8 @@ public:
throw vtkm::cont::ErrorBadValue("Conn Proxy: null canvas");
}
vtkm::rendering::raytracing::Camera rayCamera;
rayCamera.SetParameters(camera, canvas->GetWidth(), canvas->GetHeight());
rayCamera.SetParameters(
camera, (vtkm::Int32)canvas->GetWidth(), (vtkm::Int32)canvas->GetHeight());
vtkm::rendering::raytracing::Ray<vtkm::Float32> rays;
rayCamera.CreateRays(rays, this->Coords.GetBounds());
rays.Buffers.at(0).InitConst(0.f);

@ -182,8 +182,8 @@ void MapperCylinder::RenderCells(const vtkm::cont::DynamicCellSet& cellset,
//
// Create rays
//
vtkm::Int32 width = this->Internals->Canvas->GetWidth();
vtkm::Int32 height = this->Internals->Canvas->GetHeight();
vtkm::Int32 width = (vtkm::Int32) this->Internals->Canvas->GetWidth();
vtkm::Int32 height = (vtkm::Int32) this->Internals->Canvas->GetHeight();
this->Internals->RayCamera.SetParameters(camera, width, height);

@ -181,8 +181,8 @@ void MapperPoint::RenderCells(const vtkm::cont::DynamicCellSet& cellset,
//
// Create rays
//
vtkm::Int32 width = this->Internals->Canvas->GetWidth();
vtkm::Int32 height = this->Internals->Canvas->GetHeight();
vtkm::Int32 width = (vtkm::Int32) this->Internals->Canvas->GetWidth();
vtkm::Int32 height = (vtkm::Int32) this->Internals->Canvas->GetHeight();
this->Internals->RayCamera.SetParameters(camera, width, height);

@ -103,8 +103,8 @@ void MapperQuad::RenderCells(const vtkm::cont::DynamicCellSet& cellset,
//
// Create rays
//
vtkm::Int32 width = this->Internals->Canvas->GetWidth();
vtkm::Int32 height = this->Internals->Canvas->GetHeight();
vtkm::Int32 width = (vtkm::Int32) this->Internals->Canvas->GetWidth();
vtkm::Int32 height = (vtkm::Int32) this->Internals->Canvas->GetHeight();
this->Internals->RayCamera.SetParameters(camera, width, height);

@ -107,8 +107,8 @@ void MapperRayTracer::RenderCells(const vtkm::cont::DynamicCellSet& cellset,
//
// Create rays
//
vtkm::Int32 width = this->Internals->Canvas->GetWidth();
vtkm::Int32 height = this->Internals->Canvas->GetHeight();
vtkm::Int32 width = (vtkm::Int32) this->Internals->Canvas->GetWidth();
vtkm::Int32 height = (vtkm::Int32) this->Internals->Canvas->GetHeight();
this->Internals->RayCamera.SetParameters(camera, width, height);

@ -102,8 +102,8 @@ void MapperVolume::RenderCells(const vtkm::cont::DynamicCellSet& cellset,
vtkm::rendering::raytracing::Camera rayCamera;
vtkm::rendering::raytracing::Ray<vtkm::Float32> rays;
vtkm::Int32 width = this->Internals->Canvas->GetWidth();
vtkm::Int32 height = this->Internals->Canvas->GetHeight();
vtkm::Int32 width = (vtkm::Int32) this->Internals->Canvas->GetWidth();
vtkm::Int32 height = (vtkm::Int32) this->Internals->Canvas->GetHeight();
rayCamera.SetParameters(camera, width, height);

@ -166,8 +166,6 @@ ScalarRenderer::Result ScalarRenderer::Render(const vtkm::rendering::Camera& cam
raytracing::ChannelBuffer<vtkm::Float32> depthExpanded =
depthChannel.ExpandBuffer(rays.PixelIdx, expandSize, Internals->DefaultValue);
res.push_back(depthExpanded.Buffer);
names.push_back("depth");
Result result;
result.Width = Internals->Width;
@ -175,6 +173,7 @@ ScalarRenderer::Result ScalarRenderer::Render(const vtkm::rendering::Camera& cam
result.Scalars = res;
result.ScalarNames = names;
result.Ranges = rangeMap;
result.Depths = depthExpanded.Buffer;
vtkm::Float64 time = timer.GetElapsedTime();
logger->AddLogData("write_to_canvas", time);
@ -211,6 +210,8 @@ void ScalarRenderer::Result::SaveVTK(const std::string filename)
vtkm::cont::Field(ScalarNames[i], vtkm::cont::Field::Association::CELL_SET, Scalars[i]));
}
result.AddField(vtkm::cont::Field("depth", vtkm::cont::Field::Association::CELL_SET, Depths));
vtkm::io::writer::VTKDataSetWriter writer(filename + ".vtk");
writer.WriteDataSet(result);
}

@ -37,6 +37,7 @@ public:
{
vtkm::Int32 Width;
vtkm::Int32 Height;
vtkm::cont::ArrayHandle<vtkm::Float32> Depths;
std::vector<vtkm::cont::ArrayHandle<vtkm::Float32>> Scalars;
std::vector<std::string> ScalarNames;
std::map<std::string, vtkm::Range> Ranges;