我正在开发一个地面设计应用程序,允许用户选择预设的地面图像,并在预设的房间图像内查看它们。 我的问题是,我很难正确匹配地面图像与房间图像的透视。我尝试通过调整视点高度和倾斜度来解决问题,但是否有一种方法可以通过使用地面和房间图像的真实世界测量值来计算这些值?由于我在透视绘画方面的知识非常有限,所以如果我使用了错误的术语,请谅解。 任何帮助或建议将不胜感激。
你应该尝试找到房间结构线的消失点。有许多用于此目的的线条查找算法。 您需要找到两个消失点,分别对应地板的两个主要方向。在您的示例中,一个消失点位于所有红色线汇聚处,另一个消失点远在左侧,位于所有蓝色线的汇聚处。一旦您找到了这个点,就可以从这两个点开始建立常规平铺: 要在地板上映射纹理,您只需找到平铺后的边界矩形: 将纹理拉伸到其中: 删除多余部分并应用阴影: