Blender V5.0
Freestyle::StrokeVertex Class Reference

#include <Stroke.h>

Inherits Freestyle::CurvePoint.

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 310 of file Stroke.h.

Constructor & Destructor Documentation

◆ StrokeVertex() [1/6]

Freestyle::StrokeVertex::StrokeVertex ( )

default constructor

Definition at line 333 of file Stroke.cpp.

Referenced by operator=(), StrokeVertex(), and StrokeVertex().

◆ StrokeVertex() [2/6]

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

Copy constructor

Definition at line 339 of file Stroke.cpp.

References Freestyle::CurvePoint::CurvePoint(), and StrokeVertex().

◆ StrokeVertex() [3/6]

Freestyle::StrokeVertex::StrokeVertex ( SVertex * iSVertex)

Builds a stroke vertex from a SVertex

Definition at line 346 of file Stroke.cpp.

References Freestyle::CurvePoint::CurvePoint(), and nullptr.

◆ StrokeVertex() [4/6]

Freestyle::StrokeVertex::StrokeVertex ( CurvePoint * iPoint)

Builds a stroke vertex from a CurvePoint

Definition at line 352 of file Stroke.cpp.

References Freestyle::CurvePoint::CurvePoint().

◆ 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 358 of file Stroke.cpp.

References attribute(), Freestyle::CurvePoint::CurvePoint(), curvilinearAbscissa(), strokeLength(), and StrokeVertex().

◆ StrokeVertex() [6/6]

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

Builds a stroke from a view vertex and an attribute

Definition at line 366 of file Stroke.cpp.

References Freestyle::CurvePoint::CurvePoint(), and nullptr.

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 378 of file Stroke.h.

◆ attribute() [2/2]

◆ curvilinearAbscissa()

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

Returns the curvilinear abscissa

Definition at line 384 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 313 of file Stroke.h.

◆ getPoint()

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

Returns the 2D point coordinates as a Vec2r

Definition at line 360 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 374 of file Stroke.cpp.

References Freestyle::CurvePoint::CurvePoint(), and StrokeVertex().

◆ operator[]() [1/2]

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

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

Definition at line 429 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d, and i.

◆ operator[]() [2/2]

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

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

Definition at line 366 of file Stroke.h.

References Freestyle::CurvePoint::_Point2d, and i.

◆ setAttribute()

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

sets the attribute.

Definition at line 435 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 441 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 422 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 415 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 449 of file Stroke.h.

◆ setX()

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

sets the 2D x value

Definition at line 403 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 409 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 390 of file Stroke.h.

Referenced by StrokeVertex().

◆ u()

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

Returns the curvilinear abscissa of this StrokeVertex in the Stroke

Definition at line 396 of file Stroke.h.

◆ x()

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

Returns the 2D point x coordinate

Definition at line 348 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 354 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: