Blender V4.3
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
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 894 of file ViewMap.h.

Member Typedef Documentation

◆ const_edge_iterator

◆ const_fedge_iterator

◆ const_vertex_iterator

◆ edge_iterator

◆ fedge_iterator

◆ vertex_iterator

◆ vertex_type

Definition at line 916 of file ViewMap.h.

Constructor & Destructor Documentation

◆ ViewEdge() [1/5]

Freestyle::ViewEdge::ViewEdge ( )
inline

Default constructor.

Definition at line 955 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 969 of file ViewMap.h.

References userdata.

◆ ViewEdge() [3/5]

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

Definition at line 984 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 999 of file ViewMap.h.

References UpdateFEdges(), userdata, and ViewShape.

◆ ViewEdge() [5/5]

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

Copy constructor.

Definition at line 1018 of file ViewMap.h.

References userdata, and ViewEdge().

◆ ~ViewEdge()

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

Destructor.

Definition at line 1045 of file ViewMap.h.

Member Function Documentation

◆ A()

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

Returns the first ViewVertex.

Definition at line 1063 of file ViewMap.h.

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

◆ AddOccluder()

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

Definition at line 1204 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 1095 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 1115 of file ViewMap.h.

References ViewShape.

◆ B()

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

Returns the second ViewVertex.

Definition at line 1069 of file ViewMap.h.

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

◆ bShape()

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

Definition at line 1120 of file ViewMap.h.

References ViewShape.

◆ duplicate()

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

Cloning method.

Definition at line 1037 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 693 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 698 of file ViewMap.cpp.

◆ fedge_iterator_end() [1/2]

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

Definition at line 713 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 718 of file ViewMap.cpp.

◆ fedge_iterator_last() [1/2]

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

Definition at line 703 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 708 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 897 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 904 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 667 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 1101 of file ViewMap.h.

◆ isInImage()

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

Definition at line 1135 of file ViewMap.h.

◆ occluded_shape()

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

Definition at line 1801 of file ViewMap.h.

◆ occludee()

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

Definition at line 1305 of file ViewMap.h.

◆ occludee_empty()

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

Definition at line 1312 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 1285 of file ViewMap.h.

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

◆ occluders_empty()

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

Definition at line 1300 of file ViewMap.h.

◆ occluders_end()

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

Definition at line 1290 of file ViewMap.h.

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

◆ occluders_size()

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

Definition at line 1295 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 768 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 773 of file ViewMap.cpp.

References verticesEnd().

◆ qi()

◆ setA()

◆ setaShape()

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

Sets the occluded ViewShape

Definition at line 1187 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 1214 of file ViewMap.h.

◆ setNature()

◆ setQI()

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

Sets the quantitative invisibility value.

Definition at line 1193 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 1172 of file ViewMap.h.

References ViewShape.

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

◆ setSplittingId()

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

Definition at line 1209 of file ViewMap.h.

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

◆ shape()

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

Definition at line 1327 of file ViewMap.h.

◆ shape_id()

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

Definition at line 1322 of file ViewMap.h.

◆ shape_importance()

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

Definition at line 1332 of file ViewMap.h.

◆ splittingId()

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

Definition at line 1130 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 835 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 729 of file ViewMap.cpp.

◆ vertices_begin() [2/2]

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

embedding vertex iterator

Definition at line 724 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 749 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 739 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 754 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 761 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 682 of file ViewMap.cpp.

◆ ViewEdge_iterator() [2/2]

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

Definition at line 687 of file ViewMap.cpp.

References ViewEdge().

◆ viewShape()

◆ ViewShape

friend class ViewShape
friend

Definition at line 917 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 952 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: