Position der Lichtquelle. Dieser Parameter muss als String mit
vier Fließkommawerten (getrennt durch Leerzeichen) übergeben
werden. Ist der vierte Wert 0.0, wird eine gerichtete Lichtquelle
verwendet, wobei die ersten drei Werte die Richtung bestimmen.
Ansonsten wird eine Punktlichtquelle verwendet, deren Position
durch die ersten drei Werte bestimmt ist.
Die folgenden Parameter können entweder für alle 3D Objektmodelle der Szene
oder für ein einzelnes 3D Objektmodell gesetzt werden (indem der Index des
3D Objektmodells an den Parameternamen angehängt wird, z.B.
'color_0'"color_0""color_0""color_0""color_0""color_0").
Farbe des 3D Objektmodells. Die verfügbaren Farben können mit dem
Operator query_colorquery_colorQueryColorQueryColorQueryColorquery_color erfragt werden.
Darüberhinaus kann die Farbe auch über ein RGB-Tripel in der Form
'#rrggbb'"#rrggbb""#rrggbb""#rrggbb""#rrggbb""#rrggbb" gesetzt werden, wobei 'rr', 'gg' und 'bb'
jeweils hexadezimale Zahlen zwischen '00' und 'ff' sind.
Farbe der Konturen, falls 'disp_lines'"disp_lines""disp_lines""disp_lines""disp_lines""disp_lines" auf 'true'"true""true""true""true""true"
gesetzt ist. Die verfügbaren Farben können mit dem Operator
query_colorquery_colorQueryColorQueryColorQueryColorquery_color erfragt werden.
Darüberhinaus kann die Farbe auch über ein RGB-Tripel in der Form
'#rrggbb'"#rrggbb""#rrggbb""#rrggbb""#rrggbb""#rrggbb" gesetzt werden, wobei 'rr', 'gg' und 'bb'
jeweils hexadezimale Zahlen zwischen '00' und 'ff' sind.
Farbe der Oberflächennormalen, falls 'disp_normals'"disp_normals""disp_normals""disp_normals""disp_normals""disp_normals" auf
'true'"true""true""true""true""true" gesetzt ist. Die verfügbaren Farben können mit dem
Operator query_colorquery_colorQueryColorQueryColorQueryColorquery_color erfragt werden.
Darüberhinaus kann die Farbe auch über ein RGB-Tripel in der Form
'#rrggbb'"#rrggbb""#rrggbb""#rrggbb""#rrggbb""#rrggbb" gesetzt werden, wobei 'rr', 'gg' und 'bb'
jeweils hexadezimale Zahlen zwischen '00' und 'ff' sind.
Setzt die LUT, die die Werte des mit 'color_attrib'"color_attrib""color_attrib""color_attrib""color_attrib""color_attrib"
gesetzten Attributes in Farben umwandelt.
In der Dokumentation von set_lutset_lutSetLutSetLutSetLutset_lut befindet sich eine Liste
der verfügbaren LUTs. Ist 'lut'"lut""lut""lut""lut""lut" auf etwas anderes
als 'default'"default""default""default""default""default" gesetzt, wird 'color'"color""color""color""color""color" ignoriert.
Name eines Punktattributes, das für die Falschfarbendarstellung verwendet
wird.
Falls ein Attribut gesetzt ist, wird die Farbe eines dargestellten
3D-Punktes durch den Attributwert des Punktes und die aktuell gesetzte
LUT bestimmt (siehe 'lut'"lut""lut""lut""lut""lut"). Auf diese Weise ist es möglich,
Attribute in Falschfarben darzustellen.
Beispiel: Wenn 'color_attrib'"color_attrib""color_attrib""color_attrib""color_attrib""color_attrib" auf 'coord_z'"coord_z""coord_z""coord_z""coord_z""coord_z" und 'lut'"lut""lut""lut""lut""lut"
auf 'color1'"color1""color1""color1""color1""color1" gesetzt ist, werden die Z-Koordinaten von rot nach
blau farbkodiert.
Falls 'lut'"lut""lut""lut""lut""lut" auf 'default'"default""default""default""default""default" gesetzt ist, werden die
Attributwerte verwendet, um die mit 'color'"color""color""color""color""color" gesetzte Farbe zu
skalieren.
Falls 'lut'"lut""lut""lut""lut""lut" auf etwas anderes gesetzt, werden die Attributwerte
intern auf den Bereich [0,255] skaliert und als Eingabe für die
LUT-Funktion verwendet.
Die Abbildung wird außerdem von den Parametern 'color_attrib_start'"color_attrib_start""color_attrib_start""color_attrib_start""color_attrib_start""color_attrib_start"
und 'color_attrib_end'"color_attrib_end""color_attrib_end""color_attrib_end""color_attrib_end""color_attrib_end" bestimmt (siehe unten).
Falls Flächen dargestellt werden, wird ihre Farbe zwischen den
Eckpunktfarben interpoliert.
Mögliche Werte:'none'"none""none""none""none""none", '&distance'"&distance""&distance""&distance""&distance""&distance",
'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",
benutzerdefinierte Punktattribute, oder beliebige andere
verfügbare Punktattribute.
Der maßgebliche Wertebereich für das mit 'color_attrib'"color_attrib""color_attrib""color_attrib""color_attrib""color_attrib"
eingestellte Attribut.
Die Attributwerte zwischen 'color_attrib_start'"color_attrib_start""color_attrib_start""color_attrib_start""color_attrib_start""color_attrib_start" und
'color_attrib_end'"color_attrib_end""color_attrib_end""color_attrib_end""color_attrib_end""color_attrib_end" werden auf den Anfang und das Ende der
ausgewählten LUT skaliert. Attributwerte außerhalb des Bereiches werden
beschnitten.
Damit ist es möglich, einen festen Farbbereich darzustellen, der nicht
durch Ausreißer verzerrt wird.
Bei 'auto'"auto""auto""auto""auto""auto" wird der kleinste Attributwert auf den Anfang der LUT
abgebildet, der größte Wert auf das Ende, es sei denn,
'color_attrib'"color_attrib""color_attrib""color_attrib""color_attrib""color_attrib" ist 'normal_x'"normal_x""normal_x""normal_x""normal_x""normal_x", 'normal_y'"normal_y""normal_y""normal_y""normal_y""normal_y" oder
'normal_z'"normal_z""normal_z""normal_z""normal_z""normal_z". In diesem Fall, werden Start und Ende automatisch auf
-1 und 1 gesetzt.
Der Startwert kann höher als der Endwert sein. In dem Fall wird die LUT
umgedreht.
Name eines Punktattributes, das für den Rot-, Grün-, oder Blaukanal
verwendet wird.
Das ist besonders nützlich, wenn drei zusammengehörige Attribute
verwendet werden, z.B. RGB-Farben oder Normalenvektoren.
Auf diese Weise können Punkte mit farbigen Texturen, z.B.
RGB-Sensor-Daten, dargestellt oder Punktnormalen in Falschfarben kodiert
werden.
Um ein einzelnes Attribut in Falschfarben darzustellen, verwenden Sie
bitte 'color_attrib'"color_attrib""color_attrib""color_attrib""color_attrib""color_attrib" (siehe oben).
Per Default wird angenommen, dass die Attributwerte zwischen 0 und 255
liegen. Falls die Attribute andere Wertebereiche haben, müssen
zusätzlich die Parameter 'rgb_channel_attrib_start'"rgb_channel_attrib_start""rgb_channel_attrib_start""rgb_channel_attrib_start""rgb_channel_attrib_start""rgb_channel_attrib_start" und
'rgb_channel_attrib_end'"rgb_channel_attrib_end""rgb_channel_attrib_end""rgb_channel_attrib_end""rgb_channel_attrib_end""rgb_channel_attrib_end" gesetzt werden (siehe unten).
Falls nur 1 oder 2 Kanäle gesetzt sind, verwenden die übrigen Kanäle den
RGB-Wert der mit 'color'"color""color""color""color""color" eingestellten Farbe.
Falls Flächen dargestellt werden, wird ihre Farbe zwischen den
Eckpunktfarben interpoliert.
Mögliche Werte:'none'"none""none""none""none""none", '&red'"&red""&red""&red""&red""&red",
'&green'"&green""&green""&green""&green""&green", '&blue'"&blue""&blue""&blue""&blue""&blue", '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",
benutzerdefinierte Punktattribute, oder beliebige andere
verfügbare Punktattribute.
Der maßgebliche Wertebereich für die mit 'red_channel_attrib'"red_channel_attrib""red_channel_attrib""red_channel_attrib""red_channel_attrib""red_channel_attrib",
'green_channel_attrib'"green_channel_attrib""green_channel_attrib""green_channel_attrib""green_channel_attrib""green_channel_attrib" und 'blue_channel_attrib'"blue_channel_attrib""blue_channel_attrib""blue_channel_attrib""blue_channel_attrib""blue_channel_attrib"
eingestellten Attribute.
Diese Parameter definieren den Wertebereich, der auf die gesamten
RGB-Kanäle skaliert wird. Das ist nützlich, wenn die Werte der
Eingabeattribute nicht im Intervall [0,255] liegen.
Bei 'auto'"auto""auto""auto""auto""auto" wird der kleinste Attributwert auf 0 abgebildet, der
größte Wert auf 255, es sei denn, das Attribut ist 'normal_x'"normal_x""normal_x""normal_x""normal_x""normal_x",
'normal_y'"normal_y""normal_y""normal_y""normal_y""normal_y" oder 'normal_z'"normal_z""normal_z""normal_z""normal_z""normal_z". In diesem Fall, werden Start
und Ende automatisch auf -1 und 1 gesetzt.
Der Startwert kann höher als der Endwert sein. In dem Fall werden die
RGB-Farben invertiert.
Der Bereich kann für jeden Kanal einzeln eingestellt werden, indem im
Parameternamen das 'rgb'"rgb""rgb""rgb""rgb""rgb" durch den jeweiligen Kanal ersetzt wird,
z.B. 'green_channel_attrib_start'"green_channel_attrib_start""green_channel_attrib_start""green_channel_attrib_start""green_channel_attrib_start""green_channel_attrib_start".
disp_object_model_3ddisp_object_model_3dDispObjectModel3dDispObjectModel3dDispObjectModel3ddisp_object_model_3d benötigt OpenGL 2.1, GLSL 1.2 und die OpenGL
Extensions GL_EXT_framebuffer_object und GL_EXT_framebuffer_blit.
Andernfalls wird automatisch der Kompatibilitätsmodus mit geringeren
Anforderungen an OpenGL benutzt.
Bei Grafikkarten mit geringem Speicher können bei großer Auflösung des
Renderfensters folgende Fehlermeldungen auftreten:
Low-Level Fehler: 'Incomplete attachment'
Unbehandelte Ausnahme: 'Benötigtes Framebuffer Objekt wird nicht
unterstützt'
Lösungen:
Um die Anforderungen an den Speicher der Grafikkarte zu verringern, kann
der Parameter 'quality'"quality""quality""quality""quality""quality" auf 'low'"low""low""low""low""low" gesetzt oder der
Kompatibilitätsmodus verwendet werden.
Die Systemvariable (siehe set_systemset_systemSetSystemSetSystemSetSystemset_system)
'opengl_compatibility_mode_enable'"opengl_compatibility_mode_enable""opengl_compatibility_mode_enable""opengl_compatibility_mode_enable""opengl_compatibility_mode_enable""opengl_compatibility_mode_enable" kann auf 'true'"true""true""true""true""true" gesetzt
werden, um den Kompatibilitätsmodus permanent einzuschalten.
Dieser Modus benötigt OpenGL 1.1.
Im Kompabilitätsmodus werden die Parameter
'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" und
'quality'"quality""quality""quality""quality""quality" nicht unterstützt.
Auf Linux Remote-Desktop wird 'disp_background'"disp_background""disp_background""disp_background""disp_background""disp_background" nicht
unterstützt.
Achtung
Kameras mit hyperzentrischen Objektiven werden nicht unterstützt.
Falls CamParamCamParamCamParamCamParamcamParamcam_param Verzeichnungskoeffizienten ungleich null
enthält ist bei der Projektion großer Dreiecke oder Polygone
(oder 3D-Primitive)
darauf zu achten, dass die Verzeichnung nur auf die Punkte des
Objektmodells angewandt werden. In der Projektion werden diese
wiederum mit geraden Linien verbunden. Für eine gute
Approximation der verzeichneten Linien sollte eine Triangulierung
mit ausreichend kleinen Dreiecken verwendet werden.
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
disp_object_model_3ddisp_object_model_3dDispObjectModel3dDispObjectModel3dDispObjectModel3ddisp_object_model_3d liefert den Wert TRUE, falls die
Parameter korrekt sind. Gegebenenfalls wird eine Fehlerbehandlung
durchgeführt.
Sollte das Rendering den verfügbaren Speicher der Grafikkarte überschreiten,
wird die Fehlermeldung 5188 zurückgegeben.