add_scene_3d_labelT_add_scene_3d_labelAddScene3dLabelAddScene3dLabel (Operator)

Name

add_scene_3d_labelT_add_scene_3d_labelAddScene3dLabelAddScene3dLabel — Hinzufügen eines Labels zu einer 3D-Szene.

Signatur

add_scene_3d_label( : : Scene3D, Text, ReferencePoint, Position, RelatesTo : LabelIndex)

Herror T_add_scene_3d_label(const Htuple Scene3D, const Htuple Text, const Htuple ReferencePoint, const Htuple Position, const Htuple RelatesTo, Htuple* LabelIndex)

void AddScene3dLabel(const HTuple& Scene3D, const HTuple& Text, const HTuple& ReferencePoint, const HTuple& Position, const HTuple& RelatesTo, HTuple* LabelIndex)

Hlong HScene3D::AddScene3dLabel(const HTuple& Text, const HTuple& ReferencePoint, const HTuple& Position, const HTuple& RelatesTo) const

Hlong HScene3D::AddScene3dLabel(const HString& Text, const HTuple& ReferencePoint, const HTuple& Position, const HTuple& RelatesTo) const

Hlong HScene3D::AddScene3dLabel(const char* Text, const HTuple& ReferencePoint, const HTuple& Position, const HTuple& RelatesTo) const

Hlong HScene3D::AddScene3dLabel(const wchar_t* Text, const HTuple& ReferencePoint, const HTuple& Position, const HTuple& RelatesTo) const   (Nur Windows)

static void HOperatorSet.AddScene3dLabel(HTuple scene3D, HTuple text, HTuple referencePoint, HTuple position, HTuple relatesTo, out HTuple labelIndex)

int HScene3D.AddScene3dLabel(HTuple text, HTuple referencePoint, HTuple position, HTuple relatesTo)

int HScene3D.AddScene3dLabel(string text, HTuple referencePoint, HTuple position, HTuple relatesTo)

Beschreibung

add_scene_3d_labeladd_scene_3d_labelAddScene3dLabelAddScene3dLabelAddScene3dLabel fügt ein Label mit dem Inhalt TextTextTextTexttext zur 3D-Szene Scene3DScene3DScene3DScene3Dscene3D hinzu und gibt den Index des Labels in LabelIndexLabelIndexLabelIndexLabelIndexlabelIndex zurück.

Der Bezugspunkt des Labels wird als [X,Y,Z]-Punkt im Koordinatensystem der 3D-Szene in ReferencePointReferencePointReferencePointReferencePointreferencePoint festgelegt. Es ist möglich, ein Label ohne Bezugspunkt zu erzeugen, indem ein leeres Tupel übergeben wird. Dies ist allerdings nur möglich, wenn RelatesToRelatesToRelatesToRelatesTorelatesTo auf 'point'"point""point""point""point" gesetzt wird (siehe die Beschreibung von RelatesToRelatesToRelatesToRelatesTorelatesTo weiter unten).

Werden mehrere Texte in TextTextTextTexttext als Tupel übergeben, werden mehrere Labels erzeugt. Es ist möglich einen Bezugspunkt für alle Labels oder spezifische Bezugspunkte für jedes Label festzulegen. Das gilt auch für PositionPositionPositionPositionposition und RelatesToRelatesToRelatesToRelatesTorelatesTo.

Labels können fest in Fensterkoordinaten oder relativ zur Projektion des Bezugspunktes positioniert werden. Dafür werden die beiden Parameter PositionPositionPositionPositionposition und RelatesToRelatesToRelatesToRelatesTorelatesTo verwendet:

Feste Positionierung

Wird RelatesToRelatesToRelatesToRelatesTorelatesTo auf 'window'"window""window""window""window" gesetzt, wird das Label an einer festen Position im Fenster (bzw. gerenderten Bild) dargestellt, auch wenn sich die Pose der 3D-Szene ändert. Es gibt zwei Möglichkeiten, die Position festzulegen. Es können entweder die [Zeile,Spalte]-Koordinaten der linken oberen Ecke des Labels in PositionPositionPositionPositionposition übergeben werden oder eine der folgenden vordefinierten Positionen:

