Interface

SceneCoreEntitySizeAdapter

The sizing strategy used by SceneCoreEntity to control and read the size of an entity.

SceneCoreEntitySizeAdapterSample

@Composable
fun SceneCoreEntitySizeAdapterSample() {
    val density = LocalDensity.current
    val panelSizeAdapter =
        object : SceneCoreEntitySizeAdapter<PanelEntity> {
            override fun onLayoutSizeChanged(entity: PanelEntity, size: IntVolumeSize) {
                entity.sizeInPixels =
                    IntSize2d(
                        Meter.fromPixel(size.width.toFloat(), density).toM().toInt(),
                        Meter.fromPixel(size.height.toFloat(), density).toM().toInt(),
                    )
            }
            override fun currentSize(entity: PanelEntity): IntVolumeSize {
                return IntVolumeSize(
                    width = entity.sizeInPixels.width,
                    height = entity.sizeInPixels.height,
                    depth = 0,
                )
            }
        }
}

Last updated: