Blender  V3.3
Public Types | Public Member Functions | Protected Member Functions | List of all members
Freestyle::TVertex Class Reference

#include <ViewMap.h>

Inheritance diagram for Freestyle::TVertex:
Freestyle::ViewVertex Freestyle::Interface0D

Public Types

typedef vector< directedViewEdge * > edge_pointers_container
 
- Public Types inherited from Freestyle::ViewVertex
typedef pair< ViewEdge *, booldirectedViewEdge
 
typedef vector< directedViewEdgeedges_container
 
typedef ViewVertexInternal::edge_iterator_base< ViewVertexInternal::edge_nonconst_traitsedge_iterator
 
typedef ViewVertexInternal::edge_iterator_base< ViewVertexInternal::edge_const_traitsconst_edge_iterator
 

Public Member Functions

virtual string getExactTypeName () const
 
virtual real getX () const
 
virtual real getY () const
 
virtual real getZ () const
 
virtual Vec3r getPoint3D () const
 
virtual real getProjectedX () const
 
virtual real getProjectedY () const
 
virtual real getProjectedZ () const
 
virtual Vec2r getPoint2D () const
 
virtual Id getId () const
 
virtual ViewVertexcastToViewVertex ()
 
virtual TVertexcastToTVertex ()
 
 TVertex ()
 
 TVertex (SVertex *svFront, SVertex *svBack)
 
SVertexfrontSVertex ()
 
SVertexbackSVertex ()
 
directedViewEdgefrontEdgeA ()
 
directedViewEdgefrontEdgeB ()
 
directedViewEdgebackEdgeA ()
 
directedViewEdgebackEdgeB ()
 
void setFrontSVertex (SVertex *iFrontSVertex)
 
void setBackSVertex (SVertex *iBackSVertex)
 
void setFrontEdgeA (ViewEdge *iFrontEdgeA, bool incoming=true)
 
void setFrontEdgeB (ViewEdge *iFrontEdgeB, bool incoming=true)
 
void setBackEdgeA (ViewEdge *iBackEdgeA, bool incoming=true)
 
void setBackEdgeB (ViewEdge *iBackEdgeB, bool incoming=true)
 
void setId (const Id &iId)
 
SVertexgetSVertex (FEdge *iFEdge)
 
virtual void Replace (ViewEdge *iOld, ViewEdge *iNew)
 
virtual ViewEdgemate (ViewEdge *iEdgeA)
 
virtual edge_iterator edges_begin ()
 
virtual const_edge_iterator edges_begin () const
 
virtual edge_iterator edges_end ()
 
virtual const_edge_iterator edges_end () const
 
virtual edge_iterator edges_iterator (ViewEdge *iEdge)
 
virtual const_edge_iterator edges_iterator (ViewEdge *iEdge) const
 
virtual ViewVertexInternal::orientedViewEdgeIterator edgesBegin ()
 
virtual ViewVertexInternal::orientedViewEdgeIterator edgesEnd ()
 
virtual ViewVertexInternal::orientedViewEdgeIterator edgesIterator (ViewEdge *iEdge)
 
- Public Member Functions inherited from Freestyle::ViewVertex
 ViewVertex ()
 
 ViewVertex (Nature::VertexNature nature)
 
virtual ~ViewVertex ()
 
virtual Nature::VertexNature getNature () const
 
void setNature (Nature::VertexNature iNature)
 
- Public Member Functions inherited from Freestyle::Interface0D
 Interface0D ()
 
virtual ~Interface0D ()
 
virtual FEdgegetFEdge (Interface0D &)
 
virtual SVertexcastToSVertex ()
 
virtual NonTVertexcastToNonTVertex ()
 

Protected Member Functions

 TVertex (TVertex &iBrother)
 
virtual ViewVertexduplicate ()
 
- Protected Member Functions inherited from Freestyle::ViewVertex
 ViewVertex (ViewVertex &iBrother)
 

Additional Inherited Members

- Public Attributes inherited from Freestyle::ViewVertex
voiduserdata
 

