OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | List of all members
otb::VectorDataToRightAngleVectorDataFilter< TVectorData > Class Template Reference

#include <otbVectorDataToRightAngleVectorDataFilter.h>

+ Inheritance diagram for otb::VectorDataToRightAngleVectorDataFilter< TVectorData >:
+ Collaboration diagram for otb::VectorDataToRightAngleVectorDataFilter< TVectorData >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef VectorDataType::DataNodeType DataNodeType
 
typedef VectorDataType::LineType LineType
 
typedef itk::SmartPointer< SelfPointer
 
typedef VectorDataType::PointType PointType
 
typedef itk::ProcessObject ProcessObjectType
 
typedef VectorDataToRightAngleVectorDataFilter Self
 
typedef VectorDataToVectorDataFilter< TVectorData, TVectorData > Superclass
 
typedef itk::PreOrderTreeIterator< typename VectorDataType::DataTreeType > TreeIteratorType
 
typedef TVectorData VectorDataType
 
typedef LineType::VertexListType VertexListType
 
typedef LineType::VertexType VertexType
 
- Public Types inherited from otb::VectorDataToVectorDataFilter< TVectorData, TVectorData >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::DataObject::Pointer DataObjectPointer
 
typedef InputVectorDataType::DataNodeType InputDataNodeType
 
typedef InputVectorDataType::DataTreeType::TreeNodeType InputInternalTreeNodeType
 
typedef InputLineType::Pointer InputLinePointerType
 
typedef InputDataNodeType::LineType InputLineType
 
typedef InputDataNodeType::PointType InputPointType
 
typedef InputPolygonListType::Pointer InputPolygonListPointerType
 
typedef InputDataNodeType::PolygonListType InputPolygonListType
 
typedef InputPolygonType::Pointer InputPolygonPointerType
 
typedef InputDataNodeType::PolygonType InputPolygonType
 
typedef TVectorData ::ConstPointer InputVectorDataPointer
 
typedef TVectorData InputVectorDataType
 
typedef OutputVectorDataType::DataNodeType OutputDataNodeType
 
typedef OutputVectorDataType::DataTreeType::TreeNodeType OutputInternalTreeNodeType
 
typedef OutputLineType::Pointer OutputLinePointerType
 
typedef OutputDataNodeType::LineType OutputLineType
 
typedef OutputDataNodeType::PointType OutputPointType
 
typedef OutputPolygonListType::Pointer OutputPolygonListPointerType
 
typedef OutputDataNodeType::PolygonListType OutputPolygonListType
 
typedef OutputPolygonType::Pointer OutputPolygonPointerType
 
typedef OutputDataNodeType::PolygonType OutputPolygonType
 
typedef TVectorData ::Pointer OutputVectorDataPointer
 
typedef TVectorData OutputVectorDataType
 
typedef itk::SmartPointer< SelfPointer
 
typedef VectorDataToVectorDataFilter Self
 
typedef VectorDataSource< TVectorData > Superclass
 
- Public Types inherited from otb::VectorDataSource< TVectorData >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
 
typedef TVectorData ::Pointer OutputVectorDataPointer
 
typedef TVectorData OutputVectorDataType
 
typedef itk::SmartPointer< SelfPointer
 
typedef VectorDataSource Self
 
typedef itk::ProcessObject Superclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
- Public Member Functions inherited from otb::VectorDataToVectorDataFilter< TVectorData, TVectorData >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
const InputVectorDataTypeGetInput (void)
 
virtual const char * GetNameOfClass () const
 
virtual void SetInput (const InputVectorDataType *input)
 
- Public Member Functions inherited from otb::VectorDataSource< TVectorData >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual void GraftOutput (itk::DataObject *output)
 
virtual void GraftNthOutput (unsigned int idx, itk::DataObject *output)
 
virtual OutputVectorDataTypeGetOutput (void)
 
virtual OutputVectorDataTypeGetOutput (DataObjectPointerArraySizeType idx)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from otb::VectorDataToVectorDataFilter< TVectorData, TVectorData >
static Pointer New ()
 
- Static Public Member Functions inherited from otb::VectorDataSource< TVectorData >
static Pointer New ()
 
