ClassesClassesClassesClasses | | | | Operators

disp_object_model_3dT_disp_object_model_3dDispObjectModel3ddisp_object_model_3dDispObjectModel3dDispObjectModel3d (Operator)

Name

disp_object_model_3dT_disp_object_model_3dDispObjectModel3ddisp_object_model_3dDispObjectModel3dDispObjectModel3d — Display 3D object models.

Signature

disp_object_model_3d( : : WindowHandle, ObjectModel3D, CamParam, Pose, GenParamName, GenParamValue : )

Herror T_disp_object_model_3d(const Htuple WindowHandle, const Htuple ObjectModel3D, const Htuple CamParam, const Htuple Pose, const Htuple GenParamName, const Htuple GenParamValue)

Herror disp_object_model_3d(const HTuple& WindowHandle, const HTuple& ObjectModel3D, const HTuple& CamParam, const HTuple& Pose, const HTuple& GenParamName, const HTuple& GenParamValue)

void HObjectModel3D::DispObjectModel3d(const HTuple& WindowHandle, const HTuple& CamParam, const HTuple& Pose, const HTuple& GenParamName, const HTuple& GenParamValue) const

void DispObjectModel3d(const HTuple& WindowHandle, const HTuple& ObjectModel3D, const HTuple& CamParam, const HTuple& Pose, const HTuple& GenParamName, const HTuple& GenParamValue)

static void HObjectModel3D::DispObjectModel3d(const HWindow& WindowHandle, const HObjectModel3DArray& ObjectModel3D, const HTuple& CamParam, const HPoseArray& Pose, const HTuple& GenParamName, const HTuple& GenParamValue)

void HObjectModel3D::DispObjectModel3d(const HWindow& WindowHandle, const HTuple& CamParam, const HPose& Pose, const HString& GenParamName, const HString& GenParamValue) const

void HObjectModel3D::DispObjectModel3d(const HWindow& WindowHandle, const HTuple& CamParam, const HPose& Pose, const char* GenParamName, const char* GenParamValue) const

void HOperatorSetX.DispObjectModel3d(
[in] VARIANT WindowHandle, [in] VARIANT ObjectModel3D, [in] VARIANT CamParam, [in] VARIANT Pose, [in] VARIANT GenParamName, [in] VARIANT GenParamValue)

void HObjectModel3DX.DispObjectModel3d(
[in] IHWindowX* WindowHandle, [in] VARIANT CamParam, [in] VARIANT Pose, [in] VARIANT GenParamName, [in] VARIANT GenParamValue)

static void HOperatorSet.DispObjectModel3d(HTuple windowHandle, HTuple objectModel3D, HTuple camParam, HTuple pose, HTuple genParamName, HTuple genParamValue)

static void HObjectModel3D.DispObjectModel3d(HWindow windowHandle, HObjectModel3D[] objectModel3D, HTuple camParam, HPose[] pose, HTuple genParamName, HTuple genParamValue)

void HObjectModel3D.DispObjectModel3d(HWindow windowHandle, HTuple camParam, HPose pose, string genParamName, string genParamValue)

Description

disp_object_model_3ddisp_object_model_3dDispObjectModel3ddisp_object_model_3dDispObjectModel3dDispObjectModel3d displays the 3D object models of ObjectModel3DObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3D in the window WindowHandleWindowHandleWindowHandleWindowHandleWindowHandlewindowHandle. Set CamParamCamParamCamParamCamParamCamParamcamParam and the individual poses (in PosePosePosePosePosepose) of the 3D object models to setup the displayed scene. If an empty tuple is given for CamParamCamParamCamParamCamParamCamParamcamParam, disp_object_model_3ddisp_object_model_3dDispObjectModel3ddisp_object_model_3dDispObjectModel3dDispObjectModel3d uses default camera parameters that correspond to the window size. PosePosePosePosePosepose can contain either multiple poses (one pose for each 3D object model) or one pose for all 3D object models. If an empty tuple is given for PosePosePosePosePosepose, disp_object_model_3ddisp_object_model_3dDispObjectModel3ddisp_object_model_3dDispObjectModel3dDispObjectModel3d estimates a pose, such that all 3D object models are visible.

