Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 查找SVG路径中的最大矩形_Algorithm_Math_Svg_Geometry - Fatal编程技术网

Algorithm 查找SVG路径中的最大矩形

Algorithm 查找SVG路径中的最大矩形,algorithm,math,svg,geometry,Algorithm,Math,Svg,Geometry,给定一个由SVG路径生成的不规则形状,如何计算可容纳在其中的最大矩形(只有水平和垂直边界)?我认为在一般情况下无法找到最大矩形。你应该更好地考虑这个问题,找到一个最大的矩形,它适合在一个网格上绘制的形状,它将给你一个很好的近似值,通过减小网格的步长,可以提高近似的精度。 在网格上,这个问题可以用O(n)来解决,其中n是网格中的单元数。我认为在一般情况下,你找不到最大的矩形。你应该更好地考虑这个问题,找到一个最大的矩形,它适合在一个网格上绘制的形状,它将给你一个很好的近似值,通过减小网格的步长,可

给定一个由SVG路径生成的不规则形状,如何计算可容纳在其中的最大矩形(只有水平和垂直边界)?

我认为在一般情况下无法找到最大矩形。你应该更好地考虑这个问题,找到一个最大的矩形,它适合在一个网格上绘制的形状,它将给你一个很好的近似值,通过减小网格的步长,可以提高近似的精度。
在网格上,这个问题可以用O(n)来解决,其中n是网格中的单元数。

我认为在一般情况下,你找不到最大的矩形。你应该更好地考虑这个问题,找到一个最大的矩形,它适合在一个网格上绘制的形状,它将给你一个很好的近似值,通过减小网格的步长,可以提高近似的精度。
在网格上,问题可以用O(n)来解决,其中n是网格中的单元数。

SVG路径由线段、三次贝塞尔路径、二次贝塞尔路径和椭圆弧组成。因此它是分段可微的。它由有限个段组成,而不是无限重复。不要笑,像这样的东西可以很容易地用“懒惰”的编程语言(如Haskell)表示,但SVG中不允许这样做。特别是,虽然SVG路径在我们看来可能像一个分形,但在数学上它不可能是一个分形。此外,常数只能是整数或IDL浮点,它们是IEEE单精度浮点数。因此,在网格点上具有所有这些数字的网格的分辨率可能被认为是大的,但它肯定是有限的

利用这些事实,我声称,一般来说,如果SVG路径包含一个区域,那么路径中包含的矩形存在一个最大的区域;还有一个易于处理的算法,可以找到(至少)一个面积最大的矩形


任何算法都需要考虑困难的情况,例如(近似)空间填充曲线,这些曲线可能有大量小但仍然“最大”的矩形。我不知道算法,所以我们可以在这里考虑如何开发一个算法。您能解决仅由线段构成的路径的问题吗?网格生成算法会有帮助吗?有没有考虑到具有相同中心和面积的矩形在一对双曲线上有它们的角?了解凸包算法有帮助吗?您是否需要称为max-min的微分方法,或者可能不需要?那么,您将如何扩展算法以允许其他类型的路径段?将这些路径段近似为多边形路径是必要的、有用的还是不必要的?

SVG路径由线段、三次贝塞尔路径、二次贝塞尔路径和椭圆弧组成。因此它是分段可微的。它由有限个段组成,而不是无限重复。不要笑,像这样的东西可以很容易地用“懒惰”的编程语言(如Haskell)表示,但SVG中不允许这样做。特别是,虽然SVG路径在我们看来可能像一个分形,但在数学上它不可能是一个分形。此外,常数只能是整数或IDL浮点,它们是IEEE单精度浮点数。因此,在网格点上具有所有这些数字的网格的分辨率可能被认为是大的,但它肯定是有限的

利用这些事实,我声称,一般来说,如果SVG路径包含一个区域,那么路径中包含的矩形存在一个最大的区域;还有一个易于处理的算法,可以找到(至少)一个面积最大的矩形


任何算法都需要考虑困难的情况,例如(近似)空间填充曲线,这些曲线可能有大量小但仍然“最大”的矩形。我不知道算法,所以我们可以在这里考虑如何开发一个算法。您能解决仅由线段构成的路径的问题吗?网格生成算法会有帮助吗?有没有考虑到具有相同中心和面积的矩形在一对双曲线上有它们的角?了解凸包算法有帮助吗?您是否需要称为max-min的微分方法,或者可能不需要?那么,您将如何扩展算法以允许其他类型的路径段?将这些路径段近似为多边形路径是必要的、有用的还是不必要的?

定义最大:面积?周长?最大单个尺寸?最大=内部面积最大的矩形。是指形状周围的边框吗?i、 一个矩形形状延伸到该形状所接触的minX、minY、maxX和maxY笛卡尔坐标系?这基本上就是“最大矩形问题”。这是否更清楚?定义最大:面积?周长?最大单个尺寸?最大=内部面积最大的矩形。是指形状周围的边框吗?i、 一个矩形形状延伸到该形状所接触的minX、minY、maxX和maxY笛卡尔坐标系?这基本上就是“最大矩形问题”。这就更清楚了吗?哇,这看起来真的很复杂。我现在正在玩raphael.js。其想法是定义一个最小尺寸的矩形(150/100)并将其平铺起来。完成后我会在这里发帖。你真的相信它能带来一个可用的算法吗?没有冒险,没有收获?:-)我要实施这个想法。这并不完美,但希望足够好。哇-这看起来真的很复杂。我现在正在玩raphael.js。其想法是定义一个最小尺寸的矩形(150/100)并将其平铺起来。完成后我会在这里发帖。你真的相信它能带来一个可用的算法吗?没有冒险,没有收获?:-)我是