Blender V5.0
Freestyle::ViewEdge Class Reference

#include <ViewMap.h>

Inherits Freestyle::Interface1D.

Public Types

typedef SVertex vertex_type
typedef ViewEdgeInternal::edge_iterator_base< Nonconst_traits< ViewEdge * > > edge_iterator
typedef ViewEdgeInternal::edge_iterator_base< Const_traits< ViewEdge * > > const_edge_iterator
typedef ViewEdgeInternal::fedge_iterator_base< Nonconst_traits< FEdge * > > fedge_iterator
typedef ViewEdgeInternal::fedge_iterator_base< Const_traits< FEdge * > > const_fedge_iterator
typedef ViewEdgeInternal::vertex_iterator_base< Nonconst_traits< SVertex * > > vertex_iterator
typedef ViewEdgeInternal::vertex_iterator_base< Const_traits< SVertex * > > const_vertex_iterator

Public Member Functions

virtual string getExactTypeName () const
virtual Id getId () const
virtual Nature::EdgeNature getNature () const
 ViewEdge ()
 ViewEdge (ViewVertex *iA, ViewVertex *iB)
 ViewEdge (ViewVertex *iA, ViewVertex *iB, FEdge *iFEdgeA)
 ViewEdge (ViewVertex *iA, ViewVertex *iB, FEdge *iFEdgeA, FEdge *iFEdgeB, ViewShape *iShape)
 ViewEdge (ViewEdge &iBrother)
virtual ViewEdgeduplicate ()
virtual ~ViewEdge ()
ViewVertexA ()
ViewVertexB ()
FEdgefedgeA ()
FEdgefedgeB ()
ViewShapeviewShape ()
ViewShapeaShape ()
bool isClosed ()
uint getChainingTimeStamp ()
const ViewShapeaShape () const
const ViewShapebShape () const
vector< ViewShape * > & occluders ()
IdsplittingId ()
bool isInImage () const
void setA (ViewVertex *iA)
void setB (ViewVertex *iB)
void setNature (Nature::EdgeNature iNature)
void setFEdgeA (FEdge *iFEdge)
void setFEdgeB (FEdge *iFEdge)
void setShape (ViewShape *iVShape)
void setId (const Id &id)
void UpdateFEdges ()
void setaShape (ViewShape *iShape)
void setQI (int qi)
void setChainingTimeStamp (uint ts)
void AddOccluder (ViewShape *iShape)
void setSplittingId (Id *id)
void setIsInImage (bool iFlag)
bool intersect_2d_area (const Vec2r &iMin, const Vec2r &iMax) const
bool include_in_2d_area (const Vec2r &iMin, const Vec2r &iMax) const
real getLength2D () const
int qi () const
occluder_container::const_iterator occluders_begin () const
occluder_container::const_iterator occluders_end () const
int occluders_size () const
bool occluders_empty () const
const Polygon3roccludee () const
const SShapeoccluded_shape () const
bool occludee_empty () const
Id shape_id () const
const SShapeshape () const
float shape_importance () const
edge_iterator ViewEdge_iterator ()
 view edge iterator
const_edge_iterator ViewEdge_iterator () const
fedge_iterator fedge_iterator_begin ()
 feature edge iterator
const_fedge_iterator fedge_iterator_begin () const
fedge_iterator fedge_iterator_last ()
const_fedge_iterator fedge_iterator_last () const
fedge_iterator fedge_iterator_end ()
const_fedge_iterator fedge_iterator_end () const
const_vertex_iterator vertices_begin () const
 embedding vertex iterator
vertex_iterator vertices_begin ()
const_vertex_iterator vertices_last () const
vertex_iterator vertices_last ()
const_vertex_iterator vertices_end () const
vertex_iterator vertices_end ()
virtual Interface0DIterator verticesBegin ()
virtual Interface0DIterator verticesEnd ()
virtual Interface0DIterator pointsBegin (float t=0.0f)
virtual Interface0DIterator pointsEnd (float t=0.0f)
Public Member Functions inherited from Freestyle::Interface1D
 Interface1D ()
