AlignPrefabPivot
(
anchorVolumeBounds
, prefabBounds
, localScale
, alignMode
)
|
Aligns the pivot points of a prefab and of the anchors' volumebased on the specified alignment mode.
This method aligns the pivots of a prefab and of an anchor based on the specified alignment mode. The pivot calculations will impact where the prefab will be instantiated in the scene. If the alignment mode is Automatic or Bottom, it aligns the pivot at the bottom center of the prefab. If the alignment mode is Center, it aligns the pivot at the center of the prefab. If the alignment mode is Custom, it uses the provided custom alignment logic. It then scales the pivot point of the prefab and returns the pivot points of the prefab and the anchor.
Signature
static Vector3 AlignPrefabPivot(Bounds anchorVolumeBounds, Bounds? prefabBounds, Vector3 localScale, AnchorPrefabSpawner.AlignMode alignMode=AnchorPrefabSpawner.AlignMode.Automatic) Parameters anchorVolumeBounds: BoundsÂ
The volume bounds of the anchor.
prefabBounds: Bounds?Â
The bounds of the prefab.
localScale: Vector3Â
The local scale of the prefab.
alignMode: AnchorPrefabSpawner.AlignModeÂ
The alignment mode to use. See AnchorPrefabSpawner.AlignMode.
Returns Vector3Â
The pivot points of the prefab and of the anchor's volume.
|
AlignPrefabPivot
(
planeRect
, prefabBounds
, localScale
, alignMode
)
|
Aligns the pivots of a prefab and of the anchor's plane rect, based on the specified alignment mode.
This method aligns the pivots of a prefab and of an anchor based on the specified alignment mode. The pivot calculations will impact where the prefab will be instantiated in the scene. If the alignment mode is Automatic or Center, it aligns the pivot at the center of the prefab. If the alignment mode is Bottom, it aligns the pivot at the bottom of the prefab. If the alignment mode is Custom, it uses the provided custom alignment logic. It then scales the pivot point of the prefab and returns the pivot points of the prefab and the anchor plane rectangle.
Signature
static Vector3 AlignPrefabPivot(Rect planeRect, Bounds? prefabBounds, Vector2 localScale, AnchorPrefabSpawner.AlignMode alignMode=AnchorPrefabSpawner.AlignMode.Automatic) Parameters planeRect: RectÂ
The plane rectangle of the anchor.
prefabBounds: Bounds?Â
The bounds of the prefab.
localScale: Vector2Â
The local scale of the prefab.
alignMode: AnchorPrefabSpawner.AlignModeÂ
The alignment mode to use. See AnchorPrefabSpawner.AlignMode.
Returns Vector3Â
The pivot points of the prefab and the anchor plane rectangle.
|
GetPrefabWithClosestSizeToAnchor
(
anchor
, prefabList
, sizeMatchingPrefab
)
|
Selects a prefab from a list that has the closest size to the volume of an anchor.
This method selects a prefab from a list that has the closest size to the volume of an anchor. It first checks if the anchor has a volume. If not, it throws an exception. It then calculates the volume of the anchor and each prefab in the list. It selects the prefab with the smallest difference in size to the anchor's volume.
Signature
static bool GetPrefabWithClosestSizeToAnchor(MRUKAnchor anchor, List< GameObject > prefabList, out GameObject sizeMatchingPrefab) Parameters prefabList: List< GameObject >Â
The list of prefabs to select from.
sizeMatchingPrefab: out GameObjectÂ
The selected prefab with the closest size to the anchor's volume.
Returns boolÂ
True if a matching prefab is found, false otherwise.
|
GetTransformationMatrixMatchingAnchorPlaneRect
(
anchorInfo
, prefabBounds
, scaling
, alignment
)
|
Calculates a transformation matrix that matches the plane rectangle of the anchor.
This method calculates and returns a transformation matrix for a prefab that matches the plane rect of an anchor, by determining the local scale and pose of the prefab based on the rect.
Signature
static Matrix4x4 GetTransformationMatrixMatchingAnchorPlaneRect(MRUKAnchor anchorInfo, Bounds? prefabBounds, AnchorPrefabSpawner.ScalingMode scaling=AnchorPrefabSpawner.ScalingMode.Stretch, AnchorPrefabSpawner.AlignMode alignment=AnchorPrefabSpawner.AlignMode.Automatic) Parameters prefabBounds: Bounds?Â
The bounds of the prefab.
scaling: AnchorPrefabSpawner.ScalingModeÂ
The scaling mode to use. See AnchorPrefabSpawner.ScalingMode.
alignment: AnchorPrefabSpawner.AlignModeÂ
The alignment mode to use. See AnchorPrefabSpawner.AlignMode.
Returns Matrix4x4Â
A transformation matrix that matches the plane rectangle of the anchor.
|
GetTransformationMatrixMatchingAnchorVolume
(
anchorInfo
, matchAspectRatio
, calculateFacingDirection
, prefabBounds
, scalingMode
, alignMode
)
|
Calculates a transformation matrix that matches the volume of the anchor.
This method calculates the local scale and pose of a prefab based on the anchor's volume, and then combines these to return a transformation matrix.
Signature
static Matrix4x4 GetTransformationMatrixMatchingAnchorVolume(MRUKAnchor anchorInfo, bool matchAspectRatio, bool calculateFacingDirection, Bounds? prefabBounds, AnchorPrefabSpawner.ScalingMode scalingMode=AnchorPrefabSpawner.ScalingMode.Stretch, AnchorPrefabSpawner.AlignMode alignMode=AnchorPrefabSpawner.AlignMode.Automatic) Parameters matchAspectRatio: boolÂ
Whether to match the aspect ratio of the anchor.
calculateFacingDirection: boolÂ
Whether to calculate the facing direction of the anchor.
prefabBounds: Bounds?Â
The bounds of the prefab.
scalingMode: AnchorPrefabSpawner.ScalingModeÂ
The scaling mode to use. See AnchorPrefabSpawner.ScalingMode.
alignMode: AnchorPrefabSpawner.AlignModeÂ
The alignment mode to use. See AnchorPrefabSpawner.AlignMode.
Returns Matrix4x4Â
A transformation matrix that matches the volume of the anchor.
|
ScalePrefab
(
localScale
, scalingMode
)
|
Scales a prefab based on the specified scaling mode.
This method is used to scale a prefab when instantiating it as an anchor with a volume. If the scaling mode is UniformScaling, it scales the prefab uniformly based on the smallest axis. If the scaling mode is UniformXZScale, it scales the prefab uniformly on the X and Z axes. If the scaling mode is NoScaling, it returns a unit vector. If the scaling mode is Custom, it uses the provided custom scaling logic. If the scaling mode is Stretch, it returns the anchor's original local scale.
Signature
static Vector3 ScalePrefab(Vector3 localScale, AnchorPrefabSpawner.ScalingMode scalingMode=AnchorPrefabSpawner.ScalingMode.Stretch) Parameters localScale: Vector3Â
The local scale of the prefab.
scalingMode: AnchorPrefabSpawner.ScalingModeÂ
The scaling mode to use. See AnchorPrefabSpawner.ScalingMode.
Returns Vector3Â
The scaled local scale of the prefab.
|
ScalePrefab
(
localScale
, scalingMode
)
|
Scales a prefab based on the specified scaling mode.
This method is used to scale a prefab when instantiating it as an anchor with a PlaneRect. If the scaling mode is Stretch, it returns the original local scale. If the scaling mode is UniformScaling or UniformXZScale, it scales the prefab uniformly. If the scaling mode is NoScaling, it returns a unit vector. If the scaling mode is Custom, it uses the provided custom scaling logic.
Signature
static Vector3 ScalePrefab(Vector2 localScale, AnchorPrefabSpawner.ScalingMode scalingMode=AnchorPrefabSpawner.ScalingMode.Stretch) Parameters localScale: Vector2Â
The local scale of the prefab.
scalingMode: AnchorPrefabSpawner.ScalingModeÂ
The scaling mode to use. See AnchorPrefabSpawner.ScalingMode.
Returns Vector3Â
The scaled local scale of the prefab.
|
SelectPrefab
(
anchor
, prefabSelectionMode
, prefabs
, random
)
|
Selects a prefab based on the specified selection mode.
This method selects a prefab based on the specified selection mode. If the selection mode is Random, it selects a random prefab from the list. If the selection mode is ClosestSize, it selects the prefab with the closest size to the anchor. If the selection mode is Custom, it uses the provided custom selection logic.
Signature
static GameObject SelectPrefab(MRUKAnchor anchor, AnchorPrefabSpawner.SelectionMode prefabSelectionMode, List< GameObject > prefabs, System.Random random) Parameters prefabSelectionMode: AnchorPrefabSpawner.SelectionModeÂ
The selection mode to use. See AnchorPrefabSpawner.SelectionMode.
prefabs: List< GameObject >Â
The list of prefabs to select from.
random: System.RandomÂ
The random generator used to generate the index of the prefab to be selected
Returns GameObjectÂ
True if a prefab was selected, false otherwise.
|