LavaUI docs

struct CatalogLayout3D

Swift

struct CatalogLayout3D

A reusable album/poster shelf that adds depth and fans neighboring items around a focused cover while keeping the unfocused catalog in one row.

Sources/LavaUI/Spatial.swift:240

Constructors

init(spacing: Float = 1.6, focusDepth: Float = 0.55, focusLift: Float = 0.08, focusScale: Float = 1.12, neighborSpread: Float = 0.28, neighborDepthStep: Float = 0.08, fanAngle: Angle3D = .degrees(10))

Not documented.

Sources/LavaUI/Spatial.swift:249

Properties

var fanAngle: Angle3D

Not documented.

Sources/LavaUI/Spatial.swift:247

var focusDepth: Float

Not documented.

Sources/LavaUI/Spatial.swift:242

var focusLift: Float

Not documented.

Sources/LavaUI/Spatial.swift:243

var focusScale: Float

Not documented.

Sources/LavaUI/Spatial.swift:244

var neighborDepthStep: Float

Not documented.

Sources/LavaUI/Spatial.swift:246

var neighborSpread: Float

Not documented.

Sources/LavaUI/Spatial.swift:245

var spacing: Float

Not documented.

Sources/LavaUI/Spatial.swift:241

Methods

static func focusedShelf(spacing: Float = 1.6, focusDepth: Float = 0.55, focusLift: Float = 0.08, focusScale: Float = 1.12, fanAngle: Angle3D = .degrees(10)) -> CatalogLayout3D

Not documented.

Sources/LavaUI/Spatial.swift:267

func pose(at index: Int, itemCount: Int, focusedIndex: Int?) -> CatalogPose3D

Not documented.

Sources/LavaUI/Spatial.swift:280

func recommendedMinimumCameraDistance(itemCount: Int, itemWidth: Float, itemHeight: Float, clearance: Float = 2) -> Float

Conservative orbit radius that keeps the camera outside this shelf.

Sources/LavaUI/Spatial.swift:305