FB_AABBSetCenterHalfExtents (Method)

Overview

Type:

Method

Available as of:

V1.0.0.0

This chapter provides information on:

Task

Sets the center and half extents.

Description

This method is used to initialize an AABB object by setting its minimum and maximum vertices. The full list of vertices, the center and the half extents of the AABB are evaluated accordingly.

i_stHalfExtents parameters (XZ plane view):

i_stHalfExtents parameters (XY-plane view):

Interface

The function block implements the interface IF_AABB.

Access: PUBLIC

Input

Data type

Description

i_stCenter

SE_Math.ST_Vector3D

The center of the AABB bounding volume.

i_stHalfExtents

SE_Math.ST_Vector3D

Each element of this 3D vector represents the half extents of the AABB object along the X-, Y- anx Z-axes.

Output

Data type

Description

q_xError

BOOL

The output is set to TRUE if an error has been detected during the execution.

q_etResult

ET_Result

POU-specific output on the diagnostic; q_xError = FALSE -> Status message; q_xError = TRUE -> Diagnostic message.

q_sResultMsg

STRING(80)

Event-triggered message that gives additional information on the diagnostic state.

Diagnostic Messages

q_xError

q_etResult

Enumeration value

Description

FALSE

OK

0

Success

TRUE

HalfExtentsRange

3

The provided value for the half extents is outside the admissible range.

OK

Enumeration name:

Ok

Enumeration value:

0

Description:

Success

HalfExtentsRange

Enumeration name:

HalfExtentsRange

Enumeration value:

3

Description:

The provided value for the half extents is outside the admissible range.

Issue

Cause

Solution

Could not set center and half extents.

At least one of the values of i_stHalfExtents is either negative or null.

Make sure that:

  • i_stHalfExtents.lrX > 0.0

  • i_stHalfExtents.lrY > 0.0

  • i_stHalfExtents.lrZ > 0.0