double m_DistanceThreshold
 
double m_AngleThreshold
 
virtual double GetDistanceThreshold ()
 
virtual void SetDistanceThreshold (double _arg)
 
virtual double GetAngleThreshold ()
 
virtual void SetAngleThreshold (double _arg)
 
 VectorDataToRightAngleVectorDataFilter ()
 
 ~VectorDataToRightAngleVectorDataFilter () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
void GenerateData () override
 
virtual double ComputeAngleFormedBySegments (LineType *lineDst, LineType *lineSrc)
 
virtual PointType ComputeRightAngleCoordinate (LineType *lineDst, LineType *lineSrc)
 
virtual double ComputeOrientation (LineType *line)
 
virtual double ComputeDistanceFromPointToSegment (PointType rAngle, LineType *line)
 
 VectorDataToRightAngleVectorDataFilter (const Self &)=delete
 
void operator= (const Self &)=delete
 

Additional Inherited Members

- Protected Member Functions inherited from otb::VectorDataToVectorDataFilter< TVectorData, TVectorData >
void GenerateOutputInformation (void) override
 
virtual OutputLinePointerType ProcessLine (InputLinePointerType) const
 
virtual OutputPointType ProcessPoint (InputPointType) const
 
virtual OutputPolygonPointerType ProcessPolygon (InputPolygonPointerType) const
 
virtual OutputPolygonListPointerType ProcessPolygonList (InputPolygonListPointerType) const
 
 VectorDataToVectorDataFilter ()
 
 ~VectorDataToVectorDataFilter () override
 
void GenerateData (void) override
 
virtual void ProcessNode (InputInternalTreeNodeType *source, OutputInternalTreeNodeType *destination) const
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
- Protected Member Functions inherited from otb::VectorDataSource< TVectorData >
 VectorDataSource ()
 
 ~VectorDataSource () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
virtual void AllocateOutputs ()
 

Detailed Description

template<class TVectorData>
class otb::VectorDataToRightAngleVectorDataFilter< TVectorData >

Right angle detector.

This filter aims at detecting right angle formed by the segments included in the input VectorData. It outputs a vector data containing right angle localizations symbolized by points.

The entire input vector data will be processed considering the two firsts vertex of each line features as a segment.

Definition at line 48 of file otbVectorDataToRightAngleVectorDataFilter.h.

Member Typedef Documentation

◆ ConstPointer

template<class TVectorData >
typedef itk::SmartPointer<const Self> otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::ConstPointer

Definition at line 55 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ DataNodeType

template<class TVectorData >
typedef VectorDataType::DataNodeType otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::DataNodeType

Definition at line 68 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ LineType

template<class TVectorData >
typedef VectorDataType::LineType otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::LineType

Definition at line 69 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ Pointer

template<class TVectorData >
typedef itk::SmartPointer<Self> otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::Pointer

Definition at line 54 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ PointType

template<class TVectorData >
typedef VectorDataType::PointType otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::PointType

Definition at line 70 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ ProcessObjectType

template<class TVectorData >
typedef itk::ProcessObject otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::ProcessObjectType

Typedef support for ProcessObject

Definition at line 61 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ Self

template<class TVectorData >
typedef VectorDataToRightAngleVectorDataFilter otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::Self

Standard class typedefs.

Definition at line 52 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ Superclass

template<class TVectorData >
typedef VectorDataToVectorDataFilter<TVectorData, TVectorData> otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::Superclass

Definition at line 53 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ TreeIteratorType

template<class TVectorData >
typedef itk::PreOrderTreeIterator<typename VectorDataType::DataTreeType> otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::TreeIteratorType

Definition at line 74 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ VectorDataType

template<class TVectorData >
typedef TVectorData otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::VectorDataType

Typdedef support for the VectroData

Definition at line 67 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ VertexListType

template<class TVectorData >
typedef LineType::VertexListType otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::VertexListType

Definition at line 72 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ VertexType

template<class TVectorData >
typedef LineType::VertexType otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::VertexType

Definition at line 71 of file otbVectorDataToRightAngleVectorDataFilter.h.

Constructor & Destructor Documentation

◆ VectorDataToRightAngleVectorDataFilter() [1/2]

