boundingBoxReal: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(Add 2.14's alternative syntax)
(19 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Command|Comments=
{{RV|type=command
____________________________________________________________________________________________


| arma3 |Game name=
|game1= arma3
|version1= 0.50


|0.50|Game version=
|arg= global


|arg= global |MP Arguments=
|gr1= Object Manipulation
____________________________________________________________________________________________


| [[Image:Boundingbox.jpg|right|200px]] Returns a raw bounding box of given object in model coordinates space. This command is similar to [[boundingBox]] but gives more precise measurements.<br>
|descr= [[Image:Boundingbox.jpg|right|200px]] Returns a raw bounding box of given object in model coordinates space. This command is similar to [[boundingBox]] but gives more precise measurements.<br>
An alternative syntax was introduced with {{arma3}} v1.92 allowing to specify clipping type to be used, which in some cases could make bounding boxes even more precise. The output of both syntaxes was also extended to include bounding sphere diameter, identical to [[sizeOf]] return value. |DESCRIPTION=
The alternative syntax allows to specify clipping type to be used, which in some cases could make the result even more precise.
____________________________________________________________________________________________


| [[boundingBoxReal]] object |SYNTAX=
|s1= [[boundingBoxReal]] object


|p1= object: [[Object]] |PARAMETER1=
|p1= object: [[Object]]


| [[Array]] - the extreme points of the model as well as bounding box sphere diameter, to format [<nowiki/>[xmin, ymin, zmin],[xmax, ymax, zmax], boundingSphereDiameter]. |RETURNVALUE=
|r1= [[Array]] - the extreme points of the model in format [[Position#PositionRelative|PositionRelative]], as well as (since {{GVI|arma3|1.92|size= 0.75}}) bounding box sphere radius, to format [<nowiki/>[xmin, ymin, zmin], [xmax, ymax, zmax], boundingSphereRadius]


|s2= clippingType [[boundingBoxReal]] object |SYNTAX2=
|s2= clippingType [[boundingBoxReal]] object
 
|s2since= arma3 1.92


|p21= clippingType: [[Number]] - can be one of:
|p21= clippingType: [[Number]] - can be one of:
* 0 - ClipVisual (could significantly reduce the size of bounding boxes on buildings)
* 0 - ClipVisual (can significantly reduce bounding box's size on buildings)
* 1 - ClipShadow
* 1 - ClipShadow
* 2 - ClipGeometry
* 2 - ClipGeometry
* 3 - ClipGeneral (same type that is used in main syntax) |PARAMETER21=
* 3 - ClipGeneral (same type that is used in the main syntax)


|p22= object: [[Object]] |PARAMETER22=
|p22= object: [[Object]]


|r2= [[Array]] - the extreme points of the model as well as bounding box sphere diameter, to format [<nowiki/>[xmin, ymin, zmin],[xmax, ymax, zmax], boundingSphereDiameter]. |RETURNVALUE2=
|r2= [[Array]] - the extreme points of the model in format [[Position#PositionRelative|PositionRelative]], as well as bounding box sphere radius, to format [<nowiki/>[xmin, ymin, zmin], [xmax, ymax, zmax], boundingSphereRadius]
____________________________________________________________________________________________


|x1= <code>_bbr = [[boundingBoxReal]] [[vehicle]] [[player]];
|s3= boundingBoxReal [object, LOD]
_p1 = _bbr [[select]] 0;
_p2 = _bbr [[select]] 1;
_maxWidth = [[abs]] ((_p2 [[select]] 0) - (_p1 [[select]] 0));
_maxLength = [[abs]] ((_p2 [[select]] 1) - (_p1 [[select]] 1));
_maxHeight = [[abs]] ((_p2 [[select]] 2) - (_p1 [[select]] 2));
</code> |EXAMPLE1=


|x2= <code>[[hint]] [[str]] (0 [[boundingBoxReal]] [[cursorObject]]);</code> |EXAMPLE2=
|s3since= arma3 2.14
____________________________________________________________________________________________


| [[boundingBox]], [[sizeOf]], [[boundingCenter]] |SEEALSO=
|p41= object: [[Object]]
}}
 
|p42= LOD: [[String]] or [[Number]] - can be one of:
* {{hl|"Memory"}}
* {{hl|"Geometry"}}
* {{hl|"FireGeometry"}}
* {{hl|"LandContact"}}
* {{hl|"HitPoints"}}
* {{hl|"ViewGeometry"}}
When [[Number]] is used, command searches for a LOD with the similar [[LOD resolutions|LOD resolution]]
 
|r3= [[Array]] - the extreme points of the model in format [[Position#PositionRelative|PositionRelative]], as well as bounding box sphere radius, to format [<nowiki/>[xmin, ymin, zmin], [xmax, ymax, zmax], boundingSphereRadius]


<h3 style='display:none'>Notes</h3>
|x1= <sqf>
<dl class='command_description'>
private _bbr = boundingBoxReal vehicle player;
<!-- Note Section BEGIN -->
private _p1 = _bbr select 0;
private _p2 = _bbr select 1;
private _maxWidth = abs ((_p2 select 0) - (_p1 select 0));
private _maxLength = abs ((_p2 select 1) - (_p1 select 1));
private _maxHeight = abs ((_p2 select 2) - (_p1 select 2));
</sqf>


<!-- Note Section END -->
|x2= <sqf>hint str (0 boundingBoxReal cursorObject);</sqf>
</dl>


<h3 style='display:none'>Bottom Section</h3>
|seealso= [[boundingBox]] [[sizeOf]] [[boundingCenter]]
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
}}
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]

Revision as of 17:37, 20 March 2023

Hover & click on the images for description

Description

Description:
Boundingbox.jpg
Returns a raw bounding box of given object in model coordinates space. This command is similar to boundingBox but gives more precise measurements.
The alternative syntax allows to specify clipping type to be used, which in some cases could make the result even more precise.
Groups:
Object Manipulation

Syntax 1

Syntax:
boundingBoxReal object
Parameters:
object: Object
Return Value:
Array - the extreme points of the model in format PositionRelative, as well as (since Arma 3 logo black.png1.92) bounding box sphere radius, to format [[xmin, ymin, zmin], [xmax, ymax, zmax], boundingSphereRadius]

Syntax 2

Syntax:
clippingType boundingBoxReal object
Parameters:
clippingType: Number - can be one of:
  • 0 - ClipVisual (can significantly reduce bounding box's size on buildings)
  • 1 - ClipShadow
  • 2 - ClipGeometry
  • 3 - ClipGeneral (same type that is used in the main syntax)
object: Object
Return Value:
Array - the extreme points of the model in format PositionRelative, as well as bounding box sphere radius, to format [[xmin, ymin, zmin], [xmax, ymax, zmax], boundingSphereRadius]

Syntax 3

Syntax:
boundingBoxReal [object, LOD]
Parameters:
object: Object
LOD: String or Number - can be one of:
  • "Memory"
  • "Geometry"
  • "FireGeometry"
  • "LandContact"
  • "HitPoints"
  • "ViewGeometry"
When Number is used, command searches for a LOD with the similar LOD resolution
Return Value:
Array - the extreme points of the model in format PositionRelative, as well as bounding box sphere radius, to format [[xmin, ymin, zmin], [xmax, ymax, zmax], boundingSphereRadius]

Examples

Example 1:
private _bbr = boundingBoxReal vehicle player; private _p1 = _bbr select 0; private _p2 = _bbr select 1; private _maxWidth = abs ((_p2 select 0) - (_p1 select 0)); private _maxLength = abs ((_p2 select 1) - (_p1 select 1)); private _maxHeight = abs ((_p2 select 2) - (_p1 select 2));
Example 2:
hint str (0 boundingBoxReal cursorObject);

Additional Information

See also:
boundingBox sizeOf boundingCenter

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note