VisuTwin Canvas
C++ 3D Engine — Metal Backend
Loading...
Searching...
No Matches
visutwin::canvas::StlParserConfig Struct Reference

Configuration options for STL loading. More...

#include <framework/parsers/stlParser.h>

Public Attributes

float creaseAngle = 40.0f
float diffuseB = 0.8f
float diffuseG = 0.8f
float diffuseR = 0.8f
 Default material diffuse color (STL has no material data).
bool flipWinding = false
 If true, reverse face winding order.
bool flipYZ = false
 If true, swap Y and Z axes (Z-up CAD -> Y-up engine) and negate new Z.
bool generateSmoothNormals = false
bool generateTangents = true
 Generate tangents from normals (Gram-Schmidt fallback since STL has no UVs).
float metalness = 0.0f
 Default material metalness (0 = dielectric, 1 = metal).
float roughness = 0.5f
 Default material roughness (0 = mirror, 1 = matte).
float uniformScale = 1.0f
 Uniform scale applied to all vertex positions (e.g., 0.001 for mm -> m).

Detailed Description

Configuration options for STL loading.

Definition at line 29 of file stlParser.h.

Member Data Documentation

◆ creaseAngle

float visutwin::canvas::StlParserConfig::creaseAngle = 40.0f

Crease angle in degrees for smooth normal generation (only used when generateSmoothNormals is true). Angles between adjacent face normals smaller than this threshold are smoothed; larger angles produce hard edges. 30-45 degrees works well for machined robot parts.

Definition at line 48 of file stlParser.h.

◆ diffuseB

float visutwin::canvas::StlParserConfig::diffuseB = 0.8f

Definition at line 56 of file stlParser.h.

Referenced by visutwin::canvas::StlParser::parse().

◆ diffuseG

float visutwin::canvas::StlParserConfig::diffuseG = 0.8f

Definition at line 55 of file stlParser.h.

Referenced by visutwin::canvas::StlParser::parse().

◆ diffuseR

float visutwin::canvas::StlParserConfig::diffuseR = 0.8f

Default material diffuse color (STL has no material data).

Definition at line 54 of file stlParser.h.

Referenced by visutwin::canvas::StlParser::parse().

◆ flipWinding

bool visutwin::canvas::StlParserConfig::flipWinding = false

If true, reverse face winding order.

Definition at line 38 of file stlParser.h.

◆ flipYZ

bool visutwin::canvas::StlParserConfig::flipYZ = false

If true, swap Y and Z axes (Z-up CAD -> Y-up engine) and negate new Z.

Definition at line 35 of file stlParser.h.

◆ generateSmoothNormals

bool visutwin::canvas::StlParserConfig::generateSmoothNormals = false

Generate smooth normals using crease-angle threshold. If false, flat shading is used (face normal per triangle).

Definition at line 42 of file stlParser.h.

Referenced by visutwin::canvas::StlParser::parse().

◆ generateTangents

bool visutwin::canvas::StlParserConfig::generateTangents = true

Generate tangents from normals (Gram-Schmidt fallback since STL has no UVs).

Definition at line 51 of file stlParser.h.

◆ metalness

float visutwin::canvas::StlParserConfig::metalness = 0.0f

Default material metalness (0 = dielectric, 1 = metal).

Definition at line 59 of file stlParser.h.

Referenced by visutwin::canvas::StlParser::parse().

◆ roughness

float visutwin::canvas::StlParserConfig::roughness = 0.5f

Default material roughness (0 = mirror, 1 = matte).

Definition at line 62 of file stlParser.h.

Referenced by visutwin::canvas::StlParser::parse().

◆ uniformScale

float visutwin::canvas::StlParserConfig::uniformScale = 1.0f

Uniform scale applied to all vertex positions (e.g., 0.001 for mm -> m).

Definition at line 32 of file stlParser.h.


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