    

 ## On this page

  

 

 # IRockyGeometryTriangle Struct Reference

 Last update: 17.07.2025 

`#include <<a class="el" href="rocky__boundary__api_8hpp_source.xhtml">rocky_boundary_api.hpp</a>>`

Inherits IRockyGeometryTriangleImpl&lt; SDeviceModel &gt;.

## <a id="pub-methods" name="pub-methods"></a>Public Member Functions

ROCKY\_FUNCTIONS [IRockyMaterial](structIRockyMaterial.xhtml) [get\_material](structIRockyGeometryTriangle.xhtml#ad93dcca6decba182b3cc02e95bd09c38) () const ROCKY\_FUNCTIONS double3 [get\_normal\_unit\_vector](structIRockyGeometryTriangle.xhtml#a3dffe992b4dc3278be110fd792142b80) () const ROCKY\_FUNCTIONS double [get\_area](structIRockyGeometryTriangle.xhtml#a87f5f5f9d279e717777feb3a934bac82) () const ROCKY\_FUNCTIONS double3 [get\_centroid](structIRockyGeometryTriangle.xhtml#a51271bd50959a8f2a353ac6673ee7fd7) () const ROCKY\_FUNCTIONS int [get\_geometry\_index](structIRockyGeometryTriangle.xhtml#a8498939de6ea592bbfff2a4ec075f6ee) () const ROCKY\_FUNCTIONS int [get\_material\_index](structIRockyGeometryTriangle.xhtml#a9bcc3c8846e93fd1e9876ba328e6a09d) () const ROCKY\_FUNCTIONS double3 [get\_translational\_velocity](structIRockyGeometryTriangle.xhtml#a704cfc661bc09630a2d7345d7ea53309) (double current\_time) const ROCKY\_FUNCTIONS double3 [get\_geometry\_rotational\_velocity](structIRockyGeometryTriangle.xhtml#a67d418dcadcd12fa9314ec4891bae8e0) () const ROCKY\_FUNCTIONS double3 [get\_geometry\_rotation\_center](structIRockyGeometryTriangle.xhtml#ad41c1ad766c0a34a978c5c59add829e7) () const ROCKY\_FUNCTIONS double [get\_temperature](structIRockyGeometryTriangle.xhtml#a4ad4b4c3dbdb033213b9f68d4c497f68) () const ROCKY\_FUNCTIONS void [set\_temperature](structIRockyGeometryTriangle.xhtml#a4286e7ea37b1863c8ea48d2fcd729b9c) (double value) ROCKY\_FUNCTIONS bool [is\_adiabatic](structIRockyGeometryTriangle.xhtml#acf3dd4c6616b36509791e2896595d16e) () const ROCKY\_FUNCTIONS double [get\_thermal\_conductivity](structIRockyGeometryTriangle.xhtml#a6288e5b20aa8375b184529d1760d9a93) () const ROCKY\_FUNCTIONS void [set\_thermal\_conductivity](structIRockyGeometryTriangle.xhtml#ab93ed9aba28273a9a329a212457b0158) (double value) ROCKY\_FUNCTIONS double [get\_poisson\_ratio](structIRockyGeometryTriangle.xhtml#a362d59bc94cc55f1cb37d6fe00764a4b) () const ROCKY\_FUNCTIONS void [set\_poisson\_ratio](structIRockyGeometryTriangle.xhtml#add105a1fd3ed0e38ad85c93d09ee4a27) (double value) ROCKY\_FUNCTIONS [IRockyTriangleScalars](structIRockyTriangleScalars.xhtml) [get\_scalars](structIRockyGeometryTriangle.xhtml#a525086257224ba19ec3bbfec2522bdba) () <a id="details" name="details"></a>## Detailed Description

`<a class="el" href="structIRockyGeometryTriangle.xhtml">IRockyGeometryTriangle</a>` is an interface for the internal geometry triangle object in Rocky. A geometry triangle is a code representation of an individual triangle making up a geometry. `<a class="el" href="structIRockyGeometryTriangle.xhtml">IRockyGeometryTriangle</a>` is intended for use in all the operations performed during the time iterative process, involving geometry triangles. It has access methods to some geometric properties, as well as *triangle scalars*, which are special variables that store values per triangle that are preserved between time iterations. Values of *triangle scalars* can be displayed in a 3D window as any other built-in geometry triangle property in Rocky. All property and variable values made available through `<a class="el" href="structIRockyGeometryTriangle.xhtml">IRockyGeometryTriangle</a>` are dimensionless.

Attention`<a class="el" href="structIRockyGeometryTriangle.xhtml">IRockyGeometryTriangle</a>` replaces `IRockyBoundaryTriangle` in Rocky v4.5 or newer. 

## Member Function Documentation

<a id="a87f5f5f9d279e717777feb3a934bac82" name="a87f5f5f9d279e717777feb3a934bac82"></a>## [◆ ](#a87f5f5f9d279e717777feb3a934bac82)get\_area()

 ROCKY\_FUNCTIONS double IRockyGeometryTriangle::get\_area  ( )  const

ReturnsThe unsigned area of the geometry triangle. 



<a id="a51271bd50959a8f2a353ac6673ee7fd7" name="a51271bd50959a8f2a353ac6673ee7fd7"></a>## [◆ ](#a51271bd50959a8f2a353ac6673ee7fd7)get\_centroid()

 ROCKY\_FUNCTIONS double3 IRockyGeometryTriangle::get\_centroid  ( )  const

ReturnsThe centroid point of the geometry triangle in Cartesian coordinates. 



<a id="a8498939de6ea592bbfff2a4ec075f6ee" name="a8498939de6ea592bbfff2a4ec075f6ee"></a>## [◆ ](#a8498939de6ea592bbfff2a4ec075f6ee)get\_geometry\_index()

 ROCKY\_FUNCTIONS int IRockyGeometryTriangle::get\_geometry\_index  ( )  const

ReturnsThe index that uniquely identifies the geometry to which the geometry triangle belongs. 



<a id="ad41c1ad766c0a34a978c5c59add829e7" name="ad41c1ad766c0a34a978c5c59add829e7"></a>## [◆ ](#ad41c1ad766c0a34a978c5c59add829e7)get\_geometry\_rotation\_center()

 ROCKY\_FUNCTIONS double3 IRockyGeometryTriangle::get\_geometry\_rotation\_center  ( )  const

ReturnsThe Cartesian coordinates of the rotation center of the motion frame attached to the geometry to which the triangle belongs. 



<a id="a67d418dcadcd12fa9314ec4891bae8e0" name="a67d418dcadcd12fa9314ec4891bae8e0"></a>## [◆ ](#a67d418dcadcd12fa9314ec4891bae8e0)get\_geometry\_rotational\_velocity()

 ROCKY\_FUNCTIONS double3 IRockyGeometryTriangle::get\_geometry\_rotational\_velocity  ( )  const

ReturnsThe rotational velocity vector of the geometry to which the triangle belongs, expressed in Cartesian coordinates. 



<a id="ad93dcca6decba182b3cc02e95bd09c38" name="ad93dcca6decba182b3cc02e95bd09c38"></a>## [◆ ](#ad93dcca6decba182b3cc02e95bd09c38)get\_material()

 ROCKY\_FUNCTIONS [IRockyMaterial](structIRockyMaterial.xhtml) IRockyGeometryTriangle::get\_material  ( )  const

ReturnsAn `<a class="el" href="structIRockyMaterial.xhtml">IRockyMaterial</a>` object that gives access to the values of physical properties associated to the material from which the geometry triangle is made. 



<a id="a9bcc3c8846e93fd1e9876ba328e6a09d" name="a9bcc3c8846e93fd1e9876ba328e6a09d"></a>## [◆ ](#a9bcc3c8846e93fd1e9876ba328e6a09d)get\_material\_index()

 ROCKY\_FUNCTIONS int IRockyGeometryTriangle::get\_material\_index  ( )  const

ReturnsThe material index that uniquely identifies the material associated to the geometry triangle. 



<a id="a3dffe992b4dc3278be110fd792142b80" name="a3dffe992b4dc3278be110fd792142b80"></a>## [◆ ](#a3dffe992b4dc3278be110fd792142b80)get\_normal\_unit\_vector()

 ROCKY\_FUNCTIONS double3 IRockyGeometryTriangle::get\_normal\_unit\_vector  ( )  const

ReturnsA unit vector in the normal direction to the geometry triangle, in Cartesian coordinates. The orientation of this vector is arbitrary, since collision with particles can potentially happen on either side of the geometry triangle. 



<a id="a362d59bc94cc55f1cb37d6fe00764a4b" name="a362d59bc94cc55f1cb37d6fe00764a4b"></a>## [◆ ](#a362d59bc94cc55f1cb37d6fe00764a4b)get\_poisson\_ratio()

 ROCKY\_FUNCTIONS double IRockyGeometryTriangle::get\_poisson\_ratio  ( )  const

ReturnsThe triangle's Poisson's ratio. If this property was defined as variable for triangles in the module's specification file, this method will return the value set specifically for the geometry triangle. Otherwise, the returned value will be the one specified for the triangle's material in the Rocky UI. 



<a id="a525086257224ba19ec3bbfec2522bdba" name="a525086257224ba19ec3bbfec2522bdba"></a>## [◆ ](#a525086257224ba19ec3bbfec2522bdba)get\_scalars()

 ROCKY\_FUNCTIONS [IRockyTriangleScalars](structIRockyTriangleScalars.xhtml) IRockyGeometryTriangle::get\_scalars  ( ) 

ReturnsA `<a class="el" href="structIRockyTriangleScalars.xhtml">IRockyTriangleScalars</a>` object that gives access to all triangle scalars variables defined in the project. 



<a id="a4ad4b4c3dbdb033213b9f68d4c497f68" name="a4ad4b4c3dbdb033213b9f68d4c497f68"></a>## [◆ ](#a4ad4b4c3dbdb033213b9f68d4c497f68)get\_temperature()

 ROCKY\_FUNCTIONS double IRockyGeometryTriangle::get\_temperature  ( )  const

ReturnsThe temperature associated to the triangle. If that temperature was defined as a variable property in the module's specification file, each triangle in a geometry may have a different temperature value, set by a module using the `<a class="el" href="structIRockyGeometryTriangle.xhtml#a4286e7ea37b1863c8ea48d2fcd729b9c">IRockyGeometryTriangle::set_temperature</a>` method. Otherwise, this method will return the temperature value specified in the UI for the geometry to which the geometry triangle belongs. 



<a id="a6288e5b20aa8375b184529d1760d9a93" name="a6288e5b20aa8375b184529d1760d9a93"></a>## [◆ ](#a6288e5b20aa8375b184529d1760d9a93)get\_thermal\_conductivity()

 ROCKY\_FUNCTIONS double IRockyGeometryTriangle::get\_thermal\_conductivity  ( )  const

ReturnsThe triangle's thermal conductivity. If this property was defined as variable for triangles in the module's specification file, this method will return the value set specifically for the geometry triangle. Otherwise, the returned value will be the one specified for the triangle's material in the Rocky UI. 



<a id="a704cfc661bc09630a2d7345d7ea53309" name="a704cfc661bc09630a2d7345d7ea53309"></a>## [◆ ](#a704cfc661bc09630a2d7345d7ea53309)get\_translational\_velocity()

 ROCKY\_FUNCTIONS double3 IRockyGeometryTriangle::get\_translational\_velocity  ( double  *current\_time*)  const

Parameters current\_timeThe current value of the simulation time.ReturnsThe instantaneous triangle's translational velocity vector, expressed in Cartesian coordinates. 



<a id="acf3dd4c6616b36509791e2896595d16e" name="acf3dd4c6616b36509791e2896595d16e"></a>## [◆ ](#acf3dd4c6616b36509791e2896595d16e)is\_adiabatic()

 ROCKY\_FUNCTIONS bool IRockyGeometryTriangle::is\_adiabatic  ( )  const

ReturnsTrue if the geometry to which the boundary triangle belongs is adiabatic (i.e. it is not enabled to exchange heat with particles). 



<a id="add105a1fd3ed0e38ad85c93d09ee4a27" name="add105a1fd3ed0e38ad85c93d09ee4a27"></a>## [◆ ](#add105a1fd3ed0e38ad85c93d09ee4a27)set\_poisson\_ratio()

 ROCKY\_FUNCTIONS void IRockyGeometryTriangle::set\_poisson\_ratio  ( double  *value*) 

This method sets the triangle's Poisson's ratio, if this propertywas defined as variable in the module's specification file. If this method is used otherwise, a segmentation fault will occur.Parameters valueThe Poisson's ratio to be set. 



<a id="a4286e7ea37b1863c8ea48d2fcd729b9c" name="a4286e7ea37b1863c8ea48d2fcd729b9c"></a>## [◆ ](#a4286e7ea37b1863c8ea48d2fcd729b9c)set\_temperature()

 ROCKY\_FUNCTIONS void IRockyGeometryTriangle::set\_temperature  ( double  *value*) 

This method can be used only if the temperature was defined as a variable propertyfor geometry triangles in the module's specification file. A segmentation fault will occur if this method is used otherwise. The temperature value specified with this method will be used by Rocky when solving the thermal balance equations for the particles in contact with the geometry triangle.Parameters valueThe temperature value to be assigned to the geometry triangle. 



<a id="ab93ed9aba28273a9a329a212457b0158" name="ab93ed9aba28273a9a329a212457b0158"></a>## [◆ ](#ab93ed9aba28273a9a329a212457b0158)set\_thermal\_conductivity()

 ROCKY\_FUNCTIONS void IRockyGeometryTriangle::set\_thermal\_conductivity  ( double  *value*) 

This method sets the triangle's thermal conductivity, if this propertywas defined as variable in the module's specification file. If this method is used otherwise, a segmentation fault will occur.Parameters valueThe thermal conductivity to be set.