Coin Logo Coin3D is Free Software,
published under the BSD 3-clause license.
https://bitbucket.org/Coin3D/
http://www.kongsberg.com/kogt/
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
SoFEMKit.cpp File Reference
#include "SoFEMKit.h"
#include <Inventor/nodes/SoCoordinate3.h>
#include <Inventor/nodes/SoNormal.h>
#include <Inventor/nodes/SoSeparator.h>
#include <Inventor/nodes/SoIndexedFaceSet.h>
#include <Inventor/nodes/SoPackedColor.h>
#include <Inventor/nodes/SoShapeHints.h>
#include <Inventor/nodes/SoMaterialBinding.h>
#include <Inventor/nodes/SoNormalBinding.h>
#include <Inventor/lists/SbList.h>
#include <Inventor/SbColor.h>
#include <Inventor/SbPlane.h>
#include <Inventor/SbBSPTree.h>
#include <Inventor/sensors/SoFieldSensor.h>
#include <Inventor/sensors/SoOneShotSensor.h>
#include <Inventor/actions/SoGLRenderAction.h>
#include <cstring>

Macros

#define THIS   this->pimpl
 

Functions

 SO_KIT_SOURCE (SoFEMKit)
 
static SbBool intersect_plane (const SbPlane &p, const int32_t *nodeidx, const int numnodes, const SbList< SoFEMNode > &nodes, const SbList< int > &nodelookup)
 
static SbVec3f calc_normal (SbVec3f *coords, const int32_t *cidx)
 
static void count_vertices (SoFEMKit *fem, SoFEM3DElement &elem, int *vcnt)
 
static void count_vertices (SoFEMKit *fem, SoFEM2DElement &elem, int *vcnt)
 
static void add_elem_3d (SoFEMKit *fem, SoFEM3DElement &elem, SbList< int32_t > &cidx, SbList< int32_t > &nidx, SbList< int32_t > &midx, SbVec3f *coords, SbBSPTree &normalbsp, const int *vcnt)
 
static void add_elem_2d (SoFEMKit *fem, SoFEM2DElement &elem, SbList< int32_t > &cidx, SbList< int32_t > &nidx, SbList< int32_t > &midx, SbVec3f *coords, SbBSPTree &normalbsp, const int *vcnt)
 

Macro Definition Documentation

◆ THIS

#define THIS   this->pimpl

Function Documentation

◆ add_elem_2d()

static void add_elem_2d ( SoFEMKit fem,
SoFEM2DElement &  elem,
SbList< int32_t > &  cidx,
SbList< int32_t > &  nidx,
SbList< int32_t > &  midx,
SbVec3f coords,
SbBSPTree normalbsp,
const int *  vcnt 
)
static

◆ add_elem_3d()

static void add_elem_3d ( SoFEMKit fem,
SoFEM3DElement &  elem,
SbList< int32_t > &  cidx,
SbList< int32_t > &  nidx,
SbList< int32_t > &  midx,
SbVec3f coords,
SbBSPTree normalbsp,
const int *  vcnt 
)
static

◆ calc_normal()

static SbVec3f calc_normal ( SbVec3f coords,
const int32_t *  cidx 
)
static

◆ count_vertices() [1/2]

static void count_vertices ( SoFEMKit fem,
SoFEM3DElement &  elem,
int *  vcnt 
)
static

◆ count_vertices() [2/2]

static void count_vertices ( SoFEMKit fem,
SoFEM2DElement &  elem,
int *  vcnt 
)
static

◆ intersect_plane()

static SbBool intersect_plane ( const SbPlane p,
const int32_t *  nodeidx,
const int  numnodes,
const SbList< SoFEMNode > &  nodes,
const SbList< int > &  nodelookup 
)
static

◆ SO_KIT_SOURCE()

SO_KIT_SOURCE ( SoFEMKit  )