3D object models containing triangles or polygons are displayed as solids, whereas 3d object models containing only coordinates are displayed as point clouds. 3D primitives (e.g., obtained by fit_primitives_object_model_3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3d) are displayed as solids as well. The generic parameter 'attribute'"attribute""attribute""attribute""attribute""attribute" can be used to explicitely select in which way a 3D object model is visualized.

To render the 3D object models into an image, the operator render_object_model_3drender_object_model_3dRenderObjectModel3drender_object_model_3dRenderObjectModel3dRenderObjectModel3d can be used.

GenParamNameGenParamNameGenParamNameGenParamNameGenParamNamegenParamName and GenParamValueGenParamValueGenParamValueGenParamValueGenParamValuegenParamValue are used to further configure the scene. The following values influence the whole scene:

'disp_background'"disp_background""disp_background""disp_background""disp_background""disp_background":

Flag, if the current window content should be used as background.

Values: 'true' or 'false'

Default value: 'false'

'light_position'"light_position""light_position""light_position""light_position""light_position":

Position of the light source. Must be given as a string containing four space separated floating point numbers. If the fourth number is 0.0, a directional light source is used (the first three components represent the direction), otherwise a point light source is used (with the first three components representing the position).

Default value: '-100.0 -100.0 0.0 1.0'

'colored'"colored""colored""colored""colored""colored":

Display 3D object models in different colors. The value of this parameter defines the number of colors that are used.

Values: 3, 6, or 12

Default value: all objects are displayed white

'object_index_persistence'"object_index_persistence""object_index_persistence""object_index_persistence""object_index_persistence""object_index_persistence":

Must be set to 'true'"true""true""true""true""true" to enable the object index query with get_disp_object_model_3d_infoget_disp_object_model_3d_infoGetDispObjectModel3dInfoget_disp_object_model_3d_infoGetDispObjectModel3dInfoGetDispObjectModel3dInfo.

Values: 'true' or 'false'

Default value: 'false'

'depth_persistence'"depth_persistence""depth_persistence""depth_persistence""depth_persistence""depth_persistence":

Must be set to 'true'"true""true""true""true""true" to enable the depth query with get_disp_object_model_3d_infoget_disp_object_model_3d_infoGetDispObjectModel3dInfoget_disp_object_model_3d_infoGetDispObjectModel3dInfoGetDispObjectModel3dInfo.

Values: 'true' or 'false'

Default value: 'false'

'quality'"quality""quality""quality""quality""quality":

Must be set to 'low'"low""low""low""low""low" to enable faster rendering without anti aliasing.

Values: 'low' or 'high'

Default value: 'high'

The following parameters can be set for all 3D object models in the scene or for a specific 3D object model by appending the index of the 3D object model to the parameter name (e.g., 'color_0'"color_0""color_0""color_0""color_0""color_0" to set the color of the first 3D object model).

'attribute'"attribute""attribute""attribute""attribute""attribute"

Explicitly select in which way a 3D object model is visualized.

Values: 'auto', 'faces', 'primitive', 'points', 'lines'

Default Value: 'auto'

'color'"color""color""color""color""color":

Color of the 3D object models. The available colors can be queried with the operator query_colorquery_colorQueryColorquery_colorQueryColorQueryColor. In addition, the color may be specified as an RGB triplet in the form '#rrggbb'"#rrggbb""#rrggbb""#rrggbb""#rrggbb""#rrggbb", where 'rr', 'gg', and 'bb' are hexadecimal numbers between '00' and 'ff', respectively.

Values: 'red', 'green', ...

Default value: 'white'

'alpha'"alpha""alpha""alpha""alpha""alpha":

Translucency of the 3D object models. Displaying 3D object models with translucency set to less than 1.0 may significantly increase the runtime of disp_object_model_3ddisp_object_model_3dDispObjectModel3ddisp_object_model_3dDispObjectModel3dDispObjectModel3d.

Values: floating point value between 0.0 (fully transparent) and 1.0 (fully opaque).

Default value: 1.0

'disp_pose'"disp_pose""disp_pose""disp_pose""disp_pose""disp_pose":

Flag, if the pose of the 3D object models should be visualized.

Values: 'true' or 'false'

Default value: 'false'

'disp_lines'"disp_lines""disp_lines""disp_lines""disp_lines""disp_lines":

Flag, if the contours of the 3D object models' polygons should be displayed.

Values: 'true' or 'false'

Default value: 'false'

'disp_normals'"disp_normals""disp_normals""disp_normals""disp_normals""disp_normals":

Flag, if the surface normals of the 3D object models should be visualized.

Values: 'true' or 'false'

Default value: 'false'

'line_color'"line_color""line_color""line_color""line_color""line_color":

Color of the lines if 'disp_lines'"disp_lines""disp_lines""disp_lines""disp_lines""disp_lines" is set to 'true'"true""true""true""true""true". The available colors can be queried with the operator query_colorquery_colorQueryColorquery_colorQueryColorQueryColor. In addition, the color may be specified as an RGB triplet in the form '#rrggbb'"#rrggbb""#rrggbb""#rrggbb""#rrggbb""#rrggbb", where 'rr', 'gg', and 'bb' are hexadecimal numbers.

Values: 'red', 'green', ...

Default value: The value of 'color'"color""color""color""color""color"

'normal_color'"normal_color""normal_color""normal_color""normal_color""normal_color":

Color of the visualized normals if 'disp_normals'"disp_normals""disp_normals""disp_normals""disp_normals""disp_normals" is set to 'true'"true""true""true""true""true". The available colors can be queried with the operator query_colorquery_colorQueryColorquery_colorQueryColorQueryColor. In addition, the color may be specified as an RGB triplet in the form '#rrggbb'"#rrggbb""#rrggbb""#rrggbb""#rrggbb""#rrggbb", where 'rr', 'gg', and 'bb' are hexadecimal numbers.

Values: 'red', 'green', ...

Default value: The value of 'color'"color""color""color""color""color"

'intensity'"intensity""intensity""intensity""intensity""intensity",'intensity_red'"intensity_red""intensity_red""intensity_red""intensity_red""intensity_red", 'intensity_green'"intensity_green""intensity_green""intensity_green""intensity_green""intensity_green",'intensity_blue'"intensity_blue""intensity_blue""intensity_blue""intensity_blue""intensity_blue":

An attribute that describes the intensity of displayed points or faces. The minimum of the values of this attribute is mapped to zero intensity, the maximum is mapped to full intensity. If 'lut'"lut""lut""lut""lut""lut" is set to anything but 'default'"default""default""default""default""default", the intensity is used as input to the LUT function, otherwise the intensity is multiplied on the color given via the parameter 'color'"color""color""color""color""color".

Values: 'coord_x', 'coord_y', 'coord_z', 'normal_x', 'normal_y', 'normal_z', 'none', or the name of an extended attribute.

Default value: 'none'

'lut'"lut""lut""lut""lut""lut":

Sets the LUT that transforms the 'intensity'"intensity""intensity""intensity""intensity""intensity" into a color. See set_lutset_lutSetLutset_lutSetLutSetLut for available LUTs. If 'lut'"lut""lut""lut""lut""lut" is set to anything but 'default'"default""default""default""default""default", 'color'"color""color""color""color""color" is ignored.

Default value: 'default'

'point_size'"point_size""point_size""point_size""point_size""point_size":

Sets the diameter of the points in pixel.

Default value: 3.5