template<class TVectorData >
otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::VectorDataToRightAngleVectorDataFilter
protected

Constructor.

Definition at line 30 of file otbVectorDataToRightAngleVectorDataFilter.hxx.

References otb::CONST_PI.

◆ ~VectorDataToRightAngleVectorDataFilter()

template<class TVectorData >
otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::~VectorDataToRightAngleVectorDataFilter ( )
inlineoverrideprotected

Destructor.

Definition at line 89 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ VectorDataToRightAngleVectorDataFilter() [2/2]

template<class TVectorData >
otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::VectorDataToRightAngleVectorDataFilter ( const Self )
privatedelete

Set/Get the thresholds

Member Function Documentation

◆ ComputeAngleFormedBySegments()

template<class TVectorData >
double otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::ComputeAngleFormedBySegments ( LineType lineDst,
LineType lineSrc 
)
protectedvirtual

Angle computation.

Definition at line 143 of file otbVectorDataToRightAngleVectorDataFilter.hxx.

◆ ComputeDistanceFromPointToSegment()

template<class TVectorData >
double otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::ComputeDistanceFromPointToSegment ( PointType  rAngle,
LineType line 
)
protectedvirtual

Distance From a point rAngle to a segment line.

Definition at line 114 of file otbVectorDataToRightAngleVectorDataFilter.hxx.

◆ ComputeOrientation()

template<class TVectorData >
double otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::ComputeOrientation ( LineType line)
protectedvirtual

Compute the orientation of a segment

Definition at line 152 of file otbVectorDataToRightAngleVectorDataFilter.hxx.

References otb::CONST_PI.

◆ ComputeRightAngleCoordinate()

template<class TVectorData >
VectorDataToRightAngleVectorDataFilter< TVectorData >::PointType otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::ComputeRightAngleCoordinate ( LineType lineDst,
LineType lineSrc 
)
protectedvirtual

When we find a right angle, one compute the coordinate of the segments intersection.

Definition at line 174 of file otbVectorDataToRightAngleVectorDataFilter.hxx.

◆ CreateAnother()

template<class TVectorData >
virtual::itk::LightObject::Pointer otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::CreateAnother ( void  ) const

◆ GenerateData()

template<class TVectorData >
void otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::GenerateData
overrideprotected

Main computation method.

Definition at line 40 of file otbVectorDataToRightAngleVectorDataFilter.hxx.

References otb::CONST_PI_2, otb::DOCUMENT, otb::FEATURE_POINT, and otb::FOLDER.

◆ GetAngleThreshold()

template<class TVectorData >
virtual double otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::GetAngleThreshold ( )
virtual

Set/Get the thresholds

◆ GetDistanceThreshold()

template<class TVectorData >
virtual double otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::GetDistanceThreshold ( )
virtual

Set/Get the thresholds

◆ GetNameOfClass()

template<class TVectorData >
virtual const char* otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

◆ New()

template<class TVectorData >
static Pointer otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TVectorData >
void otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::operator= ( const Self )
privatedelete

Set/Get the thresholds

◆ PrintSelf()

template<class TVectorData >
void otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

Standard PrintSelf method.

Definition at line 202 of file otbVectorDataToRightAngleVectorDataFilter.hxx.

◆ SetAngleThreshold()

template<class TVectorData >
virtual void otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::SetAngleThreshold ( double  _arg)
virtual

Set/Get the thresholds

◆ SetDistanceThreshold()

template<class TVectorData >
virtual void otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::SetDistanceThreshold ( double  _arg)
virtual

Set/Get the thresholds

Member Data Documentation

◆ m_AngleThreshold

template<class TVectorData >
double otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::m_AngleThreshold
private

Set/Get the thresholds

Definition at line 116 of file otbVectorDataToRightAngleVectorDataFilter.h.

◆ m_DistanceThreshold

template<class TVectorData >
double otb::VectorDataToRightAngleVectorDataFilter< TVectorData >::m_DistanceThreshold
private

Set/Get the thresholds

Definition at line 115 of file otbVectorDataToRightAngleVectorDataFilter.h.


The documentation for this class was generated from the following files: