OTB  6.7.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
otb::ParallelLinePathListFilter< TPath > Class Template Reference

#include <otbParallelLinePathListFilter.h>

+ Inheritance diagram for otb::ParallelLinePathListFilter< TPath >:
+ Collaboration diagram for otb::ParallelLinePathListFilter< TPath >:

Public Types

typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef PathListType::ConstIterator IteratorType
 
typedef PathListType::Pointer PathListPointerType
 
typedef Superclass::PathListType PathListType
 
typedef Superclass::PathPointerType PathPointerType
 
typedef Superclass::PathType PathType
 
typedef itk::SmartPointer< SelfPointer
 
typedef double RealType
 
typedef ParallelLinePathListFilter Self
 
typedef
PathListToPathListFilter
< TPath > 
Superclass
 
typedef
VertexListType::ConstIterator 
VertexIteratorType
 
typedef PathType::VertexListType VertexListType
 
typedef PathType::VertexType VertexType
 
- Public Types inherited from otb::PathListToPathListFilter< TPath >
typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef
Superclass::OutputListPointer 
OutputPathListPointerType
 
typedef Superclass::OutputListType OutputPathListType
 
typedef PathType::Pointer OutputPathPointerType
 
typedef
Superclass::OutputObjectType 
OutputPathType
 
typedef PathListType::ConstPointer PathListConstPointerType
 
typedef PathListType::Pointer PathListPointerType
 
typedef Superclass::InputListType PathListType
 
typedef PathType::Pointer PathPointerType
 
typedef Superclass::InputObjectType PathType
 
typedef itk::SmartPointer< SelfPointer
 
typedef PathListToPathListFilter Self
 
typedef
ObjectListToObjectListFilter
< ObjectList< TPath >
, ObjectList< TPath > > 
Superclass
 
- Public Types inherited from otb::ObjectListToObjectListFilter< ObjectList< TPath >, ObjectList< TPath > >
typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef itk::DataObject::Pointer DataObjectPointer
 
typedef ObjectList< TPath >
::ConstIterator 
InputListIterator
 
typedef ObjectList< TPath >
::ConstPointer 
InputListPointer
 
typedef ObjectList< TPath > InputListType
 
typedef InputListType::ObjectType InputObjectType
 
typedef ObjectList< TPath >
::Pointer 
OutputListPointer
 
typedef ObjectList< TPath > OutputListType
 
typedef OutputListType::ObjectType OutputObjectType
 
typedef itk::SmartPointer< SelfPointer
 
typedef
ObjectListToObjectListFilter 
Self
 
typedef otb::ObjectListSource
< ObjectList< TPath > > 
Superclass
 
- Public Types inherited from otb::ObjectListSource< ObjectList< TPath > >
typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef itk::DataObject::Pointer DataObjectPointer
 
typedef
itk::ProcessObject::DataObjectPointerArraySizeType 
DataObjectPointerArraySizeType
 
typedef ObjectList< TPath >
::Pointer 
OutputListPointer
 
typedef ObjectList< TPath > OutputListType
 
typedef itk::SmartPointer< SelfPointer
 
typedef ObjectListSource Self
 
typedef itk::ProcessObject Superclass
 
- Public Types inherited from itk::ProcessObject
typedef SmartPointer< const SelfConstPointer
 
typedef
DataObject::DataObjectIdentifierType 
DataObjectIdentifierType
 
typedef DataObject::Pointer DataObjectPointer
 
typedef std::vector
< DataObjectPointer
DataObjectPointerArray
 
typedef
DataObjectPointerArray::size_type 
DataObjectPointerArraySizeType
 
typedef std::vector
< DataObjectIdentifierType
NameArray
 
typedef SmartPointer< SelfPointer
 
typedef ProcessObject Self
 
typedef Object Superclass
 
- Public Types inherited from itk::Object
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef Object Self
 
typedef LightObject Superclass
 
- Public Types inherited from itk::LightObject
typedef SmartPointer< const SelfConstPointer
 
typedef SmartPointer< SelfPointer
 
typedef LightObject Self
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual RealType GetAngularThreshold ()
 
virtual RealType GetCommonDistanceThreshold ()
 
virtual RealType GetDistanceThreshold ()
 
virtual const char * GetNameOfClass () const
 
