    

 ## On this page

  

 

 # Scene Class Reference

 Last update: 16.07.2025 

A class for 3D visualization of a structure Additionally, it can display palettes and text annotations as well as rich text labels. Internally, a representation in terms of triangles only is used. Qt separation: This class contains no functionality relying on Qt classes. All methods using Qt classes are virtual and have no implementation, calling DYNARDO\_LOG\_WARN instead. Their implementation is done in SceneQt, part of the sos\_qt\_extensions module. Class [Scene](class_scene.xhtml "A class for 3D visualization of a structure Additionally, it can display palettes and text annotation...") is NO QObject, but SceneQt is. Instances of [Scene](class_scene.xhtml "A class for 3D visualization of a structure Additionally, it can display palettes and text annotation...") or SceneQt are created with application\_makeScene(), implemented in the sos\_qt\_extensions or sos\_noqt\_extensions module respectively. [More...](class_scene.xhtml#details)

## <a name="pub-types"></a>Public Types

<a id="a4c474d2ab45fc796266bff9ba22d8323"></a>enum **contourType** { **noContourPlot** = 0, **lineContourPlot**, **surfaceContourPlot**, **singleSurfaceContourPlot** } ## <a name="pub-methods"></a>Public Member Functions

 [addVal2String](class_scene.xhtml#a0c458cbcacccfd574f0c16bf306390fc) (float value, string the\_string) adds a value pair to the container storing information on mapping discrete number values into strings [More...](#a0c458cbcacccfd574f0c16bf306390fc)  
 <a id="a22aa99b9fa77bbba1697b4d8e56feb17"></a> [clearVal2String](class_scene.xhtml#a22aa99b9fa77bbba1697b4d8e56feb17) () clears the container storing information on mapping discrete number values into strings   
 <a id="ab7a0db005a63454245516cc1bab98d98"></a>unsigned char \* **getContourColors** () <a id="aecaf29127f497864d3cdea3f82dd265b"></a>char \* **getContourNormals** () <a id="ac011a3ca4491573e77c601dfffa50e62"></a>short \* **getContourVertices** () <a id="a4b2761818729165f8534f1c03e701b8a"></a>bool [getDrawToFile](class_scene.xhtml#a4b2761818729165f8534f1c03e701b8a) () get info if drawing to file   
 <a id="ad01ff5ed5303bfdfc3f893c0bd743cbf"></a>bool **getHiliteReferenceSet** () <a id="adfeb154fec37a514081a1001b9e54410"></a>int **getNumContours** () <a id="a02f49ababafef22d1443a058be08d60d"></a>int **getNumOutlines** () <a id="a6b2014ba4302052bb6304daedd888419"></a>virtual int **getNumSelectedVertices** () <a id="aaf6dd208a4635a2635dbce09a2d4b585"></a>int **getNumSlices** () <a id="a56327f39388aeeaa829b0ffce68feda3"></a>int **getNumTriangles** () <a id="a669068651be5ffb3e9a6a88aad8352c3"></a>short \* **getOutlineVertices** () <a id="a93663a88ad977ec4a59b397251464e94"></a>int [getScaleDeco](class_scene.xhtml#a93663a88ad977ec4a59b397251464e94) () get scale factor for deco elements   
 <a id="a59abc97a118d7e2154650fe6530e80d5"></a>virtual unsigned char \* **getSelectedColors** () <a id="a7e10241056920e5078877e96362a0809"></a>virtual char \* **getSelectedNormals** () <a id="a6c9bc7260535beb589356dc70795a25e"></a>short \* **getSelectedVertices** () <a id="a49bdb59d9685f3743b9ad520963dac8f"></a>unsigned char \* **getSliceColors** () <a id="aa108d718b3da8769e1658954148dad76"></a>char \* **getSliceNormals** () <a id="a4e76324f42015d9e85d9a26e5293c2d3"></a>short \* **getSliceVertices** () <a id="ad361e56c548792dc62db0b14f5190342"></a>unsigned char \* **getTriangleColors** () <a id="a5ea90ee20bf828c81b0639a10a393cde"></a>char \* **getTriangleNormals** () <a id="a100981d002d6cd43d36b943cdaa425b4"></a>short \* **getTriangleVertices** () <a id="aa6ad2d8ff2483839d4a5a6c24b52b970"></a>number **getVBO\_ID** (boost::uint32\_t i) <a id="a135c1f6b7262808f6656622559f3a395"></a>MatrixXhf **getZBuffer** () <a id="a588e63558c84812068b8cc8f1f9c954a"></a>bool **hasVBO** () <a id="a76ba769d6afb6a1ada0f0663afd082dc"></a> [setDrawToFile](class_scene.xhtml#a76ba769d6afb6a1ada0f0663afd082dc) (bool b) set info if drawing to file   
 <a id="ad6e22d0784ec8ed158b0a9914134db5f"></a> **setHiliteReferenceSet** (bool t) <a id="a9cdb03542df7b59c4c5ae61a6a5a28a9"></a> [setScaleDeco](class_scene.xhtml#a9cdb03542df7b59c4c5ae61a6a5a28a9) (int scale) set scale factor for deco elements   
 <a id="ae10301ca34867794475da15ab669cc2b"></a> **setZBuffer** (MatrixXhf buf) 

 [Scene](class_scene.xhtml#a44b8695185991dcda6a8d707f6342f70) (graphics::VerticesNormalsVisibility vnv, [Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b)) Constructor, requires the description of the structure in terms of a [VerticesNormalsVisibility](struct_vertices_normals_visibility.xhtml "Data containing information about the structure in simplified form. ") object. Initializes some defaults. [More...](#a44b8695185991dcda6a8d707f6342f70)  
 <a id="ade3be4eb3bd7ff334e43f050f359e4b7"></a> **setShading** (bool t) <a id="a852e5a281a49a0ae09cf6459f5be449a"></a>bool **getShading** () <a id="a2cee40244e85772d527d1cdfce18859f"></a> **SetTitle** (string title) <a id="a651d92a8c37690633d229e8385ab7d8f"></a>string **GetTitle** () <a id="aae554939d03428e1df57efc57ce1d3a3"></a>[dataobject\_types](group__data.xhtml#ga1bebf1e22deb3cd41d7d99ddcdb15379) **getDataType** () <a id="aac1ae503284deaac314d229ae5c69b4f"></a>[DataObjectKey](class_data_object_key.xhtml) **getDataIdent** () <a id="a409e05a5f45af16b718f74360a118941"></a>bool **hasData** () <a id="a29d5f953c715f16deea4b2b2950aedd9"></a>bool **hasNodeData** () virtual [databaseImage](class_scene.xhtml#aedfcd60db2f81881828ddf066c08f2a4) (std::vector&lt; char &gt; vec, int image\_resolution\_x, int image\_resolution\_y) Get the small mesh image to save with the database header, without Qt: returns empty image! [More...](#aedfcd60db2f81881828ddf066c08f2a4)  
 Control OpenGL

Methods controlling the OpenGL context



<a id="a19cf736ac5a3d9c598653deaf643a1ba"></a> [setUninitializedGL](class_scene.xhtml#a19cf736ac5a3d9c598653deaf643a1ba) () Tells the [Scene](class_scene.xhtml "A class for 3D visualization of a structure Additionally, it can display palettes and text annotation...") that its associated GL context needs to reload all Vertex Buffer Objects (VBOs)   
 <a id="aac2b0ed07003b99270a380cc50f29f60"></a>bool **initializedGL** () virtual [Prepare](class_scene.xhtml#a06d769b7b9a4271a48eb4774da7d82c8) () Clears all OpenGL Vertex Buffers first and re-initializes them afterwards. [More...](#a06d769b7b9a4271a48eb4774da7d82c8)  
 <a id="a2e8d27ff57c6aabb0b6ae631b54d12a9"></a>virtual **UnPrepare** () <a id="a7e95b25f0e01f8b7eaef2a15d2939e1d"></a> **SetMode** (graphics::renderMode mode) <a id="a9132074e6b817d8c90e6b14c298c7b42"></a>graphics::renderMode **GetMode** () RENDER

Methods controlling the rendering



<a id="a463529fc5f2589372708e416b315efe1"></a>float **getStructureAlpha** () <a id="a652c2a92b3b3d8100f782aa21409ae61"></a>float **getIsoSurfaceAlpha** () <a id="a5da521188e89896fe5393383f6977f45"></a> **setStructureAlpha** (float [a](group__tmath.xhtml#ga7e205066f67b9e3fd4c8cbd5859e8da3)) <a id="af7b41bc3076c8e3e464d5185e1e4902f"></a> **setIsoSurfaceAlpha** (float [a](group__tmath.xhtml#ga7e205066f67b9e3fd4c8cbd5859e8da3)) <a id="a5306f657c8705eb5afba78f6c316dbc0"></a> **setClipBorder** (float border) <a id="ab36b056f22bdb9f707d98be15a3559d6"></a>float **getClipBorder** () <a id="aee20126ab6036a17b91f83c1cb14ced6"></a> **setDrawOutline** (bool t) <a id="ad6b6193a67c57643726b5bb456763e0d"></a>bool **getDrawOutline** () <a id="aa760c21ad4548b6499c1ac07b865e6d4"></a> **setDrawSurfaces** (bool t) <a id="a5586383678e5d00e9aa8f285e25605f3"></a>bool **getDrawSurfaces** () <a id="ab0e9d6094e0d54be97136fd4ed36c375"></a> **setDrawWireframe** (bool t) <a id="af93a2efeb6a3ae8c7187af829c6240ed"></a>bool **getDrawWireframe** () <a id="a18c9a2068ad515009b03e44be5761512"></a>bool **getDrawEdges** () <a id="ad8b5f37ad3f6eaa46dd01df960260957"></a> **setShowInvisibleLabels** (bool t) <a id="a38e353c74ce24051bbeaa55ea407df26"></a>bool **getShowInvisibleLabels** () <a id="a7478525388f191dbde98ddcddbf36fa1"></a> **setNeedsUpdate** (bool t) <a id="ac1cae728d29d471fb9e38da761ef8b99"></a>bool **getNeedsUpdate** () <a id="ae7de6866c2cf7898475d12d3cea26e58"></a>virtual **RenderDeco** (number ww, number hh, QPainter m\_pt) <a id="a5f9335ca5e694dbd00c99fb6814da163"></a>virtual **RenderCoorAxes** (number ww, number hh, QPainter m\_pt)  [File](class_scene.xhtml#ac12402e165f10a89aee0167f6d392564) (string filename) Renders the scene into a QImage of current size. [More...](#ac12402e165f10a89aee0167f6d392564)  
 virtual [File](class_scene.xhtml#a5bd2e6ade908831beb8f828d9a5f2d4b) (string filename, int ww, int hh) Renders the contents of the scene to an image file of given size. [More...](#a5bd2e6ade908831beb8f828d9a5f2d4b)  
  [ActivateNodeValues](class_scene.xhtml#a7ae6619ae28358041ab7261d57377bcb) () Render the scene into a QPaintDevice. [More...](#a7ae6619ae28358041ab7261d57377bcb)  
 <a id="a1b6be1b89b5d6363b23a4a6cff310bd0"></a> **ActivateElementValues** ()  [AssignValues](class_scene.xhtml#ac30a5c478071bddc29e58719b422171e) ([AllRenderData](class_all_render_data.xhtml) p\_render\_data, [Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b), [SceneManager](class_scene_manager.xhtml) \*scene\_manager) defines data to be rendered [More...](#ac30a5c478071bddc29e58719b422171e)  
 virtual [SetValues](class_scene.xhtml#a19f2ead60d9392ab7ca45217412733e1) (Eigen::VectorXd inputs, [Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b), bool reset\_scene\_options, [SceneManager](class_scene_manager.xhtml) \*scene\_manager) Assign values to the vertices of the structure which are then used for coloring. [More...](#a19f2ead60d9392ab7ca45217412733e1)  
  [SetGeometricStabilization](class_scene.xhtml#a27c842466c304c3af705ef763e9d3227) (bool enable\_flag, [Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b), [SceneManager](class_scene_manager.xhtml) \*scene\_manager) enables/disables mesh smoothening for gemetric imperfections [More...](#a27c842466c304c3af705ef763e9d3227)  
  [SetGeometricScaling](class_scene.xhtml#a6b808aad5a0ae3633f3a8f7996fd54f4) (number scaling, [Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b), [SceneManager](class_scene_manager.xhtml) \*scene\_manager) defines the scaling factor for geometric variations [More...](#a6b808aad5a0ae3633f3a8f7996fd54f4)  
 <a id="a5faf4e8d764eeca136784351140025cd"></a> [recalculateAndApplyMorphedGeometry](class_scene.xhtml#a5faf4e8d764eeca136784351140025cd) ([Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b)) recalculates mesh morphing and applies result to triangle geometry and unconnected points.   
 <a id="ad2371590e3c2ff4f94f97f63d6e263d9"></a> [ClearMorphedCoordinates](class_scene.xhtml#ad2371590e3c2ff4f94f97f63d6e263d9) () deletes all containers with morphed geometry forcing the system to use unmorphed geometry   
 graphics::VertexValues [getValues](class_scene.xhtml#af2dd43e7fcc9b0712604a7c65b8346b4) () Returns a reference to the original scene data. [More...](#af2dd43e7fcc9b0712604a7c65b8346b4)  
 <a id="a46ea48f94b200ee97dcac0d006f07cbd"></a> **OriginalElementValues** () <a id="aa91519ee2577348afcfa5d9eb7a814c1"></a> **OriginalNodeValues** () <a id="a27b3a6ec5bcbe749801375a2b1db35e2"></a> [SetContourType](class_scene.xhtml#a27b3a6ec5bcbe749801375a2b1db35e2) (graphics::Scene::contourType contourType) Set the type of contour to be shown. Can be none, line or surface type.   
 graphics::Scene::contourType [GetContourType](class_scene.xhtml#a1d561084bb7c615c3373c4403a164046) () GetContourType. [More...](#a1d561084bb7c615c3373c4403a164046)  
 number [getContourSize](class_scene.xhtml#aad41fa1a2627ed00f1c0f139548772f8) () get numnber of contour levels [More...](#aad41fa1a2627ed00f1c0f139548772f8)  
 Eigen::VectorXf [getContours](class_scene.xhtml#aeac36bc4124c2674fcb3ecf2a783afab) () get contour levels [More...](#aeac36bc4124c2674fcb3ecf2a783afab)  
 <a id="a3d16fb79739a2d07661a478102f3aa44"></a> [SetContours](class_scene.xhtml#a3d16fb79739a2d07661a478102f3aa44) (number c) Set single contour level, keep current type.   
 <a id="ad62197df88c13e27549cb99635c33516"></a>virtual [SetContours](class_scene.xhtml#ad62197df88c13e27549cb99635c33516) (graphics::Scene::contourType ct) Set contour levels as defined in the current palette.   
 font

Substitute all white pixels from the margin with transparent ones

Parameters aQImage with white pixels near the margins Returnsa QImage   
 Methods controlling the font used in the scene to display text 

virtual [SetFont](class_scene.xhtml#addd456f71665ba4ffed7167e33b5e183) (string [font](class_scene.xhtml#a0c20b047e7c89c25e95ad212000a64d0), number fontsize) Sets the font for all text to be shown in the scene. [More...](#addd456f71665ba4ffed7167e33b5e183)  
 virtual [SetFont](class_scene.xhtml#ababbd02caffc98e21bdd737de704e921) (QFont [font](class_scene.xhtml#a0c20b047e7c89c25e95ad212000a64d0)) Sets the font for all text to be shown in the scene. [More...](#ababbd02caffc98e21bdd737de704e921)  
 virtual [font](class_scene.xhtml#a0c20b047e7c89c25e95ad212000a64d0) (QFont font) coloring

Methods controlling the coloring behaviour in the scene



 [SetBackground](class_scene.xhtml#a5b89a1b148f14e71c185082060849d35) (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha) Sets the first background color for the scene. [More...](#a5b89a1b148f14e71c185082060849d35)  
  [GetBackground](class_scene.xhtml#a3eb860f4f2e9a8c1964064ba259beb82) (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha) Gets the first background color for the scene. [More...](#a3eb860f4f2e9a8c1964064ba259beb82)  
  [SetBackground2](class_scene.xhtml#a903ffdb01a728c442b01876f25d6dfba) (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha) Sets the second background color for the scene. This defines a vertical color gradient together with the first background color. [More...](#a903ffdb01a728c442b01876f25d6dfba)  
  [GetBackground2](class_scene.xhtml#a4254e5b8f8d3af416333fe1f7ba7cd90) (unsigned char red, unsigned char green, unsigned char blue, unsigned char alpha) Gets the second background color for the scene. This defines a vertical color gradient together with the first background color. [More...](#a4254e5b8f8d3af416333fe1f7ba7cd90)  
 <a id="a1dd9ff673aab54e78217089fc1517078"></a> [RemoveBackgrounds](class_scene.xhtml#a1dd9ff673aab54e78217089fc1517078) () Clears all background coloring.   
 virtual bool [palettePercentageRange](class_scene.xhtml#aab2df1ee76ffef04e39be521fe300522) () virtual [setPaletteType](class_scene.xhtml#a45647fa73b7519f83aa151af826fdf77) (PaletteTypePtr [palette](class_scene.xhtml#a181f4d63c649e319f7f6ac56a905554e)) Assign a color/value palette to the scene. Only one palette can be assigned. [More...](#a45647fa73b7519f83aa151af826fdf77)  
 virtual [setPalettePosition](class_scene.xhtml#aff517029b952bf157f2bf8bcc11a107e) (graphics::Position pos) Sets the position for the current palette. [More...](#aff517029b952bf157f2bf8bcc11a107e)  
 <a id="a118f5a9866367b8685c74b480f76b87c"></a>virtual **setPaletteProperties** (PaletteSceneProperties prop) virtual [setPalettePercentageRange](class_scene.xhtml#a64acf2cdfcf625cf407b9081f0410ce1) (bool percentage\_range=true) Sets a relative, percentage palette range. [More...](#a64acf2cdfcf625cf407b9081f0410ce1)  
 <a id="a8a2632c3ace59d8df8a771b526361e35"></a>virtual **setPaletteRange** (number xmin, number xmax) <a id="a8df63a3e9d777471160a69e8e84baa06"></a>virtual [removePalette](class_scene.xhtml#a8df63a3e9d777471160a69e8e84baa06) () remove palette   
 virtual [SetCoorAxesPosition](class_scene.xhtml#a22c9ec48ade46ce4b5ac8ae2faca0c74) (graphics::Position pos) Sets the position for the coordinate axes. [More...](#a22c9ec48ade46ce4b5ac8ae2faca0c74)  
 <a id="acf46406c17bdfd85b67f54769014ed68"></a>virtual graphics::Position **GetCoorAxesPosition** () virtual [palette](class_scene.xhtml#a181f4d63c649e319f7f6ac56a905554e) (Palette palette) Get current palette. [More...](#a181f4d63c649e319f7f6ac56a905554e)  
 <a id="affa4883622f174770b2586ac1b3e6a72"></a>virtual graphics::Position **GetPalettePosition** () 

virtual [SetCoorSystemPosition](class_scene.xhtml#aa14ba183af3e666e498c4e6c5fdbf3ae) (graphics::Position pos) Sets the position for the coordinate system. [More...](#aa14ba183af3e666e498c4e6c5fdbf3ae)  
 <a id="a4dd25a855f3ee48c8bf7de7072f2bde6"></a>virtual graphics::Position **GetCoorSystemPosition** () 

virtual [SetLegendPosition](class_scene.xhtml#ae359d9f8147e0cfb7eb7565d2506348b) (graphics::Position pos) Sets the position for the legend. [More...](#ae359d9f8147e0cfb7eb7565d2506348b)  
 <a id="a9b5f6e27ca5802651927951d6a28d2ab"></a>virtual graphics::Position **GetLegendPosition** () 

 [SetMarkPosition](class_scene.xhtml#a2336f6b9901c23c398f9a29a7d031f41) (graphics::Position pos) Sets the position for the watermark. [More...](#a2336f6b9901c23c398f9a29a7d031f41)  
 <a id="a99f4c7d61dfb278ada803ba4da617350"></a>graphics::Position **GetMarkPosition** () 

<a id="aaf4dfaefcc8bee887ae9b8018824c6d0"></a>virtual [SetRichLabel](class_scene.xhtml#aaf4dfaefcc8bee887ae9b8018824c6d0) (RichLabel richlabel) Assign a rich text label to the scene. Only one rich text label can be assigned.   
 virtual [GetRichLabel](class_scene.xhtml#af87422e6ef851dcb428af7948c77d7e2) (RichLabel richlabel) GetRichLabel. [More...](#af87422e6ef851dcb428af7948c77d7e2)  
 <a id="aee13914671bc3c32064ca985adddc623"></a>virtual **AddLabel** (float x, float y, float z, string text, bool alVis=false) <a id="a2b299565ee64354c82f4c01773ac8c35"></a>virtual **RemoveLabels** () ruler

Methods controlling the ruler



 [setRuler](class_scene.xhtml#a07454bde8fde4da8663bf1c11af4bfd2) (bool on) Sets visibility of ruler. [More...](#a07454bde8fde4da8663bf1c11af4bfd2)  
 bool [showRuler](class_scene.xhtml#ae103953ef85891c75590ac14875409b8) () VIEW

Methods controlling the scene view



 [setPerspective](class_scene.xhtml#a7aef90b83a24d2a1ea4d8729afc3cfc5) (bool persp)  [setCoordinateAxes](class_scene.xhtml#a7c0815264ec971f6464513386bdf6245) (bool persp)  [setCoordinateAxesLabels](class_scene.xhtml#ad0b92d97141bfb67678abdab74c2b71c) (string x, string y, string z) <a id="a41f1cdefdd5165beee995e366b508a7c"></a>bool **getPerspective** () bool [getCoordinateAxes](class_scene.xhtml#a5c2a32ef93b413945ed7fff804e1e76a) ()  [SetRotation](class_scene.xhtml#aa129dfdc61a2fe7267b6c25b32009871) (float angle, float x, float y, float z) Resetting all rotatation information to its origin setting the new definition afterwards. [More...](#aa129dfdc61a2fe7267b6c25b32009871)  
  [AddRotation](class_scene.xhtml#a3188f4e6122602d4fe6379b9fdf99dd5) (float angle) Adds the given angle to the actual rotation The rotation axis is determined by GetRotation. [More...](#a3188f4e6122602d4fe6379b9fdf99dd5)  
  [AddRotation](class_scene.xhtml#a3ad20e2855d48cab373d7f054207f8cb) (float angle, float x, float y, float z) Adds the given angle to the actual rotation. [More...](#a3ad20e2855d48cab373d7f054207f8cb)  
  [GetRotation](class_scene.xhtml#acf7d622731c0777294b1ed09e7a610b5) (float angle, float x, float y, float z) get current rotation expressed in angle/axis form [More...](#acf7d622731c0777294b1ed09e7a610b5)  
 <a id="a40123121aca4d237fde6675075a6314a"></a> **RemoveRotations** ()  [SetPan](class_scene.xhtml#ac7d59fffd8b830f1e34093328b47824c) (float x, float y) Set the current pan values in (pixel, coordinate system?) [More...](#ac7d59fffd8b830f1e34093328b47824c)  
 <a id="abd72fcc9bd1a9d2defcb9f8f08a2bb14"></a> [AddPan](class_scene.xhtml#abd72fcc9bd1a9d2defcb9f8f08a2bb14) (float x, float y) Moves the scene in x and y direction.   
  [GetPan](class_scene.xhtml#a67d1de4455103bb4997c22ba7a4c31eb) (float x, float y) get the current pan values [More...](#a67d1de4455103bb4997c22ba7a4c31eb)  
  [SetScale](class_scene.xhtml#a10665bbab8fb55ce789916651c2656f4) (float z) Sets current length scale and zoom factor accordingly. [More...](#a10665bbab8fb55ce789916651c2656f4)  
 <a id="a68b37648d648187291cb2eee2001a725"></a>float [GetScale](class_scene.xhtml#a68b37648d648187291cb2eee2001a725) () Gets current length scale and zoom factor accordingly, see [SetScale()](class_scene.xhtml#a10665bbab8fb55ce789916651c2656f4 "Sets current length scale and zoom factor accordingly. ")   
  [SetZoom](class_scene.xhtml#abc373e739b0f1a7a6e4ac8feff19f3c1) (float z) Sets current zoom factor. [More...](#abc373e739b0f1a7a6e4ac8feff19f3c1)  
 <a id="a2a8f15cdb6f9afa40bd41e056b18f288"></a> [AddZoom](class_scene.xhtml#a2a8f15cdb6f9afa40bd41e056b18f288) (float x) AddZoom.   
 float [GetZoom](class_scene.xhtml#a3254afc12d576278d55c2d3d28f78189) () get current zoom factor [More...](#a3254afc12d576278d55c2d3d28f78189)  
 <a id="a85b4703cde35c8301a2fa0ae6756817d"></a>float **getScale** () const <a id="a6277d778c4be02d094b9767f2dcb9e1a"></a>float **getRealScale** () const <a id="a73a961c5973fd81d74b8dea9eaa4dca7"></a> [Autoscale](class_scene.xhtml#a73a961c5973fd81d74b8dea9eaa4dca7) () Adjust scaling such that the entire structure is visible when be viewed from all angles.   
 <a id="a1a33a471ea882fd9d56114b5b1c694f1"></a> [Fit](class_scene.xhtml#a1a33a471ea882fd9d56114b5b1c694f1) () Adjust scaling such that the entire structure fills the viewport when viewed from current angle.   
 Eigen::Vector3f [mappedVector](class_scene.xhtml#aaa30a3648e39044563841842c7e204ae) (Eigen::Vector3f orig) Maps actual position vector into view space (-32767 - 32767) [More...](#aaa30a3648e39044563841842c7e204ae)  
 SLICING

Methods controlling the slice



<a id="acd1504f6a3c038cffa4b004b7f794227"></a> [initSlice](class_scene.xhtml#acd1504f6a3c038cffa4b004b7f794227) () Initializes a slicing plane in the half of the scene viewer widget in the viewing direction of the user Initializes a slicing plane in body coordinate system cutting through the half of the scene viewer widget. The normal vector is defined in the screen plane pointing in x-direction (from left to right) suppressing all body parts left to the slicing plane.   
  [SetSlice](class_scene.xhtml#acd45c2ddbf316f7650c7ff2817759d0c) (std::vector&lt; float &gt; pt, std::vector&lt; float &gt; dir) Defines a slicing plane in Hessian normal form in terms of a point and a direction vector. [More...](#acd45c2ddbf316f7650c7ff2817759d0c)  
  [SetSlice](class_scene.xhtml#a38dd17334b3049e6973e3c90f373f970) (float [a](group__tmath.xhtml#ga7e205066f67b9e3fd4c8cbd5859e8da3), float b, float c, float d) Defines a slicing plane in Hessian normal form by normalizing the paramters $a$, $b$, $c$, and $d$ given Only points with coordinates satisfying $ax+by+cz+d &gt; 0$ are shown, the rest is suppressed. [More...](#a38dd17334b3049e6973e3c90f373f970)  
 bool [isSliced](class_scene.xhtml#aaa9bdea86739707baeafce9b104ebad5) ()  [getSlice](class_scene.xhtml#a01f31efb33bd550d6e61d7698ecbefd5) (float [a](group__tmath.xhtml#ga7e205066f67b9e3fd4c8cbd5859e8da3), float b, float c, float d) Get current slicing plane in Hessian normal form given by the equation ![$\hat{n}x = -p$](/sites/default/files/migrate-content/optislang_3d_postprocessing_script_api_2024_r2_sp02_1/form_2.png). [More...](#a01f31efb33bd550d6e61d7698ecbefd5)  
  [removeSlice](class_scene.xhtml#a05abf562d065b7fd4657ade1385c8bca) () <a id="afc6aea2f4993b0c88332fb86628a25ae"></a>virtual **currentMatrix** (QMatrix4x4 mat) <a id="a0dbdd22cdfb5ef078f7d8660a9a5d2be"></a>virtual **projectPoint** (number x, number y, number z, number u, numberv, number w, QMatrix4x4 mat) <a id="ac1fa8134f54d8328ae648f6413dff419"></a>Eigen::Quaternionf **rotQuaternion** () const SELECTION

Methods controlling the selection



virtual int [select](class_scene.xhtml#a287f51df5268007e4828159bcff3079c) ([Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b), [Element](class_element.xhtml) \*element, number value, bool showLabel) Tests if the given element is in FEM set and if so marks it with value given as selected. [More...](#a287f51df5268007e4828159bcff3079c)  
 virtual int [select](class_scene.xhtml#a5798cbc7576fa42d09c369280a82c571) ([Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b), Point \*node, number value, bool isPoint, bool showLabel) Tests if the given node is in an active FEM set and if so marks it with value given as selected. [More...](#a5798cbc7576fa42d09c369280a82c571)  
 virtual [selectEntitiesInRect](class_scene.xhtml#a2c62fd0ee90f6a105651e10e8948c539) ([Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b), QRect rect, bool keep\_selection, number max\_selectable, bool showLabel) Calls the select method for all visible mapped vertices/nodes and triangles/elements in a selection rectangle on the screen The called select method ensures that only items within an active FEM set will be selectable. See select for further information. [More...](#a2c62fd0ee90f6a105651e10e8948c539)  
 <a id="a36515a6829bc53e9ecde031ee8b541e2"></a>virtual [markVerticesAsSelected](class_scene.xhtml#a36515a6829bc53e9ecde031ee8b541e2) () Marks all vertices of the scene belonging to selected points as selected (used for visualization only)   
 <a id="a3603df3ad7f023009963aa4da35d4d07"></a>virtual [markTrianglesAsSelected](class_scene.xhtml#a3603df3ad7f023009963aa4da35d4d07) () Marks all triangles of the scene belonging to selected elements as selected (used for visualization only)   
 virtual bool [isSelected](class_scene.xhtml#ab4562daf9688f00502b7de9b2ae3d9b0) ([Element](class_element.xhtml) \*element) isSelected [More...](#ab4562daf9688f00502b7de9b2ae3d9b0)  
 <a id="a83e3f8c78ffaccf19202959faf583b07"></a>virtual number **getNumSelectedTriangles** () virtual bool [isSelected](class_scene.xhtml#ab3bdf9b1987b1fb7cab665ce1c9d086a) (Point \*node) isSelected [More...](#ab3bdf9b1987b1fb7cab665ce1c9d086a)  
 <a id="a4a4f0c3d3fde7277dfb093f42d345286"></a>virtual number **getNumSelectedVertices** () <a id="aca131179fa2863e4ef450a8af8128de6"></a>virtual [clearSelection](class_scene.xhtml#aca131179fa2863e4ef450a8af8128de6) () Resets all selection markers. Resets all selection markers including: Vertices, Triangles, Nodes, Elements, Labels. Does not perform an automatic redraw.   
 virtual [Matrix](class_matrix.xhtml) [getSelectedElementIndices](class_scene.xhtml#a4a6db54dad5010ed5efc232966141ec5) ([Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b)) virtual [Matrix](class_matrix.xhtml) [getSelectedNodeIndices](class_scene.xhtml#ae604ebacbf443a780c7f3b08011c57ad) ([Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b)) virtual [printSelectionInfo](class_scene.xhtml#af4f042c5b46694ad58ac461ff82d8f30) ([Structure](class_structure.xhtml) [database](group__data.xhtml#gaebcac3a2836ec9fdf2e47bd812994b6b)) prints some limited information on the current selection [More...](#af4f042c5b46694ad58ac461ff82d8f30)  
 <a id="acd5054f148dedb37797199c08f46f3c8"></a>virtual [selectNodesFromVertices](class_scene.xhtml#acd5054f148dedb37797199c08f46f3c8) () Runs through all selected vertices and selects their node counterparts as well.   
 virtual float [getNodeDistance](class_scene.xhtml#a089be830d387c1aa3930bd8b00a5bbbe) (MatrixXhf coor, QRect rect, bool surfaceOnly, QMatrix4x4 mat) Returns the distance between the mapped nodal coordinates and the midpoint of the selection rectangle given. Maps the nodal coordinates given to window coordinates and returns the distance between this point and the midpoint of the window selection rectangle given. [More...](#a089be830d387c1aa3930bd8b00a5bbbe)  
 virtual float [getNodeDistance](class_scene.xhtml#a0c2b6fa2fcf5d4c04a16bea9324bee98) (Point \*node, QRect rect, bool surfaceOnly, QMatrix4x4 mat) Returns the distance between the mapped nodal coordinates and the midpoint of the selection rectangle given. Maps the nodal coordinates given to window coordinates and returns the distance between this point and the midpoint of the window selection rectangle given. [More...](#a0c2b6fa2fcf5d4c04a16bea9324bee98)  
 virtual float [getElementDistance](class_scene.xhtml#a48b4d34cfd3c3176c6ebbc0f2dc4e2c3) ([Element](class_element.xhtml) \*element, QRect rect, QMatrix4x4 mat) Returns the distance between the mapped mean value of the elements nodal coordinates and the midpoint of the selection rectangle given Maps the mean value of the elements nodal coordinates components given to window coordinates and returns the distance between this point and the midpoint of the window selection rectangle given. [More...](#a48b4d34cfd3c3176c6ebbc0f2dc4e2c3)  
 <a id="abd61a4289ca5f64efe0624cbbf6c0b84"></a>virtual **printSelectedNodes** () <a id="aa67c0fa02b255224bdaaaf9bef628274"></a>virtual **printSelectedElements** () <a id="ad32d6c900eb671165a88735cba9e3652"></a>graphics::VerticesNormalsVisibility **getvnv** () ## <a name="member-group"></a>Miscellaneous

<a id="ac12d16e763ecf92d27276b9790568dcb"></a>MatrixXhf [m\_current\_scene\_tet\_coordinates](class_scene.xhtml#ac12d16e763ecf92d27276b9790568dcb) Currently used coordinates for the tet vertices. Is empty if the undeformed coordinates are used.   
 <a id="a57944d6e68fa650994e96d8a926a2943"></a>bool [m\_have\_current\_coordinates](class_scene.xhtml#a57944d6e68fa650994e96d8a926a2943) Do we have changed coordinates?   
 <a id="a9e44c68b6c09ba0ba8dded2e71fa86cb"></a>MatrixXhf [m\_current\_scene\_coordinates](class_scene.xhtml#a9e44c68b6c09ba0ba8dded2e71fa86cb) Currently used coordinates for the vertices. Is empty, if the undeformed coordinates are used.   
 <a id="a54e9c71fb5aba9c14aff6f23cc191231"></a>MatrixXhf [m\_current\_unconnected\_point\_coordinates](class_scene.xhtml#a54e9c71fb5aba9c14aff6f23cc191231) Currently used coordinates for the vertices. Is empty, if the undeformed coordinates are used.   
 <a id="aebda26bb5fbe2afd6d73f6806347c837"></a>MatrixXhf [m\_current\_scene\_normals](class_scene.xhtml#aebda26bb5fbe2afd6d73f6806347c837) Currently used normals for the vertices. Is empty if the undeformed coordinates are used.   
 <a id="a8192e2ef00396b79b33f94b20cb912b9"></a>MatrixXhf [m\_current\_scene\_outline\_coordinates](class_scene.xhtml#a8192e2ef00396b79b33f94b20cb912b9) Currently used coordinates for the outline vertices. Is empty if the undeformed coordinates are used.   
 MatrixXhf [currentTetCoordinates](class_scene.xhtml#a4f7cd78b0ef0471105b44151e6e0868f) () const bool [haveCurrentCoordinates](class_scene.xhtml#a7719777eeb3c9b36b8df97eb00975286) () MatrixXhf [currentCoordinates](class_scene.xhtml#a187466469cfb07571f9f494a236d8466) () const <a id="a743a4d711e53b93bbb253a9229a3c101"></a>MatrixXhf [getCurrentUnconnectedPointCoordinates](class_scene.xhtml#a743a4d711e53b93bbb253a9229a3c101) () returns either the raw unconnected point coordinates or the (hacked) morphed point coordinates if mesh morphing was enabled   
  [SetUnconnectedPointCoordinates](class_scene.xhtml#a7b325a6f280742d3b06a20196c57f01e) ([Matrix](class_matrix.xhtml) coor) Sets morphed coordinates of unconnected points. [More...](#a7b325a6f280742d3b06a20196c57f01e)  
 <a id="a15961a85b2b62c89830eb160d7948a64"></a>MatrixXhf [getRawUnconnectedPointCoordinates](class_scene.xhtml#a15961a85b2b62c89830eb160d7948a64) () returns the coordinates of all points without modification   
 <a id="aef4c92104420ac579c07946e7bcf7564"></a>float [getRawModelScaleWithoutTheStrangeTransformations](class_scene.xhtml#aef4c92104420ac579c07946e7bcf7564) () returns the value that is probably the model space scale   
 MatrixXhf [currentNormals](class_scene.xhtml#a324de892023edd0712d2c2d5d9a9645d) () const MatrixXhf [currentOutlineCoordinates](class_scene.xhtml#a48d519bbc7d9edcff9ad8e3a16098fab) () const Eigen::MatrixXf [getSphereVertices](class_scene.xhtml#acff3ea4a0700643aedfe199133e81084) () get vertices of a unit sphere [More...](#acff3ea4a0700643aedfe199133e81084)  
  [setPointSize](class_scene.xhtml#a6724f50b4207f54aefbc744ef88ec0fd) (float size) set the size of points relative to model size [More...](#a6724f50b4207f54aefbc744ef88ec0fd)  
 float [getPointSize](class_scene.xhtml#a43770b9c600b78afa660ac9d40c723cb) () set the size of points relative to model size [More...](#a43770b9c600b78afa660ac9d40c723cb)  
 Eigen::MatrixXf [getSphereNormals](class_scene.xhtml#a1ee56e4b222eb79feb5fc73ce1528d10) () get normals of a unit sphere [More...](#a1ee56e4b222eb79feb5fc73ce1528d10)  
 number [getNumPoints](class_scene.xhtml#ac0b580012767de6b9cee6550fa1f1913) () get the number points [More...](#ac0b580012767de6b9cee6550fa1f1913)  
 VectorXuc [getPointColors](class_scene.xhtml#a00fe2a48f2c8a282aada8a4c00914f45) () get the colors of all points [More...](#a00fe2a48f2c8a282aada8a4c00914f45)  
 <a id="a7f2f412f1b1b00f95a58f28b6d231526"></a>virtual [PrepareVBOSelected](class_scene.xhtml#a7f2f412f1b1b00f95a58f28b6d231526) () prepare vertices/normals for selected entities   
 <a id="ab2719053695b348b09a0587debc6e4b4"></a> [getModelCenter](class_scene.xhtml#ab2719053695b348b09a0587debc6e4b4) (float x, float y, float z) writes the center coordinates to input coordinates x,y and z   
 MatrixXhf [getVisibleTetCoordinates](class_scene.xhtml#ae3807ab35d2750410be14663334ef944) () get the coordinates of all visible tet vertices [More...](#ae3807ab35d2750410be14663334ef944)  
 MatrixXhf [getVisibleCoordinates](class_scene.xhtml#a6a94ab4fe712f7c09489246cd5d476de) () get the coordinates of all visible vertices [More...](#a6a94ab4fe712f7c09489246cd5d476de)  
 virtual bool [isVertexSelected](class_scene.xhtml#a88a7807fd65fd5bf216310aaf1c74c10) (int i) determine if a given vertex is currently selected [More...](#a88a7807fd65fd5bf216310aaf1c74c10)  
 <a id="a611fb42d6a8703d5e701b794db9d1848"></a>virtual [ImageMargins](class_scene.xhtml#a611fb42d6a8703d5e701b794db9d1848) (int leftm, int rightm, int topm, int bottomm) get margins of structure rendering for current settings using image   
  [exportTNG](class_scene.xhtml#a8dbe08127b637b3781091ce9adb23f36) (string file) export to [Matrix](class_matrix.xhtml "Standard matrix class. ") for use in slangTNG [More...](#a8dbe08127b637b3781091ce9adb23f36)  
  [exportIsosurface\_STL](class_scene.xhtml#ac73ebf9c7288c54301a0e6e1347cf641) (string file, bool replace\_files=false) exports the curent isosurface to STL file [More...](#ac73ebf9c7288c54301a0e6e1347cf641)  
 virtual [importTNG](class_scene.xhtml#a15f408f0a7dce9bd2acd6936325aca48) (string file) import from [Matrix](class_matrix.xhtml "Standard matrix class. ") as used in slangTNG [More...](#a15f408f0a7dce9bd2acd6936325aca48)  
 number [getMinValue](class_scene.xhtml#aa0675ad75eaeb98f423bf9acb486d912) () Returns the the minimum data value of m\_val\_\[node,element\].dataobject\_value. [More...](#aa0675ad75eaeb98f423bf9acb486d912)  
 number [getMaxValue](class_scene.xhtml#af08e7d34c0d2c3885b2fd1279302adfe) () Returns the the maximum data value of m\_val\_\[node,element\].dataobject\_value. [More...](#af08e7d34c0d2c3885b2fd1279302adfe)  
  [SetTetCoordinates](class_scene.xhtml#ada72656221408e3a4e178f7d2be87d03) ([Matrix](class_matrix.xhtml) coor) Sets all coordinates of tet vertices. [More...](#ada72656221408e3a4e178f7d2be87d03)  
  [SetCoordinates](class_scene.xhtml#a1b1f381d1e2ebb2299830502c5744a5f) ([Matrix](class_matrix.xhtml) coor) Sets all coordinates of vertices. [More...](#a1b1f381d1e2ebb2299830502c5744a5f)  
 <a id="a544f8832a1a54cd179d61444be0c9273"></a> [ComputeCurrentNormals](class_scene.xhtml#a544f8832a1a54cd179d61444be0c9273) () Compute the normals for the current visible vertex coordinates.   
 <a id="ad3554580ac57bae2fbad94162e999d38"></a> [ComputeCurrentOutlines](class_scene.xhtml#ad3554580ac57bae2fbad94162e999d38) () Compute the values for the current visible outline coordinates.   
 <a id="a69df9bda37ff69f6d979346178cc0a73"></a> **SetRange** (float xmin, float xmax, float ymin, float ymax, float zmin, float zmax) <a id="a549db152af52f31581cd7f068419dca4"></a> **GetSize** (int w, int h) <a id="a0875fff292d0ca4f436d7bed4a9a7fa7"></a>virtual **SetSize** (int w, int h) <a id="a6f7af4dba2de8ab52494d821a1b19361"></a> [setSceneScaleRelative](class_scene.xhtml#a6f7af4dba2de8ab52494d821a1b19361) (float x, float y, float z) set different scaling for all three axes   
 <a id="a420ca3ea70a24860d44711a6b817265c"></a> [getSceneScaleRelative](class_scene.xhtml#a420ca3ea70a24860d44711a6b817265c) (float x, float y, float z) get different scaling for all three axes   
 <a id="details" name="details"></a>## Detailed Description

A class for 3D visualization of a structure Additionally, it can display palettes and text annotations as well as rich text labels. Internally, a representation in terms of triangles only is used. Qt separation: This class contains no functionality relying on Qt classes. All methods using Qt classes are virtual and have no implementation, calling DYNARDO\_LOG\_WARN instead. Their implementation is done in SceneQt, part of the sos\_qt\_extensions module. Class [Scene](class_scene.xhtml "A class for 3D visualization of a structure Additionally, it can display palettes and text annotation...") is NO QObject, but SceneQt is. Instances of [Scene](class_scene.xhtml "A class for 3D visualization of a structure Additionally, it can display palettes and text annotation...") or SceneQt are created with application\_makeScene(), implemented in the sos\_qt\_extensions or sos\_noqt\_extensions module respectively.



## Constructor &amp; Destructor Documentation

<a id="a44b8695185991dcda6a8d707f6342f70"></a>## [◆ ](#a44b8695185991dcda6a8d707f6342f70)Scene()

 [Scene](class_scene.xhtml)  ( graphics::VerticesNormalsVisibility  *vnv*,    [Structure](class_structure.xhtml)  *database*   ) 

Constructor, requires the description of the structure in terms of a [VerticesNormalsVisibility](struct_vertices_normals_visibility.xhtml "Data containing information about the structure in simplified form. ") object. Initializes some defaults.

Parameters vnvThe description of the structure in terms of a [VerticesNormalsVisibility](struct_vertices_normals_visibility.xhtml "Data containing information about the structure in simplified form. ") object 



## Member Function Documentation

<a id="a7ae6619ae28358041ab7261d57377bcb"></a>## [◆ ](#a7ae6619ae28358041ab7261d57377bcb)ActivateNodeValues()

 ActivateNodeValues  ( ) 

Render the scene into a QPaintDevice.

Parameters deviceQPaintDevice used for rendering 



<a id="a3188f4e6122602d4fe6379b9fdf99dd5"></a>## [◆ ](#a3188f4e6122602d4fe6379b9fdf99dd5)AddRotation() \[1/2\]

 AddRotation  ( float  *angle*) 

Adds the given angle to the actual rotation The rotation axis is determined by GetRotation.

Parameters angleThe angle in grad to add 



<a id="a3ad20e2855d48cab373d7f054207f8cb"></a>## [◆ ](#a3ad20e2855d48cab373d7f054207f8cb)AddRotation() \[2/2\]

 AddRotation  ( float  *angle*,    float  *x*,    float  *y*,    float  *z*   ) 

Adds the given angle to the actual rotation.

Parameters xx-component of rotation axis yy-component of rotation axis zz-component of rotation axis 



<a id="a0c458cbcacccfd574f0c16bf306390fc"></a>## [◆ ](#a0c458cbcacccfd574f0c16bf306390fc)addVal2String()

 addVal2String  ( float  *value*,    string  *the\_string*   ) 

adds a value pair to the container storing information on mapping discrete number values into strings

Parameters valuethe number value to be translated the\_stringthe string to be shown in the label instead of the number value 



<a id="ac30a5c478071bddc29e58719b422171e"></a>## [◆ ](#ac30a5c478071bddc29e58719b422171e)AssignValues()

 AssignValues  ( [AllRenderData](class_all_render_data.xhtml)  *p\_render\_data*,    [Structure](class_structure.xhtml)  *database*,    [SceneManager](class_scene_manager.xhtml) \*  *scene\_manager*   ) 

defines data to be rendered

Parameters p\_render\_datathe render data databasethe database we refer to 



<a id="a187466469cfb07571f9f494a236d8466"></a>## [◆ ](#a187466469cfb07571f9f494a236d8466)currentCoordinates()

 MatrixXhf currentCoordinates  ( )  const

Returnsa const-reference to m\_current\_scene\_coordinates 



<a id="a324de892023edd0712d2c2d5d9a9645d"></a>## [◆ ](#a324de892023edd0712d2c2d5d9a9645d)currentNormals()

 MatrixXhf currentNormals  ( )  const

Returnsa const-reference to m\_current\_scene\_normals 



<a id="a48d519bbc7d9edcff9ad8e3a16098fab"></a>## [◆ ](#a48d519bbc7d9edcff9ad8e3a16098fab)currentOutlineCoordinates()

 MatrixXhf currentOutlineCoordinates  ( )  const

Returnsa const-reference to m\_current\_scene\_outline\_coordinates 



<a id="a4f7cd78b0ef0471105b44151e6e0868f"></a>## [◆ ](#a4f7cd78b0ef0471105b44151e6e0868f)currentTetCoordinates()

 MatrixXhf currentTetCoordinates  ( )  const

Returnsa const-reference to m\_current\_scene\_tet\_coordinates 



<a id="aedfcd60db2f81881828ddf066c08f2a4"></a>## [◆ ](#aedfcd60db2f81881828ddf066c08f2a4)databaseImage()

 virtual databaseImage  ( std::vector&lt; char &gt;  *vec*,    int  *image\_resolution\_x*,    int  *image\_resolution\_y*   )   virtual 

Get the small mesh image to save with the database header, without Qt: returns empty image!

Parameters vecbyte array, pass by reference, will be modified to contain the QImage in a QByteArray format. image\_resolution\_xresolution in pixel image\_resolution\_yresolution in pixel 



<a id="ac73ebf9c7288c54301a0e6e1347cf641"></a>## [◆ ](#ac73ebf9c7288c54301a0e6e1347cf641)exportIsosurface\_STL()

 exportIsosurface\_STL  ( string  *file*,    bool  *replace\_files* = `false`   ) 

exports the curent isosurface to STL file

Parameters filename of text file for export replace\_filesif true, then existing files will be replace, else an error occurs 



<a id="a8dbe08127b637b3781091ce9adb23f36"></a>## [◆ ](#a8dbe08127b637b3781091ce9adb23f36)exportTNG()

 exportTNG  ( string  *file*) 

export to [Matrix](class_matrix.xhtml "Standard matrix class. ") for use in slangTNG

Parameters filename of text file for export 



<a id="ac12402e165f10a89aee0167f6d392564"></a>## [◆ ](#ac12402e165f10a89aee0167f6d392564)File() \[1/2\]

 File  ( string  *filename*) 

Renders the scene into a QImage of current size.

Returnsa QImage Renders the scene into a QImage of given size Parameters widthThe width of the requested QImage heightThe height of the requested QImageReturnsa QImage Renders the finite element model of a scene into a QImage of given sizea QImage   
Renders the contents of the scene to an image file using current size of the scene Parameters filenamethe file name (including extension defining type of image) 



<a id="a5bd2e6ade908831beb8f828d9a5f2d4b"></a>## [◆ ](#a5bd2e6ade908831beb8f828d9a5f2d4b)File() \[2/2\]

 virtual File  ( string  *filename*,    int  *ww*,    int  *hh*   )   virtual 

Renders the contents of the scene to an image file of given size.

Parameters filenamethe file name (including extension defining type of image) wwidth of image hheight of image 



<a id="a0c20b047e7c89c25e95ad212000a64d0"></a>## [◆ ](#a0c20b047e7c89c25e95ad212000a64d0)font()

 virtual font  ( QFont  *font*)   virtual 

Returnsa reference to See alsom\_font 



<a id="a3eb860f4f2e9a8c1964064ba259beb82"></a>## [◆ ](#a3eb860f4f2e9a8c1964064ba259beb82)GetBackground()

 GetBackground  ( unsigned char  *red*,    unsigned char  *green*,    unsigned char  *blue*,    unsigned char  *alpha*   ) 

Gets the first background color for the scene.

Parameters redred color component (0 to 255) greengreen color component (0 to 255) blueblue color component (0 to 255) alphaalpha color component (0 to 255) 



<a id="a4254e5b8f8d3af416333fe1f7ba7cd90"></a>## [◆ ](#a4254e5b8f8d3af416333fe1f7ba7cd90)GetBackground2()

 GetBackground2  ( unsigned char  *red*,    unsigned char  *green*,    unsigned char  *blue*,    unsigned char  *alpha*   ) 

Gets the second background color for the scene. This defines a vertical color gradient together with the first background color.

Parameters redred color component (0 to 255) greengreen color component (0 to 255) blueblue color component (0 to 255) alphaalpha color component (0 to 255) 



<a id="aeac36bc4124c2674fcb3ecf2a783afab"></a>## [◆ ](#aeac36bc4124c2674fcb3ecf2a783afab)getContours()

 Eigen::VectorXf getContours  ( ) 

get contour levels

Returnscontour levels 



<a id="aad41fa1a2627ed00f1c0f139548772f8"></a>## [◆ ](#aad41fa1a2627ed00f1c0f139548772f8)getContourSize()

 number getContourSize  ( ) 

get numnber of contour levels

Returnsnumber of contour levels 



<a id="a1d561084bb7c615c3373c4403a164046"></a>## [◆ ](#a1d561084bb7c615c3373c4403a164046)GetContourType()

 graphics::Scene::contourType GetContourType  ( ) 

GetContourType.

Returnscontour type of scene 



<a id="a5c2a32ef93b413945ed7fff804e1e76a"></a>## [◆ ](#a5c2a32ef93b413945ed7fff804e1e76a)getCoordinateAxes()

 bool getCoordinateAxes  ( ) 

Returns the state of rendering coordinate axes

ReturnsTrue if drawing of axes is activated, false otherwise 



<a id="a48b4d34cfd3c3176c6ebbc0f2dc4e2c3"></a>## [◆ ](#a48b4d34cfd3c3176c6ebbc0f2dc4e2c3)getElementDistance()

 virtual float getElementDistance  ( [Element](class_element.xhtml) \*  *element*,    QRect  *rect*,    QMatrix4x4  *mat*   )   virtual 

Returns the distance between the mapped mean value of the elements nodal coordinates and the midpoint of the selection rectangle given Maps the mean value of the elements nodal coordinates components given to window coordinates and returns the distance between this point and the midpoint of the window selection rectangle given.

Parameters elementAn element of the displayed structure rectThe selection rectangle ReturnsThe distance between the mapped mean value of the elements nodal coordinates given and the midpoint of the selection rectangle given if the mapped point is inside or on the edge of the selection rectangle given. 1e33 otherwise. 



<a id="af08e7d34c0d2c3885b2fd1279302adfe"></a>## [◆ ](#af08e7d34c0d2c3885b2fd1279302adfe)getMaxValue()

 number getMaxValue  ( ) 

Returns the the maximum data value of m\_val\_\[node,element\].dataobject\_value.

ReturnsThe maximum data value of the total scene dataobject or 1 if m\_val\_\[node,element\].dataobect\_value is empty 



<a id="aa0675ad75eaeb98f423bf9acb486d912"></a>## [◆ ](#aa0675ad75eaeb98f423bf9acb486d912)getMinValue()

 number getMinValue  ( ) 

Returns the the minimum data value of m\_val\_\[node,element\].dataobject\_value.

ReturnsThe minimum data value of the total scene dataobject or 0 if m\_val\_\[node,element\].dataobect\_value is empty 



<a id="a089be830d387c1aa3930bd8b00a5bbbe"></a>## [◆ ](#a089be830d387c1aa3930bd8b00a5bbbe)getNodeDistance() \[1/2\]

 virtual float getNodeDistance  ( MatrixXhf  *coor*,    QRect  *rect*,    bool  *surfaceOnly*,    QMatrix4x4  *mat*   )   virtual 

Returns the distance between the mapped nodal coordinates and the midpoint of the selection rectangle given. Maps the nodal coordinates given to window coordinates and returns the distance between this point and the midpoint of the window selection rectangle given.

Parameters coorThe coordinates of a point of the displayed structure rectThe selection rectangle ReturnsThe distance between the mapped nodal coordinates and the midpoint of the rectangle given if the mapped point is inside or on the edge of the selection rectangle given. 1e33 otherwise. 



<a id="a0c2b6fa2fcf5d4c04a16bea9324bee98"></a>## [◆ ](#a0c2b6fa2fcf5d4c04a16bea9324bee98)getNodeDistance() \[2/2\]

 virtual float getNodeDistance  ( Point \*  *node*,    QRect  *rect*,    bool  *surfaceOnly*,    QMatrix4x4  *mat*   )   virtual 

Returns the distance between the mapped nodal coordinates and the midpoint of the selection rectangle given. Maps the nodal coordinates given to window coordinates and returns the distance between this point and the midpoint of the window selection rectangle given.

Parameters nodeA point of the displayed structure rectThe selection rectangle ReturnsThe distance between the mapped nodal coordinates and the midpoint of the rectangle given if the mapped point is inside or on the edge of the selection rectangle given. 1e33 otherwise. 



<a id="ac0b580012767de6b9cee6550fa1f1913"></a>## [◆ ](#ac0b580012767de6b9cee6550fa1f1913)getNumPoints()

 number getNumPoints  ( ) 

get the number points

Returnsnumber of points 



<a id="a67d1de4455103bb4997c22ba7a4c31eb"></a>## [◆ ](#a67d1de4455103bb4997c22ba7a4c31eb)GetPan()

 GetPan  ( float  *x*,    float  *y*   ) 

get the current pan values

Parameters \[in,out\]xx value of pan \[in,out\]yy value of pan 



<a id="a00fe2a48f2c8a282aada8a4c00914f45"></a>## [◆ ](#a00fe2a48f2c8a282aada8a4c00914f45)getPointColors()

 VectorXuc getPointColors  ( ) 

get the colors of all points

Returnscolors 



<a id="a43770b9c600b78afa660ac9d40c723cb"></a>## [◆ ](#a43770b9c600b78afa660ac9d40c723cb)getPointSize()

 float getPointSize  ( ) 

set the size of points relative to model size

Returnspoint size 



<a id="af87422e6ef851dcb428af7948c77d7e2"></a>## [◆ ](#af87422e6ef851dcb428af7948c77d7e2)GetRichLabel()

 virtual GetRichLabel  ( RichLabel  *richlabel*)   virtual 

GetRichLabel.

Returnsthe current rich label (legend) from the scene 



<a id="acf7d622731c0777294b1ed09e7a610b5"></a>## [◆ ](#acf7d622731c0777294b1ed09e7a610b5)GetRotation()

 GetRotation  ( float  *angle*,    float  *x*,    float  *y*,    float  *z*   ) 

get current rotation expressed in angle/axis form

Parameters angleAngle of rotation xx-component of rotation axis yy-component of rotation axis zz-component of rotation axis 



<a id="a4a6db54dad5010ed5efc232966141ec5"></a>## [◆ ](#a4a6db54dad5010ed5efc232966141ec5)getSelectedElementIndices()

 virtual [Matrix](class_matrix.xhtml) getSelectedElementIndices  ( [Structure](class_structure.xhtml)  *database*)   virtual 

Returnsthe indices in index mapper of selected elements as column vector Parameters database,thedatabase of this scene 



<a id="ae604ebacbf443a780c7f3b08011c57ad"></a>## [◆ ](#ae604ebacbf443a780c7f3b08011c57ad)getSelectedNodeIndices()

 virtual [Matrix](class_matrix.xhtml) getSelectedNodeIndices  ( [Structure](class_structure.xhtml)  *database*)   virtual 

Returnsthe indices in index mapper of selected nodes as column vector Parameters database,thedatabase of this scene 



<a id="a01f31efb33bd550d6e61d7698ecbefd5"></a>## [◆ ](#a01f31efb33bd550d6e61d7698ecbefd5)getSlice()

 getSlice  ( float  *a*,    float  *b*,    float  *c*,    float  *d*   ) 

Get current slicing plane in Hessian normal form given by the equation ![$\hat{n}x = -p$](/sites/default/files/migrate-content/optislang_3d_postprocessing_script_api_2024_r2_sp02_1/form_2.png).

Parameters acoeffcient $n\_x$ in the plane equation bcoeffcient $n\_y$ in the plane equation ccoeffcient $n\_z$ in the plane equation dcoeffcient $p$ in the plane equation 



<a id="a1ee56e4b222eb79feb5fc73ce1528d10"></a>## [◆ ](#a1ee56e4b222eb79feb5fc73ce1528d10)getSphereNormals()

 Eigen::MatrixXf getSphereNormals  ( ) 

get normals of a unit sphere

Returnsnormals 



<a id="acff3ea4a0700643aedfe199133e81084"></a>## [◆ ](#acff3ea4a0700643aedfe199133e81084)getSphereVertices()

 Eigen::MatrixXf getSphereVertices  ( ) 

get vertices of a unit sphere

Returnsvertices 



<a id="af2dd43e7fcc9b0712604a7c65b8346b4"></a>## [◆ ](#af2dd43e7fcc9b0712604a7c65b8346b4)getValues()

 graphics::VertexValues getValues  ( ) 

Returns a reference to the original scene data.

ReturnsA reference to the original (node/element) scene data 



<a id="a6a94ab4fe712f7c09489246cd5d476de"></a>## [◆ ](#a6a94ab4fe712f7c09489246cd5d476de)getVisibleCoordinates()

 MatrixXhf getVisibleCoordinates  ( ) 

get the coordinates of all visible vertices

Returnscoordinates 



<a id="ae3807ab35d2750410be14663334ef944"></a>## [◆ ](#ae3807ab35d2750410be14663334ef944)getVisibleTetCoordinates()

 MatrixXhf getVisibleTetCoordinates  ( ) 

get the coordinates of all visible tet vertices

Returnscoordinates 



<a id="a3254afc12d576278d55c2d3d28f78189"></a>## [◆ ](#a3254afc12d576278d55c2d3d28f78189)GetZoom()

 float GetZoom  ( ) 

get current zoom factor

Returnscurrent zoom factor 



<a id="a7719777eeb3c9b36b8df97eb00975286"></a>## [◆ ](#a7719777eeb3c9b36b8df97eb00975286)haveCurrentCoordinates()

 bool haveCurrentCoordinates  ( ) 

Returnsbool to indicated deformed coordinates 



<a id="a15f408f0a7dce9bd2acd6936325aca48"></a>## [◆ ](#a15f408f0a7dce9bd2acd6936325aca48)importTNG()

 virtual importTNG  ( string  *file*)   virtual 

import from [Matrix](class_matrix.xhtml "Standard matrix class. ") as used in slangTNG

Parameters filename of text file for export 



<a id="ab4562daf9688f00502b7de9b2ae3d9b0"></a>## [◆ ](#ab4562daf9688f00502b7de9b2ae3d9b0)isSelected() \[1/2\]

 virtual bool isSelected  ( [Element](class_element.xhtml) \*  *element*)   virtual 

isSelected

Parameters elementPointer to the chosen element Returnsbool indicating if chosen element is selected 



<a id="ab3bdf9b1987b1fb7cab665ce1c9d086a"></a>## [◆ ](#ab3bdf9b1987b1fb7cab665ce1c9d086a)isSelected() \[2/2\]

 virtual bool isSelected  ( Point \*  *node*)   virtual 

isSelected

Parameters nodePointer to the chosen node Returnsbool indicating if chosen node is selected 



<a id="aaa9bdea86739707baeafce9b104ebad5"></a>## [◆ ](#aaa9bdea86739707baeafce9b104ebad5)isSliced()

 bool isSliced  ( ) 

Returnstrue if a slice area is defined 



<a id="a88a7807fd65fd5bf216310aaf1c74c10"></a>## [◆ ](#a88a7807fd65fd5bf216310aaf1c74c10)isVertexSelected()

 virtual bool isVertexSelected  ( int  *i*)   virtual 

determine if a given vertex is currently selected

Parameters iindex of vertex Returnsboolean idicating if selected 



<a id="aaa30a3648e39044563841842c7e204ae"></a>## [◆ ](#aaa30a3648e39044563841842c7e204ae)mappedVector()

 Eigen::Vector3f mappedVector  ( Eigen::Vector3f  *orig*) 

Maps actual position vector into view space (-32767 - 32767)

Parameters origOrigianl position vector ReturnsMapped vector 



<a id="a181f4d63c649e319f7f6ac56a905554e"></a>## [◆ ](#a181f4d63c649e319f7f6ac56a905554e)palette()

 virtual palette  ( Palette  *palette*)   virtual 

Get current palette.

Returnspalette object containing the definition of the palette. 



<a id="aab2df1ee76ffef04e39be521fe300522"></a>## [◆ ](#aab2df1ee76ffef04e39be521fe300522)palettePercentageRange()

 virtual bool palettePercentageRange  ( )   virtual 

ReturnsReturns true if the palette has set relative values. Otherwise false 



<a id="a06d769b7b9a4271a48eb4774da7d82c8"></a>## [◆ ](#a06d769b7b9a4271a48eb4774da7d82c8)Prepare()

 virtual Prepare  ( )   virtual 

Clears all OpenGL Vertex Buffers first and re-initializes them afterwards.

Parameters fastIf fast is set to true ( intended in GUI-Mode to move even big structures smoothly) then only the VBO's for outline vertices as well as for elements are prepared. Otherwise all VOB's neccessary to render the chosen contour type are prepared additionally. 



<a id="af4f042c5b46694ad58ac461ff82d8f30"></a>## [◆ ](#af4f042c5b46694ad58ac461ff82d8f30)printSelectionInfo()

 virtual printSelectionInfo  ( [Structure](class_structure.xhtml)  *database*)   virtual 

prints some limited information on the current selection

Parameters database,thedatabase of this scene 



<a id="a05abf562d065b7fd4657ade1385c8bca"></a>## [◆ ](#a05abf562d065b7fd4657ade1385c8bca)removeSlice()

 removeSlice  ( ) 

Remove the slicing plane





<a id="a287f51df5268007e4828159bcff3079c"></a>## [◆ ](#a287f51df5268007e4828159bcff3079c)select() \[1/2\]

 virtual int select  ( [Structure](class_structure.xhtml)  *database*,    [Element](class_element.xhtml) \*  *element*,    number  *value*,    bool  *showLabel*   )   virtual 

Tests if the given element is in FEM set and if so marks it with value given as selected.

Parameters databaseThe [Structure](class_structure.xhtml "The central data structure for SoS. ") database containing all the information about the FEM structure nodeThe element to be tested and selected valueThe data value associated with it ReturnsReturns the number of new selected elements, which is at most 1, ignoring the original selection state 



<a id="a5798cbc7576fa42d09c369280a82c571"></a>## [◆ ](#a5798cbc7576fa42d09c369280a82c571)select() \[2/2\]

 virtual int select  ( [Structure](class_structure.xhtml)  *database*,    Point \*  *node*,    number  *value*,    bool  *isPoint*,    bool  *showLabel*   )   virtual 

Tests if the given node is in an active FEM set and if so marks it with value given as selected.

Parameters databaseThe [Structure](class_structure.xhtml "The central data structure for SoS. ") database containing all the information about the FEM structure nodeThe node to be tested and selected valueThe data value associated with it isPointReturnsReturns the number of new selected nodes, which is at most 1, ignoring the original selection state 



<a id="a2c62fd0ee90f6a105651e10e8948c539"></a>## [◆ ](#a2c62fd0ee90f6a105651e10e8948c539)selectEntitiesInRect()

 virtual selectEntitiesInRect  ( [Structure](class_structure.xhtml)  *database*,    QRect  *rect*,    bool  *keep\_selection*,    number  *max\_selectable*,    bool  *showLabel*   )   virtual 

Calls the select method for all visible mapped vertices/nodes and triangles/elements in a selection rectangle on the screen The called select method ensures that only items within an active FEM set will be selectable. See select for further information.

Parameters databaseThe [Structure](class_structure.xhtml "The central data structure for SoS. ") database containing all the information about the FEM structure rectQRect describing the selection area keep\_selectionTrue if existing selection should be kept max\_selectableLimits the selection to a maximum number of selected entities(?). 



<a id="a5b89a1b148f14e71c185082060849d35"></a>## [◆ ](#a5b89a1b148f14e71c185082060849d35)SetBackground()

 SetBackground  ( unsigned char  *red*,    unsigned char  *green*,    unsigned char  *blue*,    unsigned char  *alpha*   ) 

Sets the first background color for the scene.

Parameters redred color component (0 to 255) greengreen color component (0 to 255) blueblue color component (0 to 255) alphaalpha color component (0 to 255) 



<a id="a903ffdb01a728c442b01876f25d6dfba"></a>## [◆ ](#a903ffdb01a728c442b01876f25d6dfba)SetBackground2()

 SetBackground2  ( unsigned char  *red*,    unsigned char  *green*,    unsigned char  *blue*,    unsigned char  *alpha*   ) 

Sets the second background color for the scene. This defines a vertical color gradient together with the first background color.

Parameters redred color component (0 to 255) greengreen color component (0 to 255) blueblue color component (0 to 255) alphaalpha color component (0 to 255) 



<a id="a22c9ec48ade46ce4b5ac8ae2faca0c74"></a>## [◆ ](#a22c9ec48ade46ce4b5ac8ae2faca0c74)SetCoorAxesPosition()

 virtual SetCoorAxesPosition  ( graphics::Position  *pos*)   virtual 

Sets the position for the coordinate axes.

Parameters poscontains the position of the coordinate system. 



<a id="a7c0815264ec971f6464513386bdf6245"></a>## [◆ ](#a7c0815264ec971f6464513386bdf6245)setCoordinateAxes()

 setCoordinateAxes  ( bool  *persp*) 

Enable/Disable rendering of coordinate axes

Parameters perspif true, enable; if false disable 



<a id="ad0b92d97141bfb67678abdab74c2b71c"></a>## [◆ ](#ad0b92d97141bfb67678abdab74c2b71c)setCoordinateAxesLabels()

 setCoordinateAxesLabels  ( string  *x*,    string  *y*,    string  *z*   ) 

Returns the state of the perspective property in rendering scene

ReturnsTrue if perspective is activated, false otherwise 



<a id="a1b1f381d1e2ebb2299830502c5744a5f"></a>## [◆ ](#a1b1f381d1e2ebb2299830502c5744a5f)SetCoordinates()

 SetCoordinates  ( [Matrix](class_matrix.xhtml)  *coor*) 

Sets all coordinates of vertices.

Parameters coor[Matrix](class_matrix.xhtml "Standard matrix class. ") containing the coordinates 



<a id="aa14ba183af3e666e498c4e6c5fdbf3ae"></a>## [◆ ](#aa14ba183af3e666e498c4e6c5fdbf3ae)SetCoorSystemPosition()

 virtual SetCoorSystemPosition  ( graphics::Position  *pos*)   virtual 

Sets the position for the coordinate system.

Parameters poscontains the position of the coordinate system. 



<a id="addd456f71665ba4ffed7167e33b5e183"></a>## [◆ ](#addd456f71665ba4ffed7167e33b5e183)SetFont() \[1/2\]

 virtual SetFont  ( string  *font*,    number  *fontsize*   )   virtual 

Sets the font for all text to be shown in the scene.

Parameters fontthe font name fontsizethe size of the font in points 



<a id="ababbd02caffc98e21bdd737de704e921"></a>## [◆ ](#ababbd02caffc98e21bdd737de704e921)SetFont() \[2/2\]

 virtual SetFont  ( QFont  *font*)   virtual 

Sets the font for all text to be shown in the scene.

Parameters fontthe font 



<a id="a6b808aad5a0ae3633f3a8f7996fd54f4"></a>## [◆ ](#a6b808aad5a0ae3633f3a8f7996fd54f4)SetGeometricScaling()

 SetGeometricScaling  ( number  *scaling*,    [Structure](class_structure.xhtml)  *database*,    [SceneManager](class_scene_manager.xhtml) \*  *scene\_manager*   ) 

defines the scaling factor for geometric variations

Parameters scalingthe scaling factor 



<a id="a27c842466c304c3af705ef763e9d3227"></a>## [◆ ](#a27c842466c304c3af705ef763e9d3227)SetGeometricStabilization()

 SetGeometricStabilization  ( bool  *enable\_flag*,    [Structure](class_structure.xhtml)  *database*,    [SceneManager](class_scene_manager.xhtml) \*  *scene\_manager*   ) 

enables/disables mesh smoothening for gemetric imperfections

Parameters enablethe enable state 



<a id="ae359d9f8147e0cfb7eb7565d2506348b"></a>## [◆ ](#ae359d9f8147e0cfb7eb7565d2506348b)SetLegendPosition()

 virtual SetLegendPosition  ( graphics::Position  *pos*)   virtual 

Sets the position for the legend.

Parameters poscontains the position of the legend. 



<a id="a2336f6b9901c23c398f9a29a7d031f41"></a>## [◆ ](#a2336f6b9901c23c398f9a29a7d031f41)SetMarkPosition()

 SetMarkPosition  ( graphics::Position  *pos*) 

Sets the position for the watermark.

Parameters poscontains the position of the water mark. 



<a id="a64acf2cdfcf625cf407b9081f0410ce1"></a>## [◆ ](#a64acf2cdfcf625cf407b9081f0410ce1)setPalettePercentageRange()

 virtual setPalettePercentageRange  ( bool  *percentage\_range* = `true`)   virtual 

Sets a relative, percentage palette range.

Parameters percentage\_rangeIf set to true, the palette range will be scaled to the maximum palette value 



<a id="aff517029b952bf157f2bf8bcc11a107e"></a>## [◆ ](#aff517029b952bf157f2bf8bcc11a107e)setPalettePosition()

 virtual setPalettePosition  ( graphics::Position  *pos*)   virtual 

Sets the position for the current palette.

Parameters poscontains the position of the palette. 



<a id="a45647fa73b7519f83aa151af826fdf77"></a>## [◆ ](#a45647fa73b7519f83aa151af826fdf77)setPaletteType()

 virtual setPaletteType  ( PaletteTypePtr  *palette*)   virtual 

Assign a color/value palette to the scene. Only one palette can be assigned.

Parameters palettecontains the definition of the palette. 



<a id="ac7d59fffd8b830f1e34093328b47824c"></a>## [◆ ](#ac7d59fffd8b830f1e34093328b47824c)SetPan()

 SetPan  ( float  *x*,    float  *y*   ) 

Set the current pan values in (pixel, coordinate system?)

Parameters xx value of pan yy value of pan 



<a id="a7aef90b83a24d2a1ea4d8729afc3cfc5"></a>## [◆ ](#a7aef90b83a24d2a1ea4d8729afc3cfc5)setPerspective()

 setPerspective  ( bool  *persp*) 

Enable/Disable use of perspective in rendering scene

Parameters perspif true, enable use of perspective, if false disable perspective 



<a id="a6724f50b4207f54aefbc744ef88ec0fd"></a>## [◆ ](#a6724f50b4207f54aefbc744ef88ec0fd)setPointSize()

 setPointSize  ( float  *size*) 

set the size of points relative to model size

Parameters sizethe size of points 



<a id="aa129dfdc61a2fe7267b6c25b32009871"></a>## [◆ ](#aa129dfdc61a2fe7267b6c25b32009871)SetRotation()

 SetRotation  ( float  *angle*,    float  *x*,    float  *y*,    float  *z*   ) 

Resetting all rotatation information to its origin setting the new definition afterwards.

Parameters angleThe rotation angle in \[°\] xx-component of rotation axis yy-component of rotation axis zz-component of rotation axis 



<a id="a07454bde8fde4da8663bf1c11af4bfd2"></a>## [◆ ](#a07454bde8fde4da8663bf1c11af4bfd2)setRuler()

 setRuler  ( bool  *on*) 

Sets visibility of ruler.

Parameters onthe visibility of the ruler 



<a id="a10665bbab8fb55ce789916651c2656f4"></a>## [◆ ](#a10665bbab8fb55ce789916651c2656f4)SetScale()

 SetScale  ( float  *z*) 

Sets current length scale and zoom factor accordingly.

Parameters Lengthscale 



<a id="acd45c2ddbf316f7650c7ff2817759d0c"></a>## [◆ ](#acd45c2ddbf316f7650c7ff2817759d0c)SetSlice() \[1/2\]

 SetSlice  ( std::vector&lt; float &gt;  *pt*,    std::vector&lt; float &gt;  *dir*   ) 

Defines a slicing plane in Hessian normal form in terms of a point and a direction vector.

Parameters ptpoint through which the slicing plane passes dirdirection of visibility (normal of the slicing plane) NoteThis is just a convenience method computing the coefficients for the euclidean plane equation and calling the overloaded version afterwards.  
 Refer to [Wolfram: Plane](http://mathworld.wolfram.com/Plane.html) for an explanation of the plane definition 



<a id="a38dd17334b3049e6973e3c90f373f970"></a>## [◆ ](#a38dd17334b3049e6973e3c90f373f970)SetSlice() \[2/2\]

 SetSlice  ( float  *a*,    float  *b*,    float  *c*,    float  *d*   ) 

Defines a slicing plane in Hessian normal form by normalizing the paramters $a$, $b$, $c$, and $d$ given Only points with coordinates satisfying $ax+by+cz+d &gt; 0$ are shown, the rest is suppressed.

Parameters acoeffcient $a$ in the plane equation bcoeffcient $b$ in the plane equation ccoeffcient $c$ in the plane equation dcoeffcient $d$ in the plane equation NoteRefer to [Wolfram: Plane](http://mathworld.wolfram.com/Plane.html) for an explanation of the plane definition 



<a id="ada72656221408e3a4e178f7d2be87d03"></a>## [◆ ](#ada72656221408e3a4e178f7d2be87d03)SetTetCoordinates()

 SetTetCoordinates  ( [Matrix](class_matrix.xhtml)  *coor*) 

Sets all coordinates of tet vertices.

Parameters coor[Matrix](class_matrix.xhtml "Standard matrix class. ") containing the coordinates 



<a id="a7b325a6f280742d3b06a20196c57f01e"></a>## [◆ ](#a7b325a6f280742d3b06a20196c57f01e)SetUnconnectedPointCoordinates()

 SetUnconnectedPointCoordinates  ( [Matrix](class_matrix.xhtml)  *coor*) 

Sets morphed coordinates of unconnected points.

Parameters coor[Matrix](class_matrix.xhtml "Standard matrix class. ") containing the coordinates 



<a id="a19f2ead60d9392ab7ca45217412733e1"></a>## [◆ ](#a19f2ead60d9392ab7ca45217412733e1)SetValues()

 virtual SetValues  ( Eigen::VectorXd  *inputs*,    [Structure](class_structure.xhtml)  *database*,    bool  *reset\_scene\_options*,    [SceneManager](class_scene_manager.xhtml) \*  *scene\_manager*   )   virtual 

Assign values to the vertices of the structure which are then used for coloring.

Parameters inputsthe given random field amplitudes or FMOP inputs databasethe database we refer to 



<a id="abc373e739b0f1a7a6e4ac8feff19f3c1"></a>## [◆ ](#abc373e739b0f1a7a6e4ac8feff19f3c1)SetZoom()

 SetZoom  ( float  *z*) 

Sets current zoom factor.

Parameters Currentzoom factor 



<a id="ae103953ef85891c75590ac14875409b8"></a>## [◆ ](#ae103953ef85891c75590ac14875409b8)showRuler()

 bool showRuler  ( ) 

Returnsm\_show\_ruler