Nuke binary plugins  14.0.8
slr::SlrTriangle Class Reference

Public Types

enum  EdgeMask { eMaskEdge01, eMaskEdge12, eMaskEdge20, eMaskEdgeAll }
 Used to mark if the edge of triangle is also an edge of the original face. More...
 

Public Member Functions

 SlrTriangle (SlrPrimInfo *_motionPrimInfo)
 

Public Attributes

SlrPrimInfomotionPrimInfo
 Parent object.
 
fdk::Box3f sbbox
 TODO: reduce this?
 
SlrVertex v [3]
 in SCREEN coordinates - w_normalized!!!
 
float Ax
 
float Ay
 
float Bx
 
float By
 
float Nz
 For figuring out derivatives.
 
uint8_t faceEdgeMask
 Which edges are part of a larger face edge.
 
SlrTrianglenextTri
 Circular list of all triangles part of the original face.
 

Friends

std::ostream & operator<< (std::ostream &, const SlrTriangle &)
 

Detailed Description

Renderable triangle class, created once a projection into screen space is known. The Triangle primitive class creates one of these, and add_to_render() may then change this to 0,1, or 2 renderable triangles (depending on clipping). Other primitives such as grid will create quite a few more of these.

Member Enumeration Documentation

Used to mark if the edge of triangle is also an edge of the original face.

Enumerator
eMaskEdge01 

1st edge v0->v1

eMaskEdge12 

2nd edge v1->v2

eMaskEdge20 

3rd edge v2->v0

eMaskEdgeAll 

All three edges.



©2024 The Foundry Visionmongers, Ltd. All Rights Reserved.
www.foundry.com