virtual void SetAngularThreshold (RealType _arg)
 
virtual void SetCommonDistanceThreshold (RealType _arg)
 
virtual void SetDistanceThreshold (RealType _arg)
 
- Public Member Functions inherited from otb::ObjectListToObjectListFilter< ObjectList< TPath >, ObjectList< TPath > >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
const InputListTypeGetInput (void)
 
virtual void SetInput (const InputListType *input)
 
- Public Member Functions inherited from otb::ObjectListSource< ObjectList< TPath > >
void GraftNthOutput (DataObjectPointerArraySizeType idx, itk::DataObject *graft)
 
DataObjectPointer MakeOutput (DataObjectPointerArraySizeType idx) override
 
void GraftOutput (itk::DataObject *graft)
 
OutputListTypeGetOutput (void)
 
OutputListTypeGetOutput (DataObjectPointerArraySizeType idx)
 
- Public Member Functions inherited from itk::ProcessObject
virtual void AbortGenerateDataOff ()
 
virtual void AbortGenerateDataOn ()
 
virtual void EnlargeOutputRequestedRegion (DataObject *)
 
virtual const bool & GetAbortGenerateData () const
 
DataObjectPointerArray GetIndexedInputs ()
 
DataObjectPointerArray GetIndexedOutputs ()
 
NameArray GetInputNames () const
 
DataObjectPointerArray GetInputs ()
 
MultiThreader * GetMultiThreader () const
 
DataObjectPointerArraySizeType GetNumberOfIndexedInputs () const
 
DataObjectPointerArraySizeType GetNumberOfIndexedOutputs () const
 
DataObjectPointerArraySizeType GetNumberOfInputs () const
 
DataObjectPointerArraySizeType GetNumberOfOutputs () const
 
virtual const ThreadIdTypeGetNumberOfThreads () const
 
virtual
DataObjectPointerArraySizeType 
GetNumberOfValidRequiredInputs () const
 
NameArray GetOutputNames () const
 
DataObjectPointerArray GetOutputs ()
 
virtual const float & GetProgress () const
 
virtual const bool & GetReleaseDataBeforeUpdateFlag () const
 
virtual bool GetReleaseDataFlag () const
 
NameArray GetRequiredInputNames () const
 
bool HasInput (const DataObjectIdentifierType &key) const
 
bool HasOutput (const DataObjectIdentifierType &key) const
 
virtual DataObjectPointer MakeOutput (const DataObjectIdentifierType &)
 
virtual void PrepareOutputs ()
 
virtual void PropagateRequestedRegion (DataObject *output)
 
virtual void ReleaseDataBeforeUpdateFlagOff ()
 
virtual void ReleaseDataBeforeUpdateFlagOn ()
 
void ReleaseDataFlagOff ()
 
void ReleaseDataFlagOn ()
 
virtual void ResetPipeline ()
 
virtual void SetAbortGenerateData (bool _arg)
 
virtual void SetNumberOfThreads (ThreadIdType _arg)
 
void SetProgress (float progress)
 
virtual void SetReleaseDataBeforeUpdateFlag (bool _arg)
 
virtual void SetReleaseDataFlag (bool flag)
 
virtual void Update ()
 
virtual void UpdateLargestPossibleRegion ()
 
virtual void UpdateOutputData (DataObject *output)
 
virtual void UpdateOutputInformation ()
 
void UpdateProgress (float progress)
 
- Public Member Functions inherited from itk::Object
unsigned long AddObserver (const EventObject &event, Command *)
 
unsigned long AddObserver (const EventObject &event, Command *) const
 
virtual void DebugOff () const
 
virtual void DebugOn () const
 
CommandGetCommand (unsigned long tag)
 
bool GetDebug () const
 
const MetaDataDictionaryGetMetaDataDictionary () const
 
MetaDataDictionaryGetMetaDataDictionary ()
 
virtual ModifiedTimeType GetMTime () const
 
virtual const std::string & GetObjectName () const
 
virtual const TimeStampGetTimeStamp () const
 
bool HasObserver (const EventObject &event) const
 
void InvokeEvent (const EventObject &)
 
void InvokeEvent (const EventObject &) const
 
virtual void Modified () const
 
virtual void Register () const override
 
void RemoveAllObservers ()
 