Detailed Description

class to define a T vertex, i.e. an intersection between two edges. It points towards 2 SVertex and 4 View edges. Among these ViewEdges, 2 are front and 2 are back. Basically the front edge hides part of the back edge. So, among the back edges, 1 is of invisibility n and the other of visibility n+1

Definition at line 379 of file ViewMap.h.

Member Typedef Documentation

◆ edge_pointers_container

Definition at line 381 of file ViewMap.h.

Constructor & Destructor Documentation

◆ TVertex() [1/3]

Freestyle::TVertex::TVertex ( )
inline

Default constructor.

Definition at line 477 of file ViewMap.h.

References NULL.

Referenced by duplicate().

◆ TVertex() [2/3]

Freestyle::TVertex::TVertex ( SVertex svFront,
SVertex svBack 
)
inline

Definition at line 487 of file ViewMap.h.

References Freestyle::SVertex::setViewVertex().

◆ TVertex() [3/3]

Freestyle::TVertex::TVertex ( TVertex iBrother)
inlineprotected

Copy constructor.

Definition at line 501 of file ViewMap.h.

Member Function Documentation

◆ backEdgeA()

directedViewEdge& Freestyle::TVertex::backEdgeA ( )
inline

Definition at line 543 of file ViewMap.h.

Referenced by Freestyle::ViewMapBuilder::ComputeIntersections().

◆ backEdgeB()

directedViewEdge& Freestyle::TVertex::backEdgeB ( )
inline

Definition at line 548 of file ViewMap.h.

Referenced by Freestyle::ViewMapBuilder::ComputeIntersections().

◆ backSVertex()

SVertex* Freestyle::TVertex::backSVertex ( )
inline

Returns the SVertex that is further away from the viewpoint.

Definition at line 528 of file ViewMap.h.

Referenced by Freestyle::SVertex::getFEdge().

◆ castToTVertex()

virtual TVertex* Freestyle::TVertex::castToTVertex ( )
inlinevirtual

Cast the Interface0D in TVertex if it can be.

Reimplemented from Freestyle::Interface0D.

Definition at line 454 of file ViewMap.h.

Referenced by Freestyle::CurvePoint::castToTVertex().

◆ castToViewVertex()

virtual ViewVertex* Freestyle::TVertex::castToViewVertex ( )
inlinevirtual

Cast the Interface0D in SVertex if it can be.

Reimplemented from Freestyle::Interface0D.

Definition at line 448 of file ViewMap.h.

◆ duplicate()

virtual ViewVertex* Freestyle::TVertex::duplicate ( )
inlineprotectedvirtual

Cloning method.

Implements Freestyle::ViewVertex.

Definition at line 513 of file ViewMap.h.

References TVertex().

◆ edges_begin() [1/2]

ViewVertex::edge_iterator Freestyle::TVertex::edges_begin ( )
virtual

iterators access

Implements Freestyle::ViewVertex.

Definition at line 422 of file ViewMap.cpp.

◆ edges_begin() [2/2]

ViewVertex::const_edge_iterator Freestyle::TVertex::edges_begin ( ) const
virtual

Implements Freestyle::ViewVertex.

Definition at line 428 of file ViewMap.cpp.

◆ edges_end() [1/2]

ViewVertex::edge_iterator Freestyle::TVertex::edges_end ( )
virtual

Implements Freestyle::ViewVertex.

Definition at line 434 of file ViewMap.cpp.

◆ edges_end() [2/2]

ViewVertex::const_edge_iterator Freestyle::TVertex::edges_end ( ) const
virtual

Implements Freestyle::ViewVertex.

Definition at line 441 of file ViewMap.cpp.

◆ edges_iterator() [1/2]

ViewVertex::edge_iterator Freestyle::TVertex::edges_iterator ( ViewEdge iEdge)
virtual

Implements Freestyle::ViewVertex.

Definition at line 448 of file ViewMap.cpp.

◆ edges_iterator() [2/2]

