文件名称:casso:Cassowary约束求解算法的Go实现
文件大小:10KB
文件格式:ZIP
更新时间:2024-05-04 13:00:56
golang cassowary layout-algorithm constraint-layout Go
卡索 casso是流行的约束求解算法的底层Go实现。 casso允许您有效地和渐进地描述一组变量中部分冲突的必需/优先约束,并针对它们寻求解决方案,该解决方案在局部错误方面更胜一筹,就像。 它广泛用于Apple的“ ”和“。 描述 在指定用户界面的许多方面时,自然会产生线性相等和不平等约束,例如要求一个窗口位于另一个窗口的左侧,要求窗格占据窗口的最左侧1/3或希望将一个对象包含在其中一个矩形(如果可能)。 专为UI应用程序设计的当前约束求解器无法有效处理联立线性方程式和不等式。 这是一个主要限制。 我们描述了Cassowary,它是一种基于对偶单纯形法的增量算法,可以有效地解决此类约束系统。 Greg J. Badros和Alan Borning撰写的论文。 有关更多信息,请在查看论文。 例子 s := casso . NewSolver () containerWidth :=
【文件预览】:
casso-master
----.gitignore(6B)
----README.md(5KB)
----solver_test.go(6KB)
----LICENSE(1KB)
----go.mod(85B)
----math.go(4KB)
----solver.go(9KB)
----error.go(516B)
----math_test.go(465B)
----go.sum(1KB)