'top_left'"top_left""top_left""top_left""top_left" 'top'"top""top""top""top" 'top_right'"top_right""top_right""top_right""top_right"
'left'"left""left""left""left" 'center'"center""center""center""center" 'right'"right""right""right""right"
'bottom_left'"bottom_left""bottom_left""bottom_left""bottom_left" 'bottom'"bottom""bottom""bottom""bottom" 'bottom_right'"bottom_right""bottom_right""bottom_right""bottom_right"

Relative Positionierung

Wird RelatesToRelatesToRelatesToRelatesTorelatesTo auf 'point'"point""point""point""point" gesetzt, wird das Label an einer Position relativ zur Projektion des Bezugspunkts dargestellt. Auf diese Weise bewegt sich das Label mit dem Bezugspunkt, wenn die Pose der 3D-Szene geändert wird. Es gibt wiederum zwei Möglichkeiten die Position festzulegen. Es kann entweder der Offset (in [Zeile,Spalte]-Koordinaten) der linken oberen Ecke des Labels oder eine der folgenden vordefinierten Positionen in PositionPositionPositionPositionposition übergeben werden:

'top_left'"top_left""top_left""top_left""top_left" 'top'"top""top""top""top" 'top_right'"top_right""top_right""top_right""top_right"
'left'"left""left""left""left" 'center'"center""center""center""center" 'right'"right""right""right""right"
'bottom_left'"bottom_left""bottom_left""bottom_left""bottom_left" 'bottom'"bottom""bottom""bottom""bottom" 'bottom_right'"bottom_right""bottom_right""bottom_right""bottom_right"

Mit set_scene_3d_label_paramset_scene_3d_label_paramSetScene3dLabelParamSetScene3dLabelParamSetScene3dLabelParam können diese und andere Parameter wie z.B. Farbe und Schriftart des Labels verändert werden.

Ausführungsinformationen

Parameter

Scene3DScene3DScene3DScene3Dscene3D (input_control)  scene_3d HScene3D, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle der 3D-Szene.

TextTextTextTexttext (input_control)  string(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

Text des Labels.

Defaultwert: 'label' "label" "label" "label" "label"

ReferencePointReferencePointReferencePointReferencePointreferencePoint (input_control)  point-array HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Bezugspunkt des Labels.

Parameteranzahl: 3

PositionPositionPositionPositionposition (input_control)  point-array HTupleHTupleHtuple (string / real / integer) (string / double / int / long) (HString / double / Hlong) (char* / double / Hlong)

Position im Fenster

Defaultwert: 'top' "top" "top" "top" "top"

Werteliste: 'bottom'"bottom""bottom""bottom""bottom", 'bottom_left'"bottom_left""bottom_left""bottom_left""bottom_left", 'bottom_right'"bottom_right""bottom_right""bottom_right""bottom_right", 'center'"center""center""center""center", 'left'"left""left""left""left", 'right'"right""right""right""right", 'top'"top""top""top""top", 'top_left'"top_left""top_left""top_left""top_left", 'top_right'"top_right""top_right""top_right""top_right"

RelatesToRelatesToRelatesToRelatesTorelatesTo (input_control)  string-array HTupleHTupleHtuple (string) (string) (HString) (char*)

Feste oder relative Positionierung

Parameteranzahl: 1

Defaultwert: 'point' "point" "point" "point" "point"

Werteliste: 'point'"point""point""point""point", 'window'"window""window""window""window"

LabelIndexLabelIndexLabelIndexLabelIndexlabelIndex (output_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Index des neuen Labels in der 3D-Szene.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert add_scene_3d_labeladd_scene_3d_labelAddScene3dLabelAddScene3dLabelAddScene3dLabel den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

create_scene_3dcreate_scene_3dCreateScene3dCreateScene3dCreateScene3d

Nachfolger

set_scene_3d_label_paramset_scene_3d_label_paramSetScene3dLabelParamSetScene3dLabelParamSetScene3dLabelParam

Siehe auch

remove_scene_3d_instanceremove_scene_3d_instanceRemoveScene3dInstanceRemoveScene3dInstanceRemoveScene3dInstance

Modul

3D Metrology