All generic parameters are evaluated from left to right. For example, to set the color of the first 3d object model to red and the color of all other 3d object models to green, set GenParamNameGenParamNameGenParamNameGenParamNameGenParamNamegenParamName to ['color','color_0']["color","color_0"]["color","color_0"]["color","color_0"]["color","color_0"]["color","color_0"] and GenParamValueGenParamValueGenParamValueGenParamValueGenParamValuegenParamValue to ['green','red']["green","red"]["green","red"]["green","red"]["green","red"]["green","red"].

disp_object_model_3ddisp_object_model_3dDispObjectModel3ddisp_object_model_3dDispObjectModel3dDispObjectModel3d requires OpenGL 2.1, GLSL 1.2, and the OpenGL extensions GL_EXT_framebuffer_object and GL_EXT_framebuffer_blit. Otherwise, the compatibility mode is automatically enabled. On graphics cards with low memory, the following error messages could occur if rendering in a window with high resolution:

Low level error: 'Incomplete attachment'

Unhandled exception: 'Required framebuffer object is unsupported'

Solutions:

Set the parameter 'quality'"quality""quality""quality""quality""quality" to 'low'"low""low""low""low""low" or use the compatibility mode to reduce the requirements of the graphics card.

The system variable (see set_systemset_systemSetSystemset_systemSetSystemSetSystem) 'opengl_compatibility_mode_enable'"opengl_compatibility_mode_enable""opengl_compatibility_mode_enable""opengl_compatibility_mode_enable""opengl_compatibility_mode_enable""opengl_compatibility_mode_enable" can be set to 'true'"true""true""true""true""true" to permanently enable the visualisation in compatibility mode with lower OpenGL requirements. This mode requires OpenGL 1.1. In compatibility mode the parameters 'object_index_persistence'"object_index_persistence""object_index_persistence""object_index_persistence""object_index_persistence""object_index_persistence", 'depth_persistence'"depth_persistence""depth_persistence""depth_persistence""depth_persistence""depth_persistence" and 'quality'"quality""quality""quality""quality""quality" are not used.

On Linux Remote Desktop 'disp_background'"disp_background""disp_background""disp_background""disp_background""disp_background" is not supported.

Parallelization

Parameters

WindowHandleWindowHandleWindowHandleWindowHandleWindowHandlewindowHandle (input_control)  window HWindow, HTupleHTupleHTupleHWindowX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Window identifier.

ObjectModel3DObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3D (input_control)  object_model_3d(-array) HObjectModel3D, HTupleHTupleHObjectModel3D, HTupleHObjectModel3DX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Handles of the 3D object models.

CamParamCamParamCamParamCamParamCamParamcamParam (input_control)  number-array HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Camera parameters of the scene.

Number of elements: CamParam == 0 || CamParam == 8 || CamParam == 12

Default value: []

PosePosePosePosePosepose (input_control)  pose(-array) HPose, HTupleHTupleHTupleHPoseX, VARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

3D poses of the objects.

Default value: []

