21 #ifndef otbVectorDataToRandomLineGenerator_h
22 #define otbVectorDataToRandomLineGenerator_h
26 #include "itkMersenneTwisterRandomVariateGenerator.h"
47 template <
class TVectorData>
66 typedef typename DataNodeType::PolygonType::RegionType
RegionType;
68 typedef typename DataNodeType::LineType
LineType;
69 typedef typename DataNodeType::LineType::VertexType
VertexType;
75 using Superclass::SetInput;
80 itkGetConstMacro(NumberOfOutputLine,
unsigned int);
81 itkSetMacro(NumberOfOutputLine,
unsigned int);
83 itkGetConstMacro(MinLineSize,
unsigned int);
84 itkSetMacro(MinLineSize,
unsigned int);
86 itkGetConstMacro(MaxLineSize,
unsigned int);
87 itkSetMacro(MaxLineSize,
unsigned int);
92 m_RandomGenerator->SetSeed(seed);
93 m_RandomSizeGenerator->SetSeed(seed);
102 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
105 void GenerateData(
void)
override;
107 PointVectorType RandomPointsGenerator(DataNodeType* node);
115 std::ostringstream oss;
116 oss << m_CurrentID++;
131 #ifndef OTB_MANUAL_INSTANTIATION
Filter hierarchy for generating VectorData.
Produces a VectorData Containing Random Lines.
VectorDataSource< TVectorData > Superclass
RandomGeneratorType::Pointer m_RandomSizeGenerator
std::vector< PointType > PointVectorType
void SetSeed(unsigned int seed)
void operator=(const Self &)=delete
DataNodeType::LineType LineType
unsigned int m_MaxLineSize
VectorDataType::DataNodeType DataNodeType
VectorDataToRandomLineGenerator Self
unsigned int m_NumberOfOutputLine
DataNodeType::LineType::VertexType VertexType
VectorDataType::Pointer VectorDataPointerType
itk::Statistics::MersenneTwisterRandomVariateGenerator RandomGeneratorType
itk::SmartPointer< const Self > ConstPointer
VectorDataToRandomLineGenerator(const Self &)=delete
unsigned int m_MinLineSize
DataNodeType::PolygonType::RegionType RegionType
~VectorDataToRandomLineGenerator() override
TVectorData VectorDataType
DataNodeType::PointType PointType
RandomGeneratorType::Pointer m_RandomGenerator
itk::SmartPointer< Self > Pointer
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.