小编A.D*_*ibo的帖子

Android Room 使用 Migration 更改列的类型

我没有找到我正在寻找的任何答案,所以我发送了这个问题。

我正在使用 Android 版 Room。

我有一个带有 Int 列的实体,我需要将其更改为 Double,但我不知道该怎么做。

有人知道怎么做吗?

我的问题可能很愚蠢,但我没有在 stackoverflow/任何谷歌搜索上找到任何答案。

android android-room

3
推荐指数
2
解决办法
6601
查看次数

Raytracer : 高 FOV 失真

我实际上正在实现一个 C++ 光线追踪器,但我正面临着一个关于光线追踪的经典问题。当放置高垂直 FOV 时,形状离边缘越近,变形越大。

我知道为什么会发生这种失真,但我不知道如何解决它(当然,减少 FOV 是一种选择,但我认为我的代码中有一些需要更改的地方)。我一直在浏览不同的计算论坛,但没有找到任何解决方法。

这是一个屏幕截图来说明我的问题。

球体边缘失真

我认为问题在于我投射光线的视平面实际上并不平坦,但我不知道如何解决这个问题。如果您有任何解决问题的技巧,我愿意接受建议。

我在一个面向右手的系统上。相机系统向量、方向向量和光向量被归一化。

如果你需要一些代码来检查某些东西,我会把它放在你问的部分的答案中。

射线生成代码:

        // PixelScreenX = (pixelx + 0.5) / imageWidth
        // PixelCameraX = (2 ? PixelScreenx ? 1) ?
        //      ImageAspectRatio ? tan(fov / 2)
        float x = (2 * (i + 0.5f) / (float)options.width - 1) *
                options.imageAspectRatio * options.scale;

        // PixelScreeny = (pixely + 0.5) / imageHeight
        // PixelCameraY = (1 ? 2 ? PixelScreeny) ? tan(fov / 2)
        float y = (1 - 2 * (j …
Run Code Online (Sandbox Code Playgroud)

c++ geometry raytracing

2
推荐指数
1
解决办法
1428
查看次数

StateFlow已更新但未收集

我目前正在学习新的 Android 堆栈(MVVM、compose、kotlin Flow/StateFlow),并且在调试值更新的 StateFlow 时遇到问题,但我没有从可组合项收集的迹象。

这是一个普遍的问题,但我通过自己的搜索没有找到任何解决我的问题的方法。

有人知道什么会干扰 StateFlow 吗?我让我的代码如下:

视图模型:

@HiltViewModel
class AuthViewModel @Inject constructor(
    private val navigationManager: NavigationManager,
    private val interactor: AuthInteractor
): BaseViewModel() {

    companion object {
        val TAG: String = AuthViewModel::class.java.simpleName
    }

    private val _uiState = MutableStateFlow(AuthenticationState())
    val uiState: StateFlow<AuthenticationState> = _uiState

    fun handleEvent(event: AuthenticationEvent) {
        Log.v(TAG, "new event: $event")
        when (event) {
            is AuthenticationEvent.GoToRegistering -> navigateToRegistering()
            is AuthenticationEvent.Register -> registerAccount(event)
            is AuthenticationEvent.SnackbarMessage -> showSnackBar(event.message, event.type)
        }
    }

    private fun navigateToRegistering() {
        navigationManager.navigate(NavigationDirections.Authentication.registering)
    }

    private fun …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-jetpack-compose kotlin-stateflow

0
推荐指数
1
解决办法
1920
查看次数