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

#include <Stroke.h>

Inheritance diagram for Freestyle::StrokeVertex:
Freestyle::CurvePoint Freestyle::Interface0D

Public Member Functions

virtual string getExactTypeName () const
 
 StrokeVertex ()
 
 StrokeVertex (const StrokeVertex &iBrother)
 
 StrokeVertex (SVertex *iSVertex)
 
 StrokeVertex (CurvePoint *iPoint)
 
 StrokeVertex (StrokeVertex *iA, StrokeVertex *iB, float t3)
 
 StrokeVertex (SVertex *iSVertex, const StrokeAttribute &iAttribute)
 
StrokeVertexoperator= (const StrokeVertex &iBrother)
 
real x () const
 
real y () const
 
Vec2r getPoint () const
 
real operator[] (const int i) const
 
const StrokeAttributeattribute () const
 
StrokeAttributeattribute ()
 
float curvilinearAbscissa () const
 
float strokeLength () const
 
float u () const
 
void setX (real x)
 
void setY (real y)
 
void setPoint (real x, real y)
 
void setPoint (const Vec2r &p)
 
realoperator[] (const int i)
 
void setAttribute (const StrokeAttribute &iAttribute)
 
void setCurvilinearAbscissa (float iAbscissa)
 
void setStrokeLength (float iLength)
 
- Public Member Functions inherited from Freestyle::CurvePoint
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 FEdgegetFEdge (Interface0D &inter)
 
virtual Id getId () const
 
virtual Nature::VertexNature getNature () const
 
virtual SVertexcastToSVertex ()
 
virtual ViewVertexcastToViewVertex ()
 
virtual NonTVertexcastToNonTVertex ()
 
virtual TVertexcastToTVertex ()
 
 CurvePoint ()
 
 CurvePoint (SVertex *iA, SVertex *iB, float t)
 
 CurvePoint (CurvePoint *iA, CurvePoint *iB, float t)
 
 CurvePoint (const CurvePoint &iBrother)
 
CurvePointoperator= (const CurvePoint &iBrother)
 
virtual ~CurvePoint ()=default
 
bool operator== (const CurvePoint &b)
 
SVertexA ()
 
SVertexB ()
 
float t2d () const
 
void setA (SVertex *iA)
 
void setB (SVertex *iB)
 
void setT2d (float t)
 
FEdgefedge ()
 
const Vec3rpoint2d () const
 
const Vec3rpoint3d () const
 
Vec3r normal () const
 
const SShapeshape () const
 
occluder_container::const_iterator occluders_begin () const
 
occluder_container::const_iterator occluders_end () const
 
bool occluders_empty () const
 
int occluders_size () const
 
const Polygon3roccludee () const
 
const SShapeoccluded_shape () const
 
bool occludee_empty () const
 
real z_discontinuity () const
 
- Public Member Functions inherited from Freestyle::Interface0D
 Interface0D ()
 
virtual ~Interface0D ()
 

Additional Inherited Members

- Public Types inherited from Freestyle::CurvePoint
typedef SVertex vertex_type
 
- Protected Attributes inherited from Freestyle::CurvePoint
SVertex__A
 
SVertex__B
 
float _t2d
 
Vec3r _Point2d
 
Vec3r _Point3d
 

Detailed Description

Class to define a stroke vertex.

Definition at line 312 of file Stroke.h.

Constructor & Destructor Documentation

◆ StrokeVertex() [1/6]

Freestyle::StrokeVertex::StrokeVertex ( )

default constructor

Definition at line 331 of file Stroke.cpp.

◆ StrokeVertex() [2/6]

Freestyle::StrokeVertex::StrokeVertex ( const StrokeVertex iBrother)

Copy constructor

Definition at line 337 of file Stroke.cpp.

◆ StrokeVertex() [3/6]

Freestyle::StrokeVertex::StrokeVertex ( SVertex iSVertex)

Builds a stroke vertex from a SVertex

Definition at line 344 of file Stroke.cpp.

◆ StrokeVertex() [4/6]

Freestyle::StrokeVertex::StrokeVertex ( CurvePoint iPoint)

Builds a stroke vertex from a CurvePoint

Definition at line 350 of file Stroke.cpp.

◆ StrokeVertex() [5/6]

Freestyle::StrokeVertex::StrokeVertex ( StrokeVertex iA,
StrokeVertex iB,
float  t3 
)

Builds Stroke Vertex from 2 stroke vertices and an interpolation parameter.

Definition at line 356 of file Stroke.cpp.

References attribute(), curvilinearAbscissa(), and strokeLength().

◆ StrokeVertex() [6/6]

Freestyle::StrokeVertex::StrokeVertex ( SVertex iSVertex,
const StrokeAttribute iAttribute 
)

