
算法
文章平均质量分 94
苹果蜀黍
这个作者很懒,什么都没留下…
展开
-
草图几何约束求解
在大多数计算机辅助设计(CAD)系统中,二维草图是允许生成三维模型的基本元素。创建草图的方法通常是从一般形状开始,然后添加一组特定的约束来生成预期图形。草图约束的例子有线段长度、半径、夹角、平行等。通常,用户需要不断对草图中的线段、圆弧和样条曲线等添加相互关联的约束条件。然后,约束求解器负责更新彼此之间的几何关系,并提供预览效果供用户参考。草图的概念起源于第一个图形系统,它是在20世纪50年代中期在林肯实验室的麻省理工学院开发出来的。.........翻译 2022-08-05 11:09:12 · 4011 阅读 · 3 评论 -
大道至简 html + js 实现最朴实的小游戏俄罗斯方块
前言老实说这其实是自己写的第二个俄罗斯方块。本次的重写,除了复习一下以前自己写的代码的同时,也有一些新的考量。其中最重要的一个目的就是渲染层与逻辑层在代码层面的分离。正题先复习一下俄罗斯方块的一些概念方块先上一张效果图...原创 2020-09-02 00:22:22 · 332 阅读 · 0 评论 -
javascript 二叉树(附代码)
前言最近关注了下扫描线算法,有涉及二叉树的地方,故找了点资料,用js实现了部分功能。关于二叉树偷懒直接链接 维基百科 | 百度百科完整实现代码(function (w) { // 树总集 let rootTree; const binaryTree = (array = []) => { return new BinaryTree(array); } // 空树构造函数 const Tree = function () { // this.v原创 2020-09-05 02:01:12 · 223 阅读 · 0 评论 -
扫面线算法 javascript版
前言关于随机多边形填色,无意看到了扫描线算法,虽然目前还不能完全解决我遇到的问题。但是已经有了方向,顺便用js实现了一个demo。效果图效果还算满意,基本达到了预期的效果。一、需求所谓代码未写,需求先行。有了需求边界,才好下手。需求描述:对任意边数的多边形进行填充。(不限制凸面体与凹面体)二、分析任意数量不重复的矢量无序队列(矢量 = 点)。临近序列的两点组合成线段,首尾序列点闭合成线段。所有线段组成我们需要填充的多边形。维护一条平行于x轴的扫面线。(扫描线可以是任意直线)原创 2020-09-12 08:05:55 · 433 阅读 · 0 评论 -
基于canvas的任意图形填色——油漆桶效果
https://github.com/applelee/fast-fill原创 2019-12-16 01:40:01 · 3262 阅读 · 1 评论 -
[A*寻路]基于javascript A*寻路获取最佳路径(附带例子)
直接上代码仓库https://github.com/applelee/a-star-path关于A*算法,网上有太多的讲解,我这里就不班门弄斧了。有兴趣的小伙伴,可以去仓库下载。(注释还算比较清楚)原创 2020-08-22 23:02:50 · 910 阅读 · 0 评论