C++ 缩放以匹配大小

C++ 缩放以匹配大小,c++,opengl,pixel,formula,rectangles,C++,Opengl,Pixel,Formula,Rectangles,我需要一个公式来缩放一个矩形,以适应更大的/更宽的矩形。我只需要担心小矩形 我仅有的给定值为: 大矩形: 宽度 高度(我认为不需要) 点(即x,y) 小矩形: 宽度(不是真正的只读,但仍取决于) 高度(只读) 比例(我需要一个公式来计算这个值) 点 值是相对于屏幕像素的 查找 据我所知,这应该是你想要的 编辑:请参见PureW答案,仅获取刻度。查找 scale = min(big.width/small.width, big.height/small.height) 据我所知,这应该是你想要的

我需要一个公式来缩放一个矩形,以适应更大的/更宽的矩形。我只需要担心小矩形

我仅有的给定值为:

大矩形:

  • 宽度
  • 高度(我认为不需要)
  • 点(即x,y)
  • 小矩形:

  • 宽度(不是真正的只读,但仍取决于)
  • 高度(只读)
  • 比例(我需要一个公式来计算这个值)
  • 值是相对于屏幕像素的

    查找

    据我所知,这应该是你想要的

    编辑:请参见PureW答案,仅获取刻度。

    查找

    scale = min(big.width/small.width, big.height/small.height)
    
    据我所知,这应该是你想要的

    编辑:请参见PureW答案,仅获取比例

    scale = min(big.width/small.width, big.height/small.height)
    
    这将为您提供最大的
    比例
    ,它仍然适合大矩形中的小矩形


    这将为您提供最大的
    比例
    ,它仍然适合大矩形中的小矩形。

    您能举个例子说明您想要什么吗?您熟悉
    max
    min
    函数吗?@Beta我正在尝试在windows窗体中实现类似的
    标签,因为我正在创建自己的ui。不,我不知道,而且我也不知道如何在公式中应用它。你能举例说明你想要什么吗?您熟悉
    max
    min
    函数吗?@Beta我正在尝试在windows窗体中实现类似的
    标签,因为我正在创建自己的ui。不,我不知道,我也不知道如何在公式中应用它。我不想改变大矩形的任何属性,只有小矩形应该根据大矩形的宽度进行调整,这就是我在那里做的。。。不过,您的解释并不透彻,因此上面部分中的“比例”是您需要在小矩形的宽度和高度上应用的乘数,以使其适合大矩形的高度或宽度(取决于比率)。这个大矩形从来没有被碰过……啊,我只是误解了你的
    点.x
    来自
    x
    。但是我只需要更改
    比例
    ,因为我已经有了另一个以小矩形为中心(调整x,y)的函数。我不想更改大矩形的任何属性,只有小矩形应该根据大矩形的宽度进行调整这就是我在那里做的。。。不过,您的解释并不透彻,因此上面部分中的“比例”是您需要在小矩形的宽度和高度上应用的乘数,以使其适合大矩形的高度或宽度(取决于比率)。这个大矩形从来没有被碰过……啊,我只是误解了你的
    点.x
    来自
    x
    。但是我只需要更改
    比例
    ,因为我已经有了另一个函数,它将小矩形居中(调整x,y)。+1正好适合我的简单问题。没想到这有多简单。但安东·罗斯的答案更努力=P+1,因为这正好符合我的简单问题。没想到这有多简单。但安东·罗斯的回答更为努力