21 #ifndef otbVectorDataToRightAngleVectorDataFilter_h
22 #define otbVectorDataToRightAngleVectorDataFilter_h
46 template <
class TVectorData>
68 typedef typename VectorDataType::LineType
LineType;
69 typedef typename VectorDataType::PointType
PointType;
74 itkGetMacro(DistanceThreshold,
double);
75 itkSetMacro(DistanceThreshold,
double);
78 itkGetMacro(AngleThreshold,
double);
79 itkSetMacro(AngleThreshold,
double);
91 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
94 void GenerateData()
override;
97 virtual double ComputeAngleFormedBySegments(LineType* lineDst, LineType* lineSrc);
100 virtual PointType ComputeRightAngleCoordinate(LineType* lineDst, LineType* lineSrc);
103 virtual double ComputeOrientation(LineType* line);
106 virtual double ComputeDistanceFromPointToSegment(PointType rAngle, LineType* line);
116 #ifndef OTB_MANUAL_INSTANTIATION
VectorDataType::LineType LineType
itk::ProcessObject ProcessObjectType
itk::SmartPointer< Self > Pointer
~VectorDataToRightAngleVectorDataFilter() override
TVectorData VectorDataType
itk::SmartPointer< const Self > ConstPointer
VectorDataToRightAngleVectorDataFilter Self
LineType::VertexType VertexType
VectorDataType::DataNodeType DataNodeType
double m_DistanceThreshold
void operator=(const Self &)=delete
VectorDataToVectorDataFilter< TVectorData, TVectorData > Superclass
LineType::VertexListType VertexListType
VectorDataToRightAngleVectorDataFilter(const Self &)=delete
VectorDataType::PointType PointType
Base class for filters that take an VectorData as input and produce an VectorData as output.
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.