21 #ifndef otbPolyLineParametricPathWithValue_h
22 #define otbPolyLineParametricPathWithValue_h
24 #if defined(__GNUC__) || defined(__clang__)
25 #pragma GCC diagnostic push
26 #pragma GCC diagnostic ignored "-Wunused-parameter"
27 #include "itkPolyLineParametricPath.h"
28 #pragma GCC diagnostic pop
30 #include "itkPolyLineParametricPath.h"
33 #include "itkMetaDataObject.h"
49 template <
class TValue,
unsigned int VDimension = 2>
55 typedef itk::PolyLineParametricPath<VDimension>
Superclass;
63 itkTypeMacro(PolyLineParametricPath, MySuperclass);
79 itkGetMacro(Key, std::string);
83 itk::MetaDataDictionary& dict = this->GetMetaDataDictionary();
84 itk::EncapsulateMetaData<ValueType>(dict, m_Key, value);
90 const itk::MetaDataDictionary& dict = this->GetMetaDataDictionary();
91 if (dict.HasKey(m_Key))
93 itk::ExposeMetaData<ValueType>(dict, m_Key, resp);
97 itkGenericExceptionMacro(<<
"Key " << m_Key <<
" not found in metadata dictionary !");
106 virtual double GetLength()
const;
108 virtual void AddVertex(
const ContinuousIndexType& vertex);
114 virtual RegionType GetBoundingRegion(
void)
const;
126 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
128 virtual void ComputeLength()
const;
129 virtual void ComputeBoundingRegion()
const;
130 void Modified()
const override;
143 #ifndef OTB_MANUAL_INSTANTIATION
This class implement a PolyLineParametricPath for which a value can be set. The value is stored in th...
RegionType::SizeType SizeType
Superclass::VertexType VertexType
itk::SmartPointer< const Self > ConstPointer
bool m_BoundingRegionIsValid
Superclass::VertexListType VertexListType
otb::RemoteSensingRegion< double > RegionType
itk::PolyLineParametricPath< VDimension > Superclass
itk::SmartPointer< Self > Pointer
void operator=(const Self &)=delete
RegionType::IndexType IndexType
VertexListType::ConstIterator VertexListConstIteratorType
RegionType m_BoundingRegion
PolyLineParametricPathWithValue(const Self &)=delete
~PolyLineParametricPathWithValue() override
PolyLineParametricPathWithValue Self
Superclass::ContinuousIndexType ContinuousIndexType
ValueType GetValue(void) const
void SetValue(ValueType value)
itk::ContinuousIndex< Type > SizeType
itk::ContinuousIndex< Type > IndexType
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.