Arma Reforger Script API
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SCR_BasePreviewEntity Interface Reference

Generic preview entity used to represent another entity is simplified form. More...

Inheritance diagram for SCR_BasePreviewEntity:
[legend]

Public Member Functions

void SetPreviewTransform (vector worldTransform[4], EEditorTransformVertical verticalMode, float heightTerrain=0, bool isUnderwater=false, TraceParam trace=null)
 Set transformation of the preview.
 
array< SCR_BasePreviewEntityGetPreviewChildren ()
 Get all direct preview entity children.
 
IEntity GetSourceEntity ()
 Get entity from which the preview was copied from.
 
void GetPreviewBounds (out vector outBoundMin, out vector outBoundMax)
 Get local bounding box of the preview entity (including all children)
 
bool HasMultipleEditableEntities ()
 
void SCR_BasePreviewEntity (IEntitySource src, IEntity parent)
 
void ~SCR_BasePreviewEntity ()
 
override void _WB_GetBoundBox (inout vector min, inout vector max, IEntitySource src)
 
override void _WB_AfterWorldUpdate (float timeSlice)
 

Static Public Member Functions

static SCR_BasePreviewEntity SpawnPreview (notnull array< ref SCR_BasePreviewEntry > entries, ResourceName previewPrefab, BaseWorld world=null, EntitySpawnParams spawnParams=null, ResourceName material=ResourceName.Empty, EPreviewEntityFlag flags=0)
 Spawn preview entity from entries.
 

Protected Member Functions

void SetChildTransform (EEditorTransformVertical verticalMode, float heightTerrain, bool isUnderwater=false, TraceParam trace=null)
 
void SetPreviewObject (VObject mesh, ResourceName material)
 
void EOnPreviewInit (SCR_BasePreviewEntry entry, SCR_BasePreviewEntity root)
 Init event called when the preview is created.
 
void EOnRootPreviewInit (array< ref SCR_BasePreviewEntry > entries)
 Init event called on preview root entity.
 

Protected Attributes

EPreviewEntityFlag m_Flags
 
IEntity m_Entity
 
IEntitySource m_EntitySource
 
float m_fHeightTerrain = -1
 
bool m_bIsOnOrigTransform = true
 
vector m_vLocalTransform [4]
 
vector m_vTerrainTransform [4]
 
ref array< SCR_BasePreviewEntitym_aChildren
 
vector m_vBounds [2]
 
bool m_bHasMultipleEditableEntities
 

Detailed Description

Generic preview entity used to represent another entity is simplified form.

Uses array of SCR_BasePreviewEntry for configuration. Such array can be generated from prefab or existing entities, see inherited classes for details.

Constructor & Destructor Documentation

◆ SCR_BasePreviewEntity()

void SCR_BasePreviewEntity.SCR_BasePreviewEntity ( IEntitySource  src,
IEntity  parent 
)

◆ ~SCR_BasePreviewEntity()

void SCR_BasePreviewEntity.~SCR_BasePreviewEntity ( )

Member Function Documentation

◆ _WB_AfterWorldUpdate()

override void SCR_BasePreviewEntity._WB_AfterWorldUpdate ( float  timeSlice)

◆ _WB_GetBoundBox()

override void SCR_BasePreviewEntity._WB_GetBoundBox ( inout vector  min,
inout vector  max,
IEntitySource  src 
)

◆ EOnPreviewInit()

void SCR_BasePreviewEntity.EOnPreviewInit ( SCR_BasePreviewEntry  entry,
SCR_BasePreviewEntity  root 
)
protected

Init event called when the preview is created.

To be overridden by child classes

Implemented in SCR_EditablePreviewEntity, and SCR_RefPreviewEntity.

◆ EOnRootPreviewInit()

void SCR_BasePreviewEntity.EOnRootPreviewInit ( array< ref SCR_BasePreviewEntry entries)
protected

Init event called on preview root entity.

To be overridden by child classes

