Krita Source Code Documentation
Loading...
Searching...
No Matches
KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const > Class Template Reference
+ Inheritance diagram for KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >:

Public Member Functions

int degree () const
 
NodeTypefirstNode () const
 
Mesh::NodeIndex firstNodeIndex () const
 
bool isHorizontal () const
 
bool isValid () const
 
ControlPointIteratorType itP0 () const
 
ControlPointIteratorType itP1 () const
 
ControlPointIteratorType itP2 () const
 
ControlPointIteratorType itP3 () const
 
qreal length () const
 
PointTypep0 () const
 
PointTypep1 () const
 
PointTypep2 () const
 
PointTypep3 () const
 
QPointF pointAtParam (qreal t) const
 
NodeTypesecondNode () const
 
Mesh::NodeIndex secondNodeIndex () const
 
 segment_iterator_impl ()
 
 segment_iterator_impl (MeshType *mesh, int col, int row, int isHorizontal)
 
Mesh::SegmentIndex segmentIndex () const
 

Private Types

using ControlPointIteratorType = control_point_iterator_impl<is_const>
 
using MeshType = std::add_const_if_t<is_const, Mesh>
 
using NodeType = std::add_const_if_t<is_const, Node>
 
using PointType = std::add_const_if_t<is_const, QPointF>
 

Private Member Functions

bool controlIsValid () const
 
void decrement ()
 
Mesh::SegmentIndex dereference () const
 
bool equal (segment_iterator_impl const &other) const
 
void increment ()
 
bool nodeIsValid () const
 

Private Attributes

int m_col
 
int m_isHorizontal
 
MeshTypem_mesh
 
int m_row
 

Friends

class boost::iterator_core_access
 

Detailed Description

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
class KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >

Definition at line 541 of file KisBezierMesh.h.

Member Typedef Documentation

◆ ControlPointIteratorType

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
using KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::ControlPointIteratorType = control_point_iterator_impl<is_const>
private

Definition at line 550 of file KisBezierMesh.h.

◆ MeshType

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
using KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::MeshType = std::add_const_if_t<is_const, Mesh>
private

Definition at line 549 of file KisBezierMesh.h.

◆ NodeType

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
using KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::NodeType = std::add_const_if_t<is_const, Node>
private

Definition at line 548 of file KisBezierMesh.h.

◆ PointType

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
using KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::PointType = std::add_const_if_t<is_const, QPointF>
private

Definition at line 547 of file KisBezierMesh.h.

Constructor & Destructor Documentation

◆ segment_iterator_impl() [1/2]

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::segment_iterator_impl ( )
inline

◆ segment_iterator_impl() [2/2]

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::segment_iterator_impl ( MeshType * mesh,
int col,
int row,
int isHorizontal )
inline

Definition at line 560 of file KisBezierMesh.h.

561 : m_mesh(mesh),
562 m_col(col),
563 m_row(row),
565 {
566 }

Member Function Documentation

◆ controlIsValid()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
bool KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::controlIsValid ( ) const
inlineprivate

◆ decrement()

◆ degree()

◆ dereference()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
Mesh::SegmentIndex KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::dereference ( ) const
inlineprivate

◆ equal()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
bool KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::equal ( segment_iterator_impl< is_const > const & other) const
inlineprivate

◆ firstNode()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
NodeType & KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::firstNode ( ) const
inline

◆ firstNodeIndex()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
Mesh::NodeIndex KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::firstNodeIndex ( ) const
inline

◆ increment()

◆ isHorizontal()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
bool KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::isHorizontal ( ) const
inline

◆ isValid()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
bool KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::isValid ( ) const
inline

◆ itP0()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
ControlPointIteratorType KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::itP0 ( ) const
inline

◆ itP1()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
ControlPointIteratorType KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::itP1 ( ) const
inline

◆ itP2()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
ControlPointIteratorType KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::itP2 ( ) const
inline

◆ itP3()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
ControlPointIteratorType KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::itP3 ( ) const
inline

◆ length()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
qreal KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::length ( ) const
inline

◆ nodeIsValid()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
bool KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::nodeIsValid ( ) const
inlineprivate

◆ p0()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
PointType & KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::p0 ( ) const
inline

◆ p1()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
PointType & KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::p1 ( ) const
inline

◆ p2()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
PointType & KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::p2 ( ) const
inline

◆ p3()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
PointType & KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::p3 ( ) const
inline

◆ pointAtParam()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
QPointF KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::pointAtParam ( qreal t) const
inline

◆ secondNode()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
NodeType & KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::secondNode ( ) const
inline

◆ secondNodeIndex()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
Mesh::NodeIndex KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::secondNodeIndex ( ) const
inline

◆ segmentIndex()

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
Mesh::SegmentIndex KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::segmentIndex ( ) const
inline

Friends And Related Symbol Documentation

◆ boost::iterator_core_access

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
friend class boost::iterator_core_access
friend

Definition at line 650 of file KisBezierMesh.h.

Member Data Documentation

◆ m_col

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
int KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::m_col
private

Definition at line 711 of file KisBezierMesh.h.

◆ m_isHorizontal

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
int KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::m_isHorizontal
private

Definition at line 713 of file KisBezierMesh.h.

◆ m_mesh

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
MeshType* KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::m_mesh
private

Definition at line 710 of file KisBezierMesh.h.

◆ m_row

template<typename NodeArg = BaseMeshNode, typename PatchArg = KisBezierPatch>
template<bool is_const>
int KisBezierMeshDetails::Mesh< NodeArg, PatchArg >::segment_iterator_impl< is_const >::m_row
private

Definition at line 712 of file KisBezierMesh.h.


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