Builds a stroke from a view vertex and an attribute

Definition at line 364 of file Stroke.cpp.

Member Function Documentation

◆ attribute() [1/2]

StrokeAttribute& Freestyle::StrokeVertex::attribute ( )
inline

Returns a non-const reference to the StrokeAttribute of this StrokeVertex

Definition at line 380 of file Stroke.h.

◆ attribute() [2/2]

const StrokeAttribute& Freestyle::StrokeVertex::attribute ( ) const
inline

◆ curvilinearAbscissa()

float Freestyle::StrokeVertex::curvilinearAbscissa ( ) const
inline

Returns the curvilinear abscissa

Definition at line 386 of file Stroke.h.

Referenced by Freestyle::Strip::computeTexCoord(), Freestyle::Strip::computeTexCoordWithTips(), Freestyle::operator<<(), and StrokeVertex().

◆ getExactTypeName()

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

Returns the string "StrokeVertex"

Reimplemented from Freestyle::CurvePoint.

Definition at line 315 of file Stroke.h.

◆ getPoint()

Vec2r Freestyle::StrokeVertex::getPoint ( ) const
inline

Returns the 2D point coordinates as a Vec2r

Definition at line 362 of file Stroke.h.

References Freestyle::CurvePoint::getPoint2D().

Referenced by Freestyle::Strip::cleanUpSingularities(), Freestyle::Strip::createStrip(), and Freestyle::createStroke().

◆ operator=()

StrokeVertex & Freestyle::StrokeVertex::operator= ( const StrokeVertex iBrother)

operator =

Definition at line 372 of file Stroke.cpp.

◆ operator[]() [1/2]

real& Freestyle::StrokeVertex::operator[] ( const int  i)
inline

Returns a reference to the ith 2D point coordinate (i=0 or 1)

Definition at line 431 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d.

◆ operator[]() [2/2]

real Freestyle::StrokeVertex::operator[] ( const int  i) const
inline

Returns the ith 2D point coordinate (i=0 or 1).

Definition at line 368 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d.

◆ setAttribute()

void Freestyle::StrokeVertex::setAttribute ( const StrokeAttribute iAttribute)
inline

sets the attribute.

Definition at line 437 of file Stroke.h.

◆ setCurvilinearAbscissa()

void Freestyle::StrokeVertex::setCurvilinearAbscissa ( float  iAbscissa)
inline

sets the curvilinear abscissa of this StrokeVertex in the Stroke

Definition at line 443 of file Stroke.h.

Referenced by Freestyle::createStroke().

◆ setPoint() [1/2]

void Freestyle::StrokeVertex::setPoint ( const Vec2r p)
inline

sets the 2D x and y values

Definition at line 424 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d.

◆ setPoint() [2/2]

void Freestyle::StrokeVertex::setPoint ( real  x,
real  y 
)
inline

sets the 2D x and y values

Definition at line 417 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d, x(), and y().

Referenced by Freestyle::createStroke(), and Freestyle::StrokeShaders::ExternalContourStretcherShader::shade().

◆ setStrokeLength()

void Freestyle::StrokeVertex::setStrokeLength ( float  iLength)
inline

sets the Stroke's length (it's only a value stored by the Stroke Vertex, it won't change the real Stroke's length.)

Definition at line 451 of file Stroke.h.

◆ setX()

void Freestyle::StrokeVertex::setX ( real  x)
inline

sets the 2D x value

Definition at line 405 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d, and x().

Referenced by Freestyle::StrokeShaders::BezierCurveShader::shade().

◆ setY()

void Freestyle::StrokeVertex::setY ( real  y)
inline

sets the 2D y value

Definition at line 411 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d, and y().

Referenced by Freestyle::StrokeShaders::BezierCurveShader::shade().

◆ strokeLength()

float Freestyle::StrokeVertex::strokeLength ( ) const
inline

Returns the length of the Stroke to which this StrokeVertex belongs

Definition at line 392 of file Stroke.h.

Referenced by Freestyle::SpatialNoiseShader::shade(), and StrokeVertex().

◆ u()

float Freestyle::StrokeVertex::u ( ) const
inline

Returns the curvilinear abscissa of this StrokeVertex in the Stroke

Definition at line 398 of file Stroke.h.

◆ x()

real Freestyle::StrokeVertex::x ( ) const
inline

Returns the 2D point x coordinate

Definition at line 350 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d.

Referenced by setPoint(), setX(), and Freestyle::StrokeShaders::ExternalContourStretcherShader::shade().

◆ y()

real Freestyle::StrokeVertex::y ( ) const
inline

Returns the 2D point y coordinate

Definition at line 356 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d.

Referenced by setPoint(), setY(), and Freestyle::StrokeShaders::ExternalContourStretcherShader::shade().


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