Implemented in SCR_EditablePreviewEntity.

◆ GetPreviewBounds()

void SCR_BasePreviewEntity.GetPreviewBounds ( out vector  outBoundMin,
out vector  outBoundMax 
)

Get local bounding box of the preview entity (including all children)

Parameters
[out]outBoundMinLower corner
[out]outBoundMaxUpper corner

◆ GetPreviewChildren()

array< SCR_BasePreviewEntity > SCR_BasePreviewEntity.GetPreviewChildren ( )

Get all direct preview entity children.

Returns
Array of children

◆ GetSourceEntity()

IEntity SCR_BasePreviewEntity.GetSourceEntity ( )

Get entity from which the preview was copied from.

Returns
Source entity, or null if the preview was not created from an entity

◆ HasMultipleEditableEntities()

bool SCR_BasePreviewEntity.HasMultipleEditableEntities ( )
Returns
True if the preview entity represents multiple editable entities (e.g., composition with editable children, or editing multiple editable entities at once).

◆ SetChildTransform()

void SCR_BasePreviewEntity.SetChildTransform ( EEditorTransformVertical  verticalMode,
float  heightTerrain,
bool  isUnderwater = false,
TraceParam  trace = null 
)
protected

◆ SetPreviewObject()

void SCR_BasePreviewEntity.SetPreviewObject ( VObject  mesh,
ResourceName  material 
)
protected

◆ SetPreviewTransform()

void SCR_BasePreviewEntity.SetPreviewTransform ( vector  worldTransform[4],
EEditorTransformVertical  verticalMode,
float  heightTerrain = 0,
bool  isUnderwater = false,
TraceParam  trace = null 
)

Set transformation of the preview.

Entities will be oriented to terrain when when they have the functionality enabled.

Parameters
worldTransformTransformation matrix in world space
verticalModeType of vertical editing
heightTerrainHeight above terrain
isUnderwaterTrue when the preview entity is under ocean surface

◆ SpawnPreview()

static SCR_BasePreviewEntity SCR_BasePreviewEntity.SpawnPreview ( notnull array< ref SCR_BasePreviewEntry entries,
ResourceName  previewPrefab,
BaseWorld  world = null,
EntitySpawnParams  spawnParams = null,
ResourceName  material = ResourceName::Empty,
EPreviewEntityFlag  flags = 0 
)
static

Spawn preview entity from entries.

To get entries, see specialized inherited classes.

Parameters
entriesList of entity entries
previewPrefabPrefab of preview entity. Can also be a class name, e.g., "SCR_RefPreviewEntity"
worldWorld in which the preview will be spawned
spawnParamsSpawn params of the preview
materialMaterial of the preview. When empty, meshes won't be created at all.
Returns
Entity preview

Member Data Documentation

◆ m_aChildren

ref array<SCR_BasePreviewEntity> SCR_BasePreviewEntity.m_aChildren
protected

◆ m_bHasMultipleEditableEntities

bool SCR_BasePreviewEntity.m_bHasMultipleEditableEntities
protected

◆ m_bIsOnOrigTransform

bool SCR_BasePreviewEntity.m_bIsOnOrigTransform = true
protected

◆ m_Entity

IEntity SCR_BasePreviewEntity.m_Entity
protected

◆ m_EntitySource

IEntitySource SCR_BasePreviewEntity.m_EntitySource
protected

◆ m_fHeightTerrain

float SCR_BasePreviewEntity.m_fHeightTerrain = -1
protected

◆ m_Flags

EPreviewEntityFlag SCR_BasePreviewEntity.m_Flags
protected

◆ m_vBounds

vector SCR_BasePreviewEntity.m_vBounds[2]
protected

◆ m_vLocalTransform

vector SCR_BasePreviewEntity.m_vLocalTransform[4]
protected

◆ m_vTerrainTransform

vector SCR_BasePreviewEntity.m_vTerrainTransform[4]
protected

The documentation for this interface was generated from the following file: