Cumulia Illustrator Rendering Engine v2.1.0
A Rendering engine for industrial CAD/CAE model and optimized for greatest performance
 
Loading...
Searching...
No Matches
cil::Stencil Class Reference

The Stencil class inherits from the base class State, describing how the stencil test is operated during rendering. More...

#include <state.h>

Inheritance diagram for cil::Stencil:
cil::State cil::Object

Public Types

enum class  Function {
  NEVER , LESS , LEQUAL , EQUAL ,
  NOTEQUAL , GEQUAL , GREATER , ALWAYS
}
 This enumeration defines different comparison operators used for the stencil test. More...
 
enum class  Operation {
  KEEP , ZERO , REPLACE , INCR ,
  DECR , INVERT , INCR_WRAP , DECR_WRAP
}
 This enumeration defines how to update the stencil buffer after the stencil test. More...
 

Public Member Functions

 Stencil (bool enabled=false, Stencil::Operation sfail=Stencil::Operation::KEEP, Stencil::Operation dpfail=Stencil::Operation::KEEP, Stencil::Operation dppass=Stencil::Operation::KEEP, Stencil::Function func=Stencil::Function::ALWAYS, int ref=0, int mask=0xFF)
 
- Public Member Functions inherited from cil::State
 State ()
 
const std::string & className () const
 
- Public Member Functions inherited from cil::Object
 Object ()
 
virtual ~Object ()
 

Public Attributes

bool enabled
 
Operation sfail
 Action to take if the stencil test fails.
 
Operation dpfail
 Action to take if the stencil test passes, but the depth test fails.
 
Operation dppass
 Action to take if both the stencil and the depth test pass.
 
Function func
 
int ref
 This member specifies the reference value for the stencil test.
 
int mask
 

Additional Inherited Members

- Protected Attributes inherited from cil::State
std::string m_className
 

Detailed Description

The Stencil class inherits from the base class State, describing how the stencil test is operated during rendering.

Member Enumeration Documentation

◆ Function

enum class cil::Stencil::Function
strong

This enumeration defines different comparison operators used for the stencil test.

The comparison is applied to the stored stencil value and the function's ref value.

Enumerator
NEVER 
LESS 
LEQUAL 
EQUAL 
NOTEQUAL 
GEQUAL 
GREATER 
ALWAYS 

◆ Operation

enum class cil::Stencil::Operation
strong

This enumeration defines how to update the stencil buffer after the stencil test.

Enumerator
KEEP 
ZERO 
REPLACE 
INCR 
DECR 
INVERT 
INCR_WRAP 
DECR_WRAP 

Constructor & Destructor Documentation

◆ Stencil()

cil::Stencil::Stencil ( bool enabled = false,
Stencil::Operation sfail = Stencil::Operation::KEEP,
Stencil::Operation dpfail = Stencil::Operation::KEEP,
Stencil::Operation dppass = Stencil::Operation::KEEP,
Stencil::Function func = Stencil::Function::ALWAYS,
int ref = 0,
int mask = 0xFF )

Member Data Documentation

◆ dpfail

Operation cil::Stencil::dpfail

Action to take if the stencil test passes, but the depth test fails.

◆ dppass

Operation cil::Stencil::dppass

Action to take if both the stencil and the depth test pass.

◆ enabled

bool cil::Stencil::enabled

◆ func

Function cil::Stencil::func

◆ mask

int cil::Stencil::mask

◆ ref

int cil::Stencil::ref

This member specifies the reference value for the stencil test.

◆ sfail

Operation cil::Stencil::sfail

Action to take if the stencil test fails.