GenParamNameGenParamNameGenParamNameGenParamNameGenParamNamegenParamName (input_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Names of the generic parameters.

Default value: []

List of values: 'alpha'"alpha""alpha""alpha""alpha""alpha", 'attribute'"attribute""attribute""attribute""attribute""attribute", 'color'"color""color""color""color""color", 'colored'"colored""colored""colored""colored""colored", 'compatibility_mode_enable'"compatibility_mode_enable""compatibility_mode_enable""compatibility_mode_enable""compatibility_mode_enable""compatibility_mode_enable", 'depth_persistence'"depth_persistence""depth_persistence""depth_persistence""depth_persistence""depth_persistence", 'disp_background'"disp_background""disp_background""disp_background""disp_background""disp_background", 'disp_lines'"disp_lines""disp_lines""disp_lines""disp_lines""disp_lines", 'disp_normals'"disp_normals""disp_normals""disp_normals""disp_normals""disp_normals", 'disp_pose'"disp_pose""disp_pose""disp_pose""disp_pose""disp_pose", 'intensity'"intensity""intensity""intensity""intensity""intensity", 'intensity_blue'"intensity_blue""intensity_blue""intensity_blue""intensity_blue""intensity_blue", 'intensity_green'"intensity_green""intensity_green""intensity_green""intensity_green""intensity_green", 'intensity_red'"intensity_red""intensity_red""intensity_red""intensity_red""intensity_red", 'light_position'"light_position""light_position""light_position""light_position""light_position", 'line_color'"line_color""line_color""line_color""line_color""line_color", 'lut'"lut""lut""lut""lut""lut", 'normal_color'"normal_color""normal_color""normal_color""normal_color""normal_color", 'object_index_persistence'"object_index_persistence""object_index_persistence""object_index_persistence""object_index_persistence""object_index_persistence", 'point_size'"point_size""point_size""point_size""point_size""point_size", 'quality'"quality""quality""quality""quality""quality"

GenParamValueGenParamValueGenParamValueGenParamValueGenParamValuegenParamValue (input_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double) (BSTR / Hlong / double) (char* / Hlong / double)

Values of the generic parameters.

Default value: []

List of values: 'auto'"auto""auto""auto""auto""auto", 'blue'"blue""blue""blue""blue""blue", 'coord_x'"coord_x""coord_x""coord_x""coord_x""coord_x", 'coord_y'"coord_y""coord_y""coord_y""coord_y""coord_y", 'coord_z'"coord_z""coord_z""coord_z""coord_z""coord_z", 'faces'"faces""faces""faces""faces""faces", 'false'"false""false""false""false""false", 'green'"green""green""green""green""green", 'lines'"lines""lines""lines""lines""lines", 'normal_x'"normal_x""normal_x""normal_x""normal_x""normal_x", 'normal_y'"normal_y""normal_y""normal_y""normal_y""normal_y", 'normal_z'"normal_z""normal_z""normal_z""normal_z""normal_z", 'points'"points""points""points""points""points", 'primitive'"primitive""primitive""primitive""primitive""primitive", 'red'"red""red""red""red""red", 'true'"true""true""true""true""true"

Result

disp_object_model_3ddisp_object_model_3dDispObjectModel3ddisp_object_model_3dDispObjectModel3dDispObjectModel3d returns 2 (H_MSG_TRUE) if all parameters are correct. If necessary, an exception is raised. If the image rendering exceeds the available memory of the graphics card, the error 5188 is raised.

Possible Predecessors

find_surface_modelfind_surface_modelFindSurfaceModelfind_surface_modelFindSurfaceModelFindSurfaceModel, fit_primitives_object_model_3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3d, read_object_model_3dread_object_model_3dReadObjectModel3dread_object_model_3dReadObjectModel3dReadObjectModel3d, segment_object_model_3dsegment_object_model_3dSegmentObjectModel3dsegment_object_model_3dSegmentObjectModel3dSegmentObjectModel3d

Possible Successors

get_disp_object_model_3d_infoget_disp_object_model_3d_infoGetDispObjectModel3dInfoget_disp_object_model_3d_infoGetDispObjectModel3dInfoGetDispObjectModel3dInfo

See also

render_object_model_3drender_object_model_3dRenderObjectModel3drender_object_model_3dRenderObjectModel3dRenderObjectModel3d, project_object_model_3dproject_object_model_3dProjectObjectModel3dproject_object_model_3dProjectObjectModel3dProjectObjectModel3d, project_shape_model_3dproject_shape_model_3dProjectShapeModel3dproject_shape_model_3dProjectShapeModel3dProjectShapeModel3d, object_model_3d_to_xyzobject_model_3d_to_xyzObjectModel3dToXyzobject_model_3d_to_xyzObjectModel3dToXyzObjectModel3dToXyz

Module

3D Metrology


ClassesClassesClassesClasses | | | | Operators