void RemoveObserver (unsigned long tag)
 
void SetDebug (bool debugFlag) const
 
void SetMetaDataDictionary (const MetaDataDictionary &rhs)
 
virtual void SetObjectName (std::string _arg)
 
virtual void SetReferenceCount (int) override
 
virtual void UnRegister () const noexceptoverride
 
- Public Member Functions inherited from itk::LightObject
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from otb::PathListToPathListFilter< TPath >
static Pointer New ()
 
- Static Public Member Functions inherited from otb::ObjectListToObjectListFilter< ObjectList< TPath >, ObjectList< TPath > >
static Pointer New ()
 
- Static Public Member Functions inherited from otb::ObjectListSource< ObjectList< TPath > >
static Pointer New ()
 
- Static Public Member Functions inherited from itk::Object
static bool GetGlobalWarningDisplay ()
 
static void GlobalWarningDisplayOff ()
 
static void GlobalWarningDisplayOn ()
 
static Pointer New ()
 
static void SetGlobalWarningDisplay (bool flag)
 
- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 

Protected Member Functions

void GenerateData () override
 
 ParallelLinePathListFilter ()
 
 ~ParallelLinePathListFilter () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
bool VerifyAngularCondition (VertexType v1, VertexType v2, VertexType v3, VertexType v4)
 
bool VerifyMaxDistanceCondition (VertexType v1, VertexType v2, VertexType v3, VertexType v4)
 
bool VerifyCommonDistanceCondition (VertexType v1, VertexType v2, VertexType v3, VertexType v4)
 
PathPointerType WriteParallelPath (PathPointerType p1)
 
- Protected Member Functions inherited from otb::PathListToPathListFilter< TPath >
 PathListToPathListFilter ()
 
 ~PathListToPathListFilter () override
 
- Protected Member Functions inherited from otb::ObjectListToObjectListFilter< ObjectList< TPath >, ObjectList< TPath > >
virtual void AfterThreadedGenerateData ()
 
virtual void BeforeThreadedGenerateData ()
 
void GenerateData (void) override
 
 ObjectListToObjectListFilter ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
virtual int SplitRequestedRegion (itk::ThreadIdType threadId, int threadCount, unsigned int requestedElements, unsigned int &startIndex, unsigned int &stopIndex)
 
virtual void ThreadedGenerateData (unsigned int startIndex, unsigned int stopIndex, itk::ThreadIdType threadId)
 
 ~ObjectListToObjectListFilter () override
 
- Protected Member Functions inherited from otb::ObjectListSource< ObjectList< TPath > >
virtual void AllocateOutputs ()
 
 ObjectListSource ()
 
 ~ObjectListSource () override
 
- Protected Member Functions inherited from itk::ProcessObject
virtual void AddInput (DataObject *input)
 
virtual void AddOutput (DataObject *output)
 
bool AddRequiredInputName (const DataObjectIdentifierType &, DataObjectPointerArraySizeType idx)
 
bool AddRequiredInputName (const DataObjectIdentifierType &)
 
virtual void CacheInputReleaseDataFlags ()
 
virtual void GenerateInputRequestedRegion ()
 
virtual void GenerateOutputInformation ()
 
virtual void GenerateOutputRequestedRegion (DataObject *output)
 
const DataObjectGetInput (const DataObjectIdentifierType &key) const
 
DataObjectGetInput (DataObjectPointerArraySizeType idx)
 
const DataObjectGetInput (DataObjectPointerArraySizeType idx) const
 
DataObjectGetInput (const DataObjectIdentifierType &key)
 
virtual const
DataObjectPointerArraySizeType
GetNumberOfRequiredInputs () const
 
virtual const
DataObjectPointerArraySizeType
GetNumberOfRequiredOutputs () const
 
DataObjectGetOutput (const DataObjectIdentifierType &key)
 
const DataObjectGetOutput (const DataObjectIdentifierType &key) const
 
DataObjectGetOutput (DataObjectPointerArraySizeType idx)
 
const DataObjectGetOutput (DataObjectPointerArraySizeType idx) const
 
DataObjectGetPrimaryInput ()
 
const DataObjectGetPrimaryInput () const
 
virtual const char * GetPrimaryInputName (void) const
 
DataObjectGetPrimaryOutput ()
 
const DataObjectGetPrimaryOutput () const
 
