Blender V4.3
QuadDice Class Reference

#include <dice.h>

Inherits EdgeDice.

Public Member Functions

 QuadDice (const SubdParams &params)
 
float3 eval_projected (Subpatch &sub, float u, float v)
 
float2 map_uv (Subpatch &sub, float u, float v)
 
void set_vert (Subpatch &sub, int index, float u, float v)
 
void add_grid (Subpatch &sub, int Mu, int Mv, int offset)
 
void set_side (Subpatch &sub, int edge)
 
float quad_area (const float3 &a, const float3 &b, const float3 &c, const float3 &d)
 
float scale_factor (Subpatch &sub, int Mu, int Mv)
 
void dice (Subpatch &sub)
 
- Public Member Functions inherited from EdgeDice
 EdgeDice (const SubdParams &params)
 
void reserve (int num_verts, int num_triangles)
 
void set_vert (Patch *patch, int index, float2 uv)
 
void add_triangle (Patch *patch, int v0, int v1, int v2)
 
void stitch_triangles (Subpatch &sub, int edge)
 

Additional Inherited Members

- Public Attributes inherited from EdgeDice
SubdParams params
 
float3mesh_P
 
float3mesh_N
 
size_t vert_offset
 
size_t tri_offset
 

Detailed Description

Definition at line 70 of file dice.h.

Constructor & Destructor Documentation

◆ QuadDice()

QuadDice::QuadDice ( const SubdParams & params)
explicit

Definition at line 122 of file dice.cpp.

Member Function Documentation

◆ add_grid()

void QuadDice::add_grid ( Subpatch & sub,
int Mu,
int Mv,
int offset )

Definition at line 219 of file dice.cpp.

References EdgeDice::add_triangle(), float, Subpatch::patch, set_vert, and v.

Referenced by dice().

◆ dice()

◆ eval_projected()

float3 QuadDice::eval_projected ( Subpatch & sub,
float u,
float v )

◆ map_uv()

float2 QuadDice::map_uv ( Subpatch & sub,
float u,
float v )

Definition at line 124 of file dice.cpp.

References Subpatch::c00, Subpatch::c01, Subpatch::c10, Subpatch::c11, interp(), and v.

Referenced by eval_projected(), and set_vert().

◆ quad_area()

float QuadDice::quad_area ( const float3 & a,
const float3 & b,
const float3 & c,
const float3 & d )

Definition at line 183 of file dice.cpp.

References b, and triangle_area().

Referenced by scale_factor().

◆ scale_factor()

float QuadDice::scale_factor ( Subpatch & sub,
int Mu,
int Mv )

◆ set_side()

void QuadDice::set_side ( Subpatch & sub,
int edge )

Definition at line 150 of file dice.cpp.

References Subpatch::edges, float, Subpatch::get_vert_along_edge(), set_vert, Subpatch::edge_t::T, and v.

Referenced by dice().

◆ set_vert()

void QuadDice::set_vert ( Subpatch & sub,
int index,
float u,
float v )

Definition at line 145 of file dice.cpp.

References map_uv(), Subpatch::patch, EdgeDice::set_vert(), and v.


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