SoGeometryShader - Online Linux Manual PageSection : 3
Updated : Mon Jan 25 2021
Source : Version 2.5.0
Note : Coin

NAMESoGeometryShader − The SoGeometryShader class is used for loading geometry shader programs​.

SYNOPSIS
#include <Inventor/nodes/SoGeometryShader​.h> Inherits SoShaderObject​.

Public Typesenum InputType { POINTS_IN, LINES_IN, TRIANGLES_IN }
enum OutputType { POINTS_OUT, LINE_STRIP_OUT, TRIANGLE_STRIP_OUT }

Public Member Functionsvirtual SoType getTypeId (void) const
SoGeometryShader (void)
virtual ~SoGeometryShader ()
virtual void GLRender (SoGLRenderAction *action)

Static Public Member Functionsstatic SoType getClassTypeId (void)
static void initClass (void)
static SbBool isSupported (SourceType sourceType)

Public AttributesSoSFEnum inputType
SoSFEnum outputType
SoSFInt32 maxEmit

Protected Member Functionsvirtual const SoFieldData * getFieldData (void) const

Static Protected Member Functionsstatic const SoFieldData ** getFieldDataPtr (void)

Additional Inherited Members

Detailed DescriptionThe SoGeometryShader class is used for loading geometry shader programs​. See Shaders in Coin for more information on how to set up a scene graph with shaders​. FILE FORMAT/DEFAULTS: GeometryShader { isActive TRUE sourceType FILENAME sourceProgram "" parameter [] inputType TRIANGLES_IN outputType TRIANGLE_STRIP_OUT maxEmit 8 } See also SoShaderObject SoShaderProgram Since Coin 2​.5

Member Enumeration Documentation

enum SoGeometryShader::InputTypeEnumerates the input types​. Enumerator POINTS_IN  Shader uses points as input​. LINES_IN  Shader uses lines as input​. TRIANGLES_IN  Shader uses triangles as input​. OpenGL will automatically convert quads and polygons into triangles​.

enum SoGeometryShader::OutputTypeEnumerates the output types​. Enumerator POINTS_OUT  Shader generates points​. LINE_STRIP_OUT  Shader generates line strips​.

Constructor & Destructor Documentation

SoGeometryShader::SoGeometryShader (void)Constructor​. References inputType, LINE_STRIP_OUT, LINES_IN, maxEmit, outputType, POINTS_IN, POINTS_OUT, and TRIANGLES_IN​.

SoGeometryShader::~SoGeometryShader () [virtual]Destructor​.

Member Function Documentation

SoType SoGeometryShader::getTypeId (void) const [virtual]Returns the type identification of an object derived from a class inheriting SoBase​. This is used for run-time type checking and 'downward' casting​. Usage example: void foo(SoNode * node) { if (node->getTypeId() == SoFile::getClassTypeId()) { SoFile * filenode = (SoFile *)node; // safe downward cast, knows the type } else if (node->getTypeId()​.isOfType(SoGroup::getClassTypeId())) { SoGroup * group = (SoGroup *)node; // safe downward cast, knows the type } }For application programmers wanting to extend the library with new nodes, engines, nodekits, draggers or others: this method needs to be overridden in all subclasses​. This is typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the pre-defined macros available through for instance Inventor/nodes/SoSubNode​.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes), Inventor/engines/SoSubEngine​.h (for engine classes) and so on​. For more information on writing Coin extensions, see the class documentation of the toplevel superclasses for the various class groups​. Reimplemented from SoShaderObject​.

const SoFieldData * SoGeometryShader::getFieldData (void) const [protected], [virtual]Returns a pointer to the class-wide field data storage object for this instance​. If no fields are present, returns NULL​. Reimplemented from SoShaderObject​.

void SoGeometryShader::GLRender (SoGLRenderAction * action) [virtual]Action method for the SoGLRenderAction​. This is called during rendering traversals​. Nodes influencing the rendering state in any way or who wants to throw geometry primitives at OpenGL overrides this method​. Reimplemented from SoShaderObject​. References SoAction::getState(), SoShaderObject::GLRender(), inputType, SoShaderObject::isActive, LINE_STRIP_OUT, LINES_IN, maxEmit, outputType, POINTS_IN, POINTS_OUT, SoDebugError::post(), and TRIANGLES_IN​.

SbBool SoGeometryShader::isSupported (SourceType sourceType) [static]Returns a boolean indicating whether the requested source type is supported by the OpenGL driver or not​. Beware: To get a correct answer, a valid OpenGL context must be available​. References SoShaderObject::ARB_PROGRAM, SoShaderObject::CG_PROGRAM, SoShaderObject::GLSL_PROGRAM, and SoShaderObject::sourceType​.

Member Data Documentation

SoSFEnum SoGeometryShader::inputTypeThe type of geometry used as input to the shader​. Default value is TRIANGLES_IN​. Referenced by GLRender(), and SoGeometryShader()​.

SoSFEnum SoGeometryShader::outputTypeThe type of geometry generated from the shader​. Default value is TRIANGLE_FAN_OUT​. Referenced by GLRender(), and SoGeometryShader()​.

SoSFInt32 SoGeometryShader::maxEmitThe maximum number of vertices emitted from the shader​. Default value is 8​. This corresponds to the GL_GEOMETRY_VERTICES_OUT_EXT enum​. Referenced by GLRender(), and SoGeometryShader()​.

AuthorGenerated automatically by Doxygen for Coin from the source code​.
0
Johanes Gumabo
Data Size   :   28,407 byte
man-SoGeometryShader.3coin2Build   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   5 / 179,974
Visitor ID   :     :  
Visitor IP   :   3.145.44.46   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.