virtual const char * GetPrimaryOutputName (void) const
 
bool IsIndexedInputName (const DataObjectIdentifierType &) const
 
bool IsIndexedOutputName (const DataObjectIdentifierType &) const
 
bool IsRequiredInputName (const DataObjectIdentifierType &) const
 
 itkLegacyMacro (virtual void RemoveInput(DataObject *input))
 
 itkLegacyMacro (void SetNumberOfInputs(DataObjectPointerArraySizeType num))
 
 itkLegacyMacro (virtual void RemoveOutput(DataObject *output))
 
 itkLegacyMacro (void SetNumberOfOutputs(DataObjectPointerArraySizeType num))
 
DataObjectPointerArraySizeType MakeIndexFromInputName (const DataObjectIdentifierType &name) const
 
DataObjectPointerArraySizeType MakeIndexFromOutputName (const DataObjectIdentifierType &name) const
 
DataObjectIdentifierType MakeNameFromInputIndex (DataObjectPointerArraySizeType idx) const
 
DataObjectIdentifierType MakeNameFromOutputIndex (DataObjectPointerArraySizeType idx) const
 
virtual void PopBackInput ()
 
virtual void PopFrontInput ()
 
 ProcessObject ()
 
virtual void PropagateResetPipeline ()
 
virtual void PushBackInput (const DataObject *input)
 
virtual void PushFrontInput (const DataObject *input)
 
virtual void ReleaseInputs ()
 
virtual void RemoveInput (const DataObjectIdentifierType &key)
 
virtual void RemoveInput (DataObjectPointerArraySizeType)
 
virtual void RemoveOutput (const DataObjectIdentifierType &key)
 
virtual void RemoveOutput (DataObjectPointerArraySizeType idx)
 
bool RemoveRequiredInputName (const DataObjectIdentifierType &)
 
virtual void RestoreInputReleaseDataFlags ()
 
virtual void SetInput (const DataObjectIdentifierType &key, DataObject *input)
 
virtual void SetNthInput (DataObjectPointerArraySizeType num, DataObject *input)
 
virtual void SetNthOutput (DataObjectPointerArraySizeType num, DataObject *output)
 
void SetNumberOfIndexedInputs (DataObjectPointerArraySizeType num)
 
void SetNumberOfIndexedOutputs (DataObjectPointerArraySizeType num)
 
virtual void SetNumberOfRequiredInputs (DataObjectPointerArraySizeType)
 
virtual void SetNumberOfRequiredOutputs (DataObjectPointerArraySizeType _arg)
 
virtual void SetOutput (const DataObjectIdentifierType &key, DataObject *output)
 
virtual void SetPrimaryInput (DataObject *input)
 
virtual void SetPrimaryInputName (const DataObjectIdentifierType &key)
 
virtual void SetPrimaryOutput (DataObject *output)
 
virtual void SetPrimaryOutputName (const DataObjectIdentifierType &key)
 
void SetRequiredInputNames (const NameArray &)
 
virtual void VerifyInputInformation ()
 
virtual void VerifyPreconditions ()
 
 ~ProcessObject ()
 
- Protected Member Functions inherited from itk::Object
 Object ()
 
bool PrintObservers (std::ostream &os, Indent indent) const
 
virtual void SetTimeStamp (const TimeStamp &time)
 
virtual ~Object ()
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Private Member Functions

void operator= (const Self &)=delete
 
 ParallelLinePathListFilter (const Self &)=delete
 

Private Attributes

RealType m_AngularThreshold
 
RealType m_CommonDistanceThreshold
 
RealType m_DistanceThreshold
 

Additional Inherited Members

- Protected Types inherited from otb::ObjectListToObjectListFilter< ObjectList< TPath >, ObjectList< TPath > >
typedef std::vector
< OutputListPointer
OutputListForThreadType
 
- Static Protected Member Functions inherited from otb::ObjectListToObjectListFilter< ObjectList< TPath >, ObjectList< TPath > >
static ITK_THREAD_RETURN_TYPE ThreaderCallback (void *arg)
 
- Protected Attributes inherited from otb::ObjectListToObjectListFilter< ObjectList< TPath >, ObjectList< TPath > >
OutputListForThreadType m_ObjectListPerThread
 