ViewVertex::const_edge_iterator Freestyle::TVertex::edges_iterator ( ViewEdge iEdge) const
virtual

Implements Freestyle::ViewVertex.

Definition at line 477 of file ViewMap.cpp.

◆ edgesBegin()

ViewVertexInternal::orientedViewEdgeIterator Freestyle::TVertex::edgesBegin ( )
virtual

Returns an iterator over the ViewEdges that goes to or comes from this ViewVertex pointing to the first ViewEdge of the list. The orientedViewEdgeIterator allows to iterate in CCW order over these ViewEdges and to get the orientation for each ViewEdge (incoming/outgoing).

Implements Freestyle::ViewVertex.

Definition at line 507 of file ViewMap.cpp.

◆ edgesEnd()

ViewVertexInternal::orientedViewEdgeIterator Freestyle::TVertex::edgesEnd ( )
virtual

Returns an orientedViewEdgeIterator over the ViewEdges around this ViewVertex, pointing after the last ViewEdge.

Implements Freestyle::ViewVertex.

Definition at line 513 of file ViewMap.cpp.

◆ edgesIterator()

ViewVertexInternal::orientedViewEdgeIterator Freestyle::TVertex::edgesIterator ( ViewEdge iEdge)
virtual

Returns an orientedViewEdgeIterator pointing to the ViewEdge given as argument.

Implements Freestyle::ViewVertex.

Definition at line 519 of file ViewMap.cpp.

◆ frontEdgeA()

directedViewEdge& Freestyle::TVertex::frontEdgeA ( )
inline

Definition at line 533 of file ViewMap.h.

Referenced by Freestyle::ViewMapBuilder::ComputeIntersections().

◆ frontEdgeB()

directedViewEdge& Freestyle::TVertex::frontEdgeB ( )
inline

Definition at line 538 of file ViewMap.h.

Referenced by Freestyle::ViewMapBuilder::ComputeIntersections().

◆ frontSVertex()

SVertex* Freestyle::TVertex::frontSVertex ( )
inline

Returns the SVertex that is closer to the viewpoint.

Definition at line 522 of file ViewMap.h.

Referenced by Freestyle::SVertex::getFEdge().

◆ getExactTypeName()

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

Returns the string "TVertex".

Reimplemented from Freestyle::ViewVertex.

Definition at line 385 of file ViewMap.h.

◆ getId()

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

Returns the Id of the TVertex.

Reimplemented from Freestyle::Interface0D.

Definition at line 441 of file ViewMap.h.

Referenced by Freestyle::ViewMapBuilder::ComputeIntersections().

◆ getPoint2D()

virtual Vec2r Freestyle::TVertex::getPoint2D ( ) const
inlinevirtual

Returns the 2D point.

Reimplemented from Freestyle::Interface0D.

Definition at line 435 of file ViewMap.h.

References Freestyle::SVertex::getPoint2D().

◆ getPoint3D()

virtual Vec3r Freestyle::TVertex::getPoint3D ( ) const
inlinevirtual

Returns the 3D point.

Reimplemented from Freestyle::Interface0D.

Definition at line 411 of file ViewMap.h.

References Freestyle::SVertex::getPoint3D().

◆ getProjectedX()

virtual real Freestyle::TVertex::getProjectedX ( ) const
inlinevirtual

Returns the projected 3D x coordinate of the vertex.

Reimplemented from Freestyle::Interface0D.

Definition at line 418 of file ViewMap.h.

References Freestyle::SVertex::point2D(), and Freestyle::VecMat::Vec3< T >::x().

◆ getProjectedY()

virtual real Freestyle::TVertex::getProjectedY ( ) const
inlinevirtual

Returns the projected 3D y coordinate of the vertex.

Reimplemented from Freestyle::Interface0D.

Definition at line 424 of file ViewMap.h.

References Freestyle::SVertex::point2D(), and Freestyle::VecMat::Vec3< T >::y().

◆ getProjectedZ()

virtual real Freestyle::TVertex::getProjectedZ ( ) const
inlinevirtual

