Euphoria
Public Member Functions | Public Attributes | List of all members
eu::core::geom::Builder Struct Reference

A helper utility to create a Geom. More...

Public Member Functions

Index add_text_coord (const v2 &tc)
 
Index add_position (const v3 &pos)
 
Index add_normal (const n3 &norm)
 
Index add_color (const Lin_rgb &color)
 
void add_weight (const v4 &weight)
 
void add_influence (const Influence4 &weight)
 
Index foa_text_coord (const v2 &v, float max_diff)
 
Index foa_position (const v3 &pos, float max_diff)
 
Index foa_normal (const n3 &norm, float max_diff)
 
Index foa_color (const Lin_rgb &color, float max_diff)
 
Builderadd_triangle (const Triangle &t)
 
Builderadd_quad (bool ccw, const Vertex &v0, const Vertex &v1, const Vertex &v2, const Vertex &v3)
 
Builderadd_face (const std::vector< Vertex > &)
 
Buildermove (const v3 &dir)
 
Builderscale (float scale)
 
Builderinvert_normals ()
 
Geom to_geom () const
 
Builderwrite_obj (const std::string &path)
 

Public Attributes

std::vector< std::vector< Vertex > > faces
 
std::vector< v3positions
 
std::vector< n3normals
 
std::vector< v2texcoords
 
std::vector< v3lin_colors
 in linear space
 
std::vector< v4weights
 
std::vector< Influence4influences
 

Detailed Description

A helper utility to create a Geom.

Definition at line 61 of file geom.builder.h.

Member Function Documentation

◆ add_color()

Index eu::core::geom::Builder::add_color ( const Lin_rgb color)

◆ add_face()

Builder & eu::core::geom::Builder::add_face ( const std::vector< Vertex > &  )

◆ add_influence()

void eu::core::geom::Builder::add_influence ( const Influence4 weight)

◆ add_normal()

Index eu::core::geom::Builder::add_normal ( const n3 norm)

◆ add_position()

Index eu::core::geom::Builder::add_position ( const v3 pos)

◆ add_quad()

Builder & eu::core::geom::Builder::add_quad ( bool  ccw,
const Vertex v0,
const Vertex v1,
const Vertex v2,
const Vertex v3 
)

◆ add_text_coord()

Index eu::core::geom::Builder::add_text_coord ( const v2 tc)

◆ add_triangle()

Builder & eu::core::geom::Builder::add_triangle ( const Triangle t)

◆ add_weight()

void eu::core::geom::Builder::add_weight ( const v4 weight)

◆ foa_color()

Index eu::core::geom::Builder::foa_color ( const Lin_rgb color,
float  max_diff 
)

◆ foa_normal()

Index eu::core::geom::Builder::foa_normal ( const n3 norm,
float  max_diff 
)

◆ foa_position()

Index eu::core::geom::Builder::foa_position ( const v3 pos,
float  max_diff 
)

◆ foa_text_coord()

Index eu::core::geom::Builder::foa_text_coord ( const v2 v,
float  max_diff 
)

◆ invert_normals()

Builder & eu::core::geom::Builder::invert_normals ( )

◆ move()

Builder & eu::core::geom::Builder::move ( const v3 dir)

◆ scale()

Builder & eu::core::geom::Builder::scale ( float  scale)

◆ to_geom()

Geom eu::core::geom::Builder::to_geom ( ) const

◆ write_obj()

Builder & eu::core::geom::Builder::write_obj ( const std::string &  path)

Member Data Documentation

◆ faces

std::vector<std::vector<Vertex> > eu::core::geom::Builder::faces

Definition at line 88 of file geom.builder.h.

◆ influences

std::vector<Influence4> eu::core::geom::Builder::influences

Definition at line 94 of file geom.builder.h.

◆ lin_colors

std::vector<v3> eu::core::geom::Builder::lin_colors

in linear space

Definition at line 92 of file geom.builder.h.

◆ normals

std::vector<n3> eu::core::geom::Builder::normals

Definition at line 90 of file geom.builder.h.

◆ positions

std::vector<v3> eu::core::geom::Builder::positions

Definition at line 89 of file geom.builder.h.

◆ texcoords

std::vector<v2> eu::core::geom::Builder::texcoords

Definition at line 91 of file geom.builder.h.

◆ weights

std::vector<v4> eu::core::geom::Builder::weights

Definition at line 93 of file geom.builder.h.


The documentation for this struct was generated from the following file: