21 #ifndef otbPointSetToDensityImageFilter_hxx
22 #define otbPointSetToDensityImageFilter_hxx
25 #include "itkImageRegionIterator.h"
32 template <
class TInputPo
intSet,
class TOutputImage,
class TDensityFunction>
36 this->DynamicMultiThreadingOn();
43 template <
class TInputPo
intSet,
class TOutputImage,
class TDensityFunction>
47 Superclass::Superclass::GenerateData();
53 template <
class TInputPo
intSet,
class TOutputImage,
class TDensityFunction>
60 typename OutputImageType::Pointer outPtr = this->GetOutput();
63 densityComputeFunction->SetPointSet(this->GetInput());
64 densityComputeFunction->SetRadius(m_Radius);
69 itk::ImageRegionIterator<OutputImageType> itOut(outPtr, outputRegionForThread);
73 while (!itOut.IsAtEnd())
75 index = itOut.GetIndex();
76 outPtr->TransformIndexToPhysicalPoint(index, pCenter);
78 itOut.Set(densityComputeFunction->Evaluate(pCenter));
86 template <
class TInputPo
intSet,
class TOutputImage,
class TDensityFunction>
90 typename Superclass::OutputImagePointer outputPtr = this->GetOutput();
97 typename OutputImageType::RegionType region;
101 region.SetSize(this->GetSize());
102 region.SetIndex(start);
104 outputPtr->SetOrigin(this->GetOrigin());
105 outputPtr->SetSignedSpacing(this->GetSpacing());
106 outputPtr->SetRegions(region);
112 template <
class TInputPo
intSet,
class TOutputImage,
class TDensityFunction>
115 Superclass::PrintSelf(os, indent);
void GenerateData() override
PointSetDensityFunctionType::InputType InputType
PointSetDensityFunctionType::Pointer PointSetDensityFunctionPointerType
PointSetToDensityImageFilter()
OutputImageType::RegionType OutputImageRegionType
void DynamicThreadedGenerateData(const OutputImageRegionType &outputRegionForThread) override
void PrintSelf(std::ostream &os, itk::Indent indent) const override
OutputImageType::IndexType IndexType
void GenerateOutputInformation() override
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.