virtual ~Interface1D ()
virtual uint getTimeStamp () const
void setTimeStamp (uint iTimeStamp)

Public Attributes

void * userdata

Friends

class ViewShape

Additional Inherited Members

Protected Attributes inherited from Freestyle::Interface1D
uint _timeStamp

Detailed Description

Class defining a ViewEdge. A ViewEdge in an edge of the image graph. it connects two ViewVertex. It is made by connecting a set of FEdges.

Definition at line 886 of file ViewMap.h.

Member Typedef Documentation

◆ const_edge_iterator

◆ const_fedge_iterator

◆ const_vertex_iterator

◆ edge_iterator

◆ fedge_iterator

◆ vertex_iterator

◆ vertex_type

Constructor & Destructor Documentation

◆ ViewEdge() [1/5]

Freestyle::ViewEdge::ViewEdge ( )
inline

Default constructor.

Definition at line 947 of file ViewMap.h.

References userdata.

Referenced by duplicate(), ViewEdge(), and ViewEdge_iterator().

◆ ViewEdge() [2/5]

Freestyle::ViewEdge::ViewEdge ( ViewVertex * iA,
ViewVertex * iB )
inline

Definition at line 961 of file ViewMap.h.

References userdata.

◆ ViewEdge() [3/5]

Freestyle::ViewEdge::ViewEdge ( ViewVertex * iA,
ViewVertex * iB,
FEdge * iFEdgeA )
inline

Definition at line 976 of file ViewMap.h.

References userdata.

◆ ViewEdge() [4/5]

Freestyle::ViewEdge::ViewEdge ( ViewVertex * iA,
ViewVertex * iB,
FEdge * iFEdgeA,
FEdge * iFEdgeB,
ViewShape * iShape )
inline

Definition at line 991 of file ViewMap.h.

References UpdateFEdges(), userdata, and ViewShape.

◆ ViewEdge() [5/5]

Freestyle::ViewEdge::ViewEdge ( ViewEdge & iBrother)
inline

Copy constructor.

Definition at line 1010 of file ViewMap.h.

References userdata, and ViewEdge().

◆ ~ViewEdge()

virtual Freestyle::ViewEdge::~ViewEdge ( )
inlinevirtual

Destructor.

Definition at line 1037 of file ViewMap.h.

Member Function Documentation

◆ A()

ViewVertex * Freestyle::ViewEdge::A ( )
inline

Returns the first ViewVertex.

Definition at line 1055 of file ViewMap.h.

Referenced by Freestyle::ViewMap::InsertViewVertex(), and Freestyle::ViewShape::SplitEdge().

◆ AddOccluder()

void Freestyle::ViewEdge::AddOccluder ( ViewShape * iShape)
inline

Definition at line 1196 of file ViewMap.h.

References ViewShape.

◆ aShape() [1/2]

ViewShape * Freestyle::ViewEdge::aShape ( )
inline

Returns the shape that is occluded by the ViewShape to which this ViewEdge belongs to. If no object is occluded, nullptr is returned.

Returns
The occluded ViewShape.

Definition at line 1087 of file ViewMap.h.

References ViewShape.

Referenced by Freestyle::Functions0D::getOccludeeF0D(), Freestyle::Functions1D::getOccludeeF1D(), and Freestyle::Functions1D::GetOccludeeF1D::operator()().

◆ aShape() [2/2]

const ViewShape * Freestyle::ViewEdge::aShape ( ) const
inline

Definition at line 1107 of file ViewMap.h.

References ViewShape.

◆ B()

ViewVertex * Freestyle::ViewEdge::B ( )
inline

Returns the second ViewVertex.

Definition at line 1061 of file ViewMap.h.

Referenced by Freestyle::ViewMap::InsertViewVertex(), and Freestyle::ViewShape::SplitEdge().

◆ bShape()

const ViewShape * Freestyle::ViewEdge::bShape ( ) const
inline