- Protected Attributes inherited from itk::ProcessObject
TimeStamp m_OutputInformationMTime
 
bool m_Updating
 
- Protected Attributes inherited from itk::LightObject
AtomicInt< int > m_ReferenceCount
 

Detailed Description

template<class TPath>
class otb::ParallelLinePathListFilter< TPath >

Detects parallel lines in imagery, the required input data are a PathList object.

The class consists of three basic functions that determine the angle between two lines, the distance between the lines and the common part of the lines. First, all input lines are checked if there is a second line running in the same direction. Thereafter, all line pairs that already fulfilled the angular criterion are checked whether they are close to each other or not, i.e. the orthogonal distance between them is calculated. Finally, it has to be verified if the two lines have a common part since lines may fulfill the two first criteria but be located in different parts of the image. In order to adapt the detection algorithm to the user's needs, the thresholds AngularThreshold, DistanceThreshold and CommonDistanceThreshold can be set.

A possible processing chain would be to extract lines with a line detector, to convert the result to PathList object (an ObjectList of PolyLineParametricPath), to link short line segments with the otbLinkPathListFilter to longer lines and to finally detect all parallel long lines.

See Also
LinkPathListFilter

Definition at line 55 of file otbParallelLinePathListFilter.h.

Member Typedef Documentation

template<class TPath>
typedef itk::SmartPointer<const Self> otb::ParallelLinePathListFilter< TPath >::ConstPointer

Definition at line 63 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef PathListType::ConstIterator otb::ParallelLinePathListFilter< TPath >::IteratorType

Definition at line 76 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef PathListType::Pointer otb::ParallelLinePathListFilter< TPath >::PathListPointerType

Definition at line 75 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef Superclass::PathListType otb::ParallelLinePathListFilter< TPath >::PathListType

Definition at line 73 of file otbParallelLinePathListFilter.h.

Definition at line 74 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef Superclass::PathType otb::ParallelLinePathListFilter< TPath >::PathType

Template parameters typedefs

Definition at line 69 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef itk::SmartPointer<Self> otb::ParallelLinePathListFilter< TPath >::Pointer

Definition at line 62 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef double otb::ParallelLinePathListFilter< TPath >::RealType

Definition at line 80 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef ParallelLinePathListFilter otb::ParallelLinePathListFilter< TPath >::Self

Standard typedefs

Definition at line 60 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef PathListToPathListFilter<TPath> otb::ParallelLinePathListFilter< TPath >::Superclass

Definition at line 61 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef VertexListType::ConstIterator otb::ParallelLinePathListFilter< TPath >::VertexIteratorType

Definition at line 79 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef PathType::VertexListType otb::ParallelLinePathListFilter< TPath >::VertexListType

Definition at line 78 of file otbParallelLinePathListFilter.h.

template<class TPath>
typedef PathType::VertexType otb::ParallelLinePathListFilter< TPath >::VertexType

Definition at line 77 of file otbParallelLinePathListFilter.h.

Constructor & Destructor Documentation

template<class TPath >
otb::ParallelLinePathListFilter< TPath >::ParallelLinePathListFilter ( )
protected

Constructor

Definition at line 34 of file otbParallelLinePathListFilter.hxx.

template<class TPath>
otb::ParallelLinePathListFilter< TPath >::~ParallelLinePathListFilter ( )
inlineoverrideprotected

Destructor

Definition at line 94 of file otbParallelLinePathListFilter.h.

template<class TPath>
otb::ParallelLinePathListFilter< TPath >::ParallelLinePathListFilter ( const Self )
privatedelete

Member Function Documentation

template<class TPath>
virtual::itk::LightObject::Pointer otb::ParallelLinePathListFilter< TPath >::CreateAnother ( void  ) const
virtual
template<class TPath >
void otb::ParallelLinePathListFilter< TPath >::GenerateData ( void  )
overrideprotectedvirtual

GenerateData method

Reimplemented from itk::ProcessObject.

Definition at line 44 of file otbParallelLinePathListFilter.hxx.

References otbMsgDevMacro.

