【HALCON】add_scene_3d_label 関数について - 3Dシーンにテキストラベルを追加
2024-08-23
2024-08-23
HALCON
のadd_scene_3d_label
関数は、3Dシーンにテキストラベルを追加し、指定した位置に固定するための機能です。この関数を利用することで、3Dシーン内の特定のオブジェクトに説明や注釈を付けたり、ラベルで補足情報を表示することが可能です。たとえば、オブジェクト名や位置情報などを3Dシーン内で視覚的に表現するために使用されます。
使用例
以下は、add_scene_3d_label
関数を使用して3Dシーンにテキストラベルを追加する具体例です。
* 3Dシーンを作成し、ラベルを追加
create_scene_3d(&Scene3D)
add_scene_3d_label(Scene3D, "Example Label", Pose, TextStyle, &LabelIndex)
この例では、まずcreate_scene_3d
関数を使用して3Dシーンを作成し、その後、add_scene_3d_label
関数を用いて"Example Label"
というテキストをシーンに追加しています。ラベルの位置はPose
で指定され、TextStyle
でテキストの表示スタイルが設定されています。
引数
-
Scene3D
3Dシーンのハンドル。create_scene_3d
関数で生成されたシーンのハンドルを使用します。 -
Text
追加するテキストラベルの内容。例えば、オブジェクト名や説明文などがここに指定されます。 -
Pose
ラベルを表示する位置を指定するための配列。この位置はシーンの座標系に基づいて設定されます。 -
TextStyle
テキストの表示スタイル。フォントサイズ、色、太さなど、テキストの見た目に関する設定を含みます。 -
LabelIndex
追加されたラベルのインデックス。これにより、シーン内でラベルを管理し、後から編集や削除が可能になります。
戻り値
add_scene_3d_label
関数は、追加されたテキストラベルのインデックスを返します。このインデックスは、ラベルの操作や削除、編集を行う際に使用されます。
応用例
複数のテキストラベルを使用して3Dシーンを注釈
この関数を利用して、複数のテキストラベルを3Dシーンに追加し、シーン内の異なるオブジェクトに対してラベルを付けることが可能です。以下の例は、複数のラベルを追加する方法です。
* 2つの異なるラベルをシーンに追加
add_scene_3d_label(Scene3D, "Object A", PoseA, TextStyleA, &LabelIndexA)
add_scene_3d_label(Scene3D, "Object B", PoseB, TextStyleB, &LabelIndexB)
この例では、Object A
とObject B
という2つの異なるラベルを、指定された位置PoseA
とPoseB
に追加しています。各ラベルには、それぞれ異なるTextStyle
が設定されています。
注意点
- ラベルの位置
Pose
は、3Dシーン内の適切な座標を指定する必要があります。誤った位置にラベルが配置されると、表示が不正確になる可能性があります。 - 複数のラベルを使用する際、視覚的な混乱を避けるために、ラベルの配置場所やフォントサイズに注意を払うことが重要です。
まとめ
HALCON
のadd_scene_3d_label
関数は、3Dシーン内にテキストラベルを追加し、特定のオブジェクトや位置に説明や注釈を付けるための便利なツールです。この関数を使用することで、シーン内の情報を視覚的に補足し、ユーザーにとって理解しやすい3Dモデルを作成することが可能です。