Definition at line 1112 of file ViewMap.h.

References ViewShape.

◆ duplicate()

virtual ViewEdge * Freestyle::ViewEdge::duplicate ( )
inlinevirtual

Cloning method.

Definition at line 1029 of file ViewMap.h.

References ViewEdge().

Referenced by Freestyle::ViewShape::ViewShape().

◆ fedge_iterator_begin() [1/2]

ViewEdge::fedge_iterator Freestyle::ViewEdge::fedge_iterator_begin ( )

feature edge iterator

Definition at line 695 of file ViewMap.cpp.

Referenced by getLength2D().

◆ fedge_iterator_begin() [2/2]

ViewEdge::const_fedge_iterator Freestyle::ViewEdge::fedge_iterator_begin ( ) const

Definition at line 700 of file ViewMap.cpp.

◆ fedge_iterator_end() [1/2]

ViewEdge::fedge_iterator Freestyle::ViewEdge::fedge_iterator_end ( )

Definition at line 715 of file ViewMap.cpp.

Referenced by getLength2D().

◆ fedge_iterator_end() [2/2]

ViewEdge::const_fedge_iterator Freestyle::ViewEdge::fedge_iterator_end ( ) const

Definition at line 720 of file ViewMap.cpp.

◆ fedge_iterator_last() [1/2]

ViewEdge::fedge_iterator Freestyle::ViewEdge::fedge_iterator_last ( )

Definition at line 705 of file ViewMap.cpp.

Referenced by getLength2D().

◆ fedge_iterator_last() [2/2]

ViewEdge::const_fedge_iterator Freestyle::ViewEdge::fedge_iterator_last ( ) const

Definition at line 710 of file ViewMap.cpp.

◆ fedgeA()

FEdge * Freestyle::ViewEdge::fedgeA ( )
inline

◆ fedgeB()

FEdge * Freestyle::ViewEdge::fedgeB ( )
inline

◆ getChainingTimeStamp()

uint Freestyle::ViewEdge::getChainingTimeStamp ( )
inline

◆ getExactTypeName()

virtual string Freestyle::ViewEdge::getExactTypeName ( ) const
inlinevirtual

Returns the string "ViewEdge".

Reimplemented from Freestyle::Interface1D.

Definition at line 889 of file ViewMap.h.

◆ getId()

virtual Id Freestyle::ViewEdge::getId ( ) const
inlinevirtual

Returns the Id of the vertex.

Reimplemented from Freestyle::Interface1D.

Definition at line 896 of file ViewMap.h.

Referenced by Freestyle::ViewMap::InsertViewVertex(), and Freestyle::ViewShape::SplitEdge().

◆ getLength2D()

real Freestyle::ViewEdge::getLength2D ( ) const
virtual

Returns the 2D length of the Viewedge.

Reimplemented from Freestyle::Interface1D.

Definition at line 669 of file ViewMap.cpp.

References fedge_iterator_begin(), fedge_iterator_end(), fedge_iterator_last(), length(), and Freestyle::VecMat::Vec< T, N >::norm().

Referenced by verticesEnd().

◆ getNature()

virtual Nature::EdgeNature Freestyle::ViewEdge::getNature ( ) const
inlinevirtual

◆ include_in_2d_area()

bool Freestyle::ViewEdge::include_in_2d_area ( const Vec2r & iMin,
const Vec2r & iMax ) const
inline

◆ intersect_2d_area()

bool Freestyle::ViewEdge::intersect_2d_area ( const Vec2r & iMin,
const Vec2r & iMax ) const
inline

◆ isClosed()

bool Freestyle::ViewEdge::isClosed ( )
inline

Tells whether this ViewEdge forms a closed loop or not.

Definition at line 1093 of file ViewMap.h.

◆ isInImage()

bool Freestyle::ViewEdge::isInImage ( ) const
inline

Definition at line 1127 of file ViewMap.h.

◆ occluded_shape()

const SShape * Freestyle::ViewEdge::occluded_shape ( ) const
inline