template<class TPath>
virtual RealType otb::ParallelLinePathListFilter< TPath >::GetAngularThreshold ( )
virtual
template<class TPath>
virtual RealType otb::ParallelLinePathListFilter< TPath >::GetCommonDistanceThreshold ( )
virtual
template<class TPath>
virtual RealType otb::ParallelLinePathListFilter< TPath >::GetDistanceThreshold ( )
virtual
template<class TPath>
virtual const char* otb::ParallelLinePathListFilter< TPath >::GetNameOfClass ( ) const
virtual

Creation through object factory macro

Reimplemented from otb::PathListToPathListFilter< TPath >.

template<class TPath>
static Pointer otb::ParallelLinePathListFilter< TPath >::New ( )
static

Type macro

template<class TPath>
void otb::ParallelLinePathListFilter< TPath >::operator= ( const Self )
privatedelete
template<class TPath >
void otb::ParallelLinePathListFilter< TPath >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotectedvirtual

PrintSelf method

PrintSelf Method

Reimplemented from itk::ProcessObject.

Definition at line 532 of file otbParallelLinePathListFilter.hxx.

template<class TPath>
virtual void otb::ParallelLinePathListFilter< TPath >::SetAngularThreshold ( RealType  _arg)
virtual
template<class TPath>
virtual void otb::ParallelLinePathListFilter< TPath >::SetCommonDistanceThreshold ( RealType  _arg)
virtual
template<class TPath>
virtual void otb::ParallelLinePathListFilter< TPath >::SetDistanceThreshold ( RealType  _arg)
virtual
template<class TPath >
bool otb::ParallelLinePathListFilter< TPath >::VerifyAngularCondition ( VertexType  v1,
VertexType  v2,
VertexType  v3,
VertexType  v4 
)
protected

Verify the angular condition to find parallel lines. This function verifies if two lines are parallel by computing the angle in relation to the y-axis. First line segment: v1 is the first vertex, v2 the second one (not necessarily the path ending). Second line segment: v3 is the first vertex, v4 the second one (not necessarily the path ending). Return true if the condition is verified.

This is the first criteria to be fulfilled.

Definition at line 189 of file otbParallelLinePathListFilter.hxx.

References otb::CONST_PI.

template<class TPath >
bool otb::ParallelLinePathListFilter< TPath >::VerifyCommonDistanceCondition ( VertexType  v1,
VertexType  v2,
VertexType  v3,
VertexType  v4 
)
protected

Verify the common distance condition to find parallel lines. The overlapping part of the parallel lines is computed. In case no overlapping part exists or the value is below the specified threshold, false is returned. First line segment: v1 is the first vertex, v2 the second one (not necessarily the path ending). Second line segment: v3 is the first vertex, v4 the second one (not necessarily the path ending). Return true if the condition is verified.

This is the third criteria to be fulfilled.

Definition at line 258 of file otbParallelLinePathListFilter.hxx.

References otbMsgDevMacro.

template<class TPath >
bool otb::ParallelLinePathListFilter< TPath >::VerifyMaxDistanceCondition ( VertexType  v1,
VertexType  v2,
VertexType  v3,
VertexType  v4 
)
protected

Verify the maximum distance condition to find parallel lines. The orthogonal distance between two parallel lines is calculated. First line segment: v1 is the first vertex, v2 the second one (not necessarily the path ending). Second line segment: v3 is the first vertex, v4 the second one (not necessarily the path ending). Return true if the condition is verified.

This is the second criteria to be fulfilled.

Definition at line 219 of file otbParallelLinePathListFilter.hxx.

template<class TPath >
ParallelLinePathListFilter< TPath >::PathPointerType otb::ParallelLinePathListFilter< TPath >::WriteParallelPath ( PathPointerType  p1)
protected

Write the first parallel path. p1: First parallel path (line segment),

Write parallel line in a new path list. p1: First parallel path (line segment)

Definition at line 512 of file otbParallelLinePathListFilter.hxx.

Member Data Documentation

template<class TPath>
RealType otb::ParallelLinePathListFilter< TPath >::m_AngularThreshold
private

Definition at line 154 of file otbParallelLinePathListFilter.h.

template<class TPath>
RealType otb::ParallelLinePathListFilter< TPath >::m_CommonDistanceThreshold
private

Definition at line 156 of file otbParallelLinePathListFilter.h.

template<class TPath>
RealType otb::ParallelLinePathListFilter< TPath >::m_DistanceThreshold
private

Definition at line 155 of file otbParallelLinePathListFilter.h.


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