Returns the 2D z coordinate of the point.

Reimplemented from Freestyle::Interface0D.

Definition at line 429 of file ViewMap.h.

References Freestyle::SVertex::point2D(), and Freestyle::VecMat::Vec3< T >::z().

◆ getSVertex()

SVertex* Freestyle::TVertex::getSVertex ( FEdge iFEdge)
inline

Returns the SVertex (among the 2) belonging to the FEdge iFEdge

Definition at line 580 of file ViewMap.h.

References Freestyle::SVertex::fedges(), and NULL.

◆ getX()

virtual real Freestyle::TVertex::getX ( ) const
inlinevirtual

Returns the 3D x coordinate of the point.

Reimplemented from Freestyle::Interface0D.

Definition at line 392 of file ViewMap.h.

References Freestyle::SVertex::point3D(), and Freestyle::VecMat::Vec3< T >::x().

◆ getY()

virtual real Freestyle::TVertex::getY ( ) const
inlinevirtual

Returns the 3D y coordinate of the point.

Reimplemented from Freestyle::Interface0D.

Definition at line 398 of file ViewMap.h.

References Freestyle::SVertex::point3D(), and Freestyle::VecMat::Vec3< T >::y().

◆ getZ()

virtual real Freestyle::TVertex::getZ ( ) const
inlinevirtual

Returns the 3D z coordinate of the point.

Reimplemented from Freestyle::Interface0D.

Definition at line 404 of file ViewMap.h.

References Freestyle::SVertex::point3D(), and Freestyle::VecMat::Vec3< T >::z().

◆ mate()

virtual ViewEdge* Freestyle::TVertex::mate ( ViewEdge iEdgeA)
inlinevirtual

returns the mate edge of iEdgeA. For example, if iEdgeA is frontEdgeA, then frontEdgeB is returned. If iEdgeA is frontEdgeB then frontEdgeA is returned. Same for back edges

Definition at line 605 of file ViewMap.h.

References NULL.

◆ Replace()

void Freestyle::TVertex::Replace ( ViewEdge iOld,
ViewEdge iNew 
)
virtual

Reimplemented from Freestyle::ViewVertex.

Definition at line 399 of file ViewMap.cpp.

◆ setBackEdgeA()

void Freestyle::TVertex::setBackEdgeA ( ViewEdge iBackEdgeA,
bool  incoming = true 
)

Definition at line 361 of file ViewMap.cpp.

References Freestyle::ViewEdgeComp().

◆ setBackEdgeB()

void Freestyle::TVertex::setBackEdgeB ( ViewEdge iBackEdgeB,
bool  incoming = true 
)

Definition at line 380 of file ViewMap.cpp.

References Freestyle::ViewEdgeComp().

◆ setBackSVertex()

void Freestyle::TVertex::setBackSVertex ( SVertex iBackSVertex)
inline

Sets the SVertex that is further away from the viewpoint.

Definition at line 562 of file ViewMap.h.

References Freestyle::SVertex::setViewVertex().

◆ setFrontEdgeA()

void Freestyle::TVertex::setFrontEdgeA ( ViewEdge iFrontEdgeA,
bool  incoming = true 
)

Definition at line 323 of file ViewMap.cpp.

References Freestyle::ViewEdgeComp().

◆ setFrontEdgeB()

void Freestyle::TVertex::setFrontEdgeB ( ViewEdge iFrontEdgeB,
bool  incoming = true 
)

Definition at line 342 of file ViewMap.cpp.

References Freestyle::ViewEdgeComp().

◆ setFrontSVertex()

void Freestyle::TVertex::setFrontSVertex ( SVertex iFrontSVertex)
inline

Sets the SVertex that is closer to the viewpoint.

Definition at line 555 of file ViewMap.h.

References Freestyle::SVertex::setViewVertex().

◆ setId()

void Freestyle::TVertex::setId ( const Id iId)
inline

Sets the Id.

Definition at line 574 of file ViewMap.h.

Referenced by Freestyle::ViewMap::CreateTVertex().


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