Definition at line 1789 of file ViewMap.h.

◆ occludee()

const Polygon3r & Freestyle::ViewEdge::occludee ( ) const
inline

Definition at line 1297 of file ViewMap.h.

◆ occludee_empty()

bool Freestyle::ViewEdge::occludee_empty ( ) const
inline

Definition at line 1304 of file ViewMap.h.

◆ occluders()

vector< ViewShape * > & Freestyle::ViewEdge::occluders ( )
inline

◆ occluders_begin()

occluder_container::const_iterator Freestyle::ViewEdge::occluders_begin ( ) const
inline

Definition at line 1277 of file ViewMap.h.

Referenced by Freestyle::Functions0D::getOccludersF0D().

◆ occluders_empty()

bool Freestyle::ViewEdge::occluders_empty ( ) const
inline

Definition at line 1292 of file ViewMap.h.

◆ occluders_end()

occluder_container::const_iterator Freestyle::ViewEdge::occluders_end ( ) const
inline

Definition at line 1282 of file ViewMap.h.

Referenced by Freestyle::Functions0D::getOccludersF0D().

◆ occluders_size()

int Freestyle::ViewEdge::occluders_size ( ) const
inline

Definition at line 1287 of file ViewMap.h.

◆ pointsBegin()

Interface0DIterator Freestyle::ViewEdge::pointsBegin ( float t = 0.0f)
virtual

Returns an Interface0DIterator to iterate over the points of this ViewEdge at a given resolution. The returned Interface0DIterator points on the first Point of the ViewEdge.

Parameters
tthe sampling value.

Reimplemented from Freestyle::Interface1D.

Definition at line 770 of file ViewMap.cpp.

References verticesBegin().

◆ pointsEnd()

Interface0DIterator Freestyle::ViewEdge::pointsEnd ( float t = 0.0f)
virtual

Returns an Interface0DIterator to iterate over the points of this ViewEdge at a given resolution. The returned Interface0DIterator points after the last Point of the ViewEdge.

Parameters
tthe sampling value.

Reimplemented from Freestyle::Interface1D.

Definition at line 775 of file ViewMap.cpp.

References verticesEnd().

◆ qi()

int Freestyle::ViewEdge::qi ( ) const
inline

◆ setA()

◆ setaShape()

void Freestyle::ViewEdge::setaShape ( ViewShape * iShape)
inline

Sets the occluded ViewShape

Definition at line 1179 of file ViewMap.h.

References ViewShape.

◆ setB()

◆ setChainingTimeStamp()

void Freestyle::ViewEdge::setChainingTimeStamp ( uint ts)
inline

◆ setFEdgeA()

void Freestyle::ViewEdge::setFEdgeA ( FEdge * iFEdge)
inline

◆ setFEdgeB()

void Freestyle::ViewEdge::setFEdgeB ( FEdge * iFEdge)
inline

◆ setId()

◆ setIsInImage()

void Freestyle::ViewEdge::setIsInImage ( bool iFlag)
inline

Definition at line 1206 of file ViewMap.h.

◆ setNature()

◆ setQI()

void Freestyle::ViewEdge::setQI ( int qi)
inline

Sets the quantitative invisibility value.

Definition at line 1185 of file ViewMap.h.

References qi().

◆ setShape()

void Freestyle::ViewEdge::setShape ( ViewShape * iVShape)
inline

Sets the ViewShape to which this ViewEdge belongs to.

Definition at line 1164 of file ViewMap.h.

References ViewShape.

Referenced by Freestyle::ViewShape::AddEdge().

◆ setSplittingId()

void Freestyle::ViewEdge::setSplittingId ( Id * id)
inline

Definition at line 1201 of file ViewMap.h.

Referenced by Freestyle::ViewShape::SplitEdge().

◆ shape()

const SShape * Freestyle::ViewEdge::shape ( ) const
inline

Definition at line 1319 of file ViewMap.h.

◆ shape_id()

Id Freestyle::ViewEdge::shape_id ( ) const
inline

Definition at line 1314 of file ViewMap.h.

◆ shape_importance()

float Freestyle::ViewEdge::shape_importance ( ) const
inline

Definition at line 1324 of file ViewMap.h.

◆ splittingId()

Id * Freestyle::ViewEdge::splittingId ( )
inline

Definition at line 1122 of file ViewMap.h.

Referenced by Freestyle::ViewShape::SplitEdge().

◆ UpdateFEdges()

void Freestyle::ViewEdge::UpdateFEdges ( )

Sets Viewedge to this for all embedded fedges

Definition at line 837 of file ViewMap.cpp.

References ELEM, Freestyle::FEdge::nextEdge(), and Freestyle::FEdge::setViewEdge().

Referenced by Freestyle::ViewShape::SplitEdge(), and ViewEdge().

◆ vertices_begin() [1/2]

ViewEdge::vertex_iterator Freestyle::ViewEdge::vertices_begin ( )

Definition at line 731 of file ViewMap.cpp.

◆ vertices_begin() [2/2]

ViewEdge::const_vertex_iterator Freestyle::ViewEdge::vertices_begin ( ) const

embedding vertex iterator

Definition at line 726 of file ViewMap.cpp.

Referenced by Freestyle::Chain::push_viewedge_back(), and Freestyle::Chain::push_viewedge_front().

◆ vertices_end() [1/2]

ViewEdge::vertex_iterator Freestyle::ViewEdge::vertices_end ( )

Definition at line 751 of file ViewMap.cpp.

◆ vertices_end() [2/2]

ViewEdge::const_vertex_iterator Freestyle::ViewEdge::vertices_end ( ) const

◆ vertices_last() [1/2]

ViewEdge::vertex_iterator Freestyle::ViewEdge::vertices_last ( )

Definition at line 741 of file ViewMap.cpp.

◆ vertices_last() [2/2]

ViewEdge::const_vertex_iterator Freestyle::ViewEdge::vertices_last ( ) const

◆ verticesBegin()

Interface0DIterator Freestyle::ViewEdge::verticesBegin ( )
virtual

Returns an Interface0DIterator to iterate over the SVertex constituting the embedding of this ViewEdge. The returned Interface0DIterator points to the first SVertex of the ViewEdge.

Reimplemented from Freestyle::Interface1D.

Definition at line 756 of file ViewMap.cpp.

References ret.

Referenced by pointsBegin().

◆ verticesEnd()

Interface0DIterator Freestyle::ViewEdge::verticesEnd ( )
virtual

Returns an Interface0DIterator to iterate over the SVertex constituting the embedding of this ViewEdge. The returned Interface0DIterator points after the last SVertex of the ViewEdge.

Reimplemented from Freestyle::Interface1D.

Definition at line 763 of file ViewMap.cpp.

References getLength2D(), and ret.

Referenced by pointsEnd().

◆ ViewEdge_iterator() [1/2]

ViewEdge::edge_iterator Freestyle::ViewEdge::ViewEdge_iterator ( )

view edge iterator

Definition at line 684 of file ViewMap.cpp.

◆ ViewEdge_iterator() [2/2]

ViewEdge::const_edge_iterator Freestyle::ViewEdge::ViewEdge_iterator ( ) const

Definition at line 689 of file ViewMap.cpp.

References ViewEdge().

◆ viewShape()

◆ ViewShape

friend class ViewShape
friend

Definition at line 909 of file ViewMap.h.

References ViewShape.

Referenced by AddOccluder(), aShape(), aShape(), bShape(), setaShape(), setShape(), ViewEdge(), ViewShape, and viewShape().

Member Data Documentation

◆ userdata

void* Freestyle::ViewEdge::userdata

A field that can be used by the user to store any data. This field must be reset afterwards using ResetUserData().

Definition at line 944 of file ViewMap.h.

Referenced by ViewEdge(), ViewEdge(), ViewEdge(), ViewEdge(), ViewEdge(), and Freestyle::ViewShape::ViewShape().


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