一年到头的总结

重拾斗志:二战考研之路
博主在反思过去一年的颓废后,决定重新振作,为二战考研制定计划。他们意识到之前的努力相较于他人显得微不足道,决定从下周一开始,每周至少更新一次博客记录学习进程,戒掉社交软件,专注于每天12小时的复习。目标是克服懒惰,不留遗憾,争取明年成功上岸。

想了很多东西,但最后感觉写出来多少会很矫情。

又是没努力的一年,年初包括年中,自我感觉良好,8月份的时候开始莫名感到焦虑,焦虑的最后就是慢慢放弃,定下的刷题目标也在毕业的那一刻结束了。

一年很长又很短,上半年在家呆着,啥事不干就看书,总觉得时间很长,甚至于最后论文感觉也花了好长时间才死磕出来了。

下半年校外租房,前期还好,自习室出租屋两点一线日子过的不快不慢,8月份开始焦虑不安后慢慢进入三天打鱼 两天晒网的节奏中,

9月份也跟朋友聊了很多,但依旧没改变自己的生活节奏,好像已经忘记了为啥考研,年初的激情在俩月的堕落中早已磨灭掉了,

差不多11月的时候才再次踏入自习室里面,这个时候我差不多也恢复出厂设置了,浑浑噩噩的看书,就跟现在一样。

已经买好了明年的资料,今年的情况也没跟家里说,所以还会不会有下一次机会就看天了吧。

总是在放过自己,但结局的时候又想毁掉自己。

最近在已经知道没救的情况下,看了好多乱七八糟的文章,又重新燃起一丝丝斗志,也问了好多一战上岸的同学考研经验,之前没问不知道,一问才发现别人的成绩确实是一点一滴的积累下来的,每天12小时,几乎把市面上的所有资料都做完了等等,听完才发现,自己自认为前期的努力看书,对比别人的努力来说完全就是微不足道的努力。没有捷径,唯有脚踏实地的用功,今年考完之后立马投入明年的复习当中,去年开玩笑说今年考不上就remake,但现在还是想再给自己一年吧,虽然我也不确定家里会如何答复,但事已至此,今年国家线都过不了,所以除了继续努力别无选择了吧,考完之后找个时间跟家里坦白交代,又匆匆混过一年,深感对不起父母,只希望家人能再给我一次重新做人的机会。

复习之余还是要好好储备专业知识,当然一切是在时间充裕的前提下,目前计划一天12小时的复习量好像不是很允许自己扩展其他知识,但凡事都有不确定性,专业课就选408了,今年说实话还是怂了,没敢冲408,明年再不冲408感觉就更没书念了,不管前路如何吧,“幸福是奋斗出来的”。

人越是给自己留退路,越是会产生懒惰心理,我还不知道自己现在有没有退路,但我知道的一点是,明年如果还是一样的结果,大概率真的要去工地搬砖了。定个计划好了,从下周一开始,每周最少更新一次博客,也不多,撑死半个小时,记录一下一周的学习成果,不管是考研还是学习的专业知识,大致记录一下,QQ微信啥的就不玩了,水群水着水着人就没了,去年好几次都打算闭关,但一拿起手机还是忍不住水群,明年干脆一点不接触了,安安心心的闭关。写博客也是想着网上监督下自己吧,不想写所谓的日记,一天写一篇过于繁琐,并且也很难坚持下去,玩博客的没几个朋友,但还是自我监督一下吧。

总的来说,毕业后的一年看着大家各奔东西也挺感慨的,但这也都是别人拼命努力过的结果,不论是考研还是工作,大家都在努力奋斗着,只有自己还是躺在所谓的“舒适区”怡然自乐,花有重开日,人无再少年。年初跟源神也好好聊过,手里握着16K的工作但毅然决然的辞掉二战,我是很佩服的,一方面佩服的是源神找到了16K的工作,另一方面佩服的是源神追求学习的心。那个时候我以为自己也会坚持到底,但终究还是高看自己了,说来也确实惭愧,约定了好多二战的朋友,自己却早早的退出了战场。祝愿坚持到底的朋友明年能顺利上岸,也希望自己能够真正意义上奋斗一年,去年不留遗憾希望明年我能做到吧!(如果还有机会的话)。

今年注定是不顺心的一年,但总结起来就是自作孽不可活,没啥好说的,自己心里有数就好,已经推掉所有的年末聚会,安安静静的学习。

希望自己的结局不会是“自刎乌江”吧!

2020.12.24

### 实现 Canvas 逐步绘制线条动画 为了在 Canvas 上实现逐步绘制线条并带有动画效果,可以利用 `requestAnimationFrame` 方法来创建平滑的动画。以下是详细的解决方案: #### 使用 requestAnimationFrame 和时间驱动 通过计算每帧的时间间隔,动态更新线条的位置,从而模拟出逐渐绘制的效果。这种方法的核心在于控制绘图的速度以及如何根据数据源调整线条的状态。 下面是一个基于二次贝塞尔曲线的例子,展示如何使用 `quadraticCurveTo` 来实现逐步绘制功能[^1]。 ```javascript const canvas = document.getElementById('bezierCanvas'); const ctx = canvas.getContext('2d'); // 初始化变量 let t = 0; // 参数 t 控制绘制进度,范围为 [0, 1] const duration = 2000; // 动画持续时间为 2秒 function drawBezier(t) { // 清除之前的画面 ctx.clearRect(0, 0, canvas.width, canvas.height); // 定义起始点、控制点和终止点 const startPoint = { x: 50, y: 100 }; const controlPoint = { x: 200, y: 50 }; const endPoint = { x: 350, y: 100 }; // 计算当前时刻对应的贝塞尔曲线上的坐标 function getQuadraticBezierXY(start, control, end, tValue) { const oneMinusT = 1 - tValue; return { x: Math.pow(oneMinusT, 2) * start.x + 2 * oneMinusT * tValue * control.x + Math.pow(tValue, 2) * end.x, y: Math.pow(oneMinusT, 2) * start.y + 2 * oneMinusT * tValue * control.y + Math.pow(tValue, 2) * end.y }; } // 获取当前位置 const currentPos = getQuadraticBezierXY(startPoint, controlPoint, endPoint, t); // 开始新路径 ctx.beginPath(); ctx.strokeStyle = '#333'; ctx.lineWidth = 2; // 移动到起点并绘制至当前位置 ctx.moveTo(startPoint.x, startPoint.y); ctx.lineTo(currentPos.x, currentPos.y); ctx.stroke(); // 更新参数 t 并继续下一帧渲染 if (t < 1) { t += 1 / (duration / 16); // 基于帧速率调整步长 requestAnimationFrame(() => drawBezier(t)); } } // 启动动画 drawBezier(t); ``` 此代码片段展示了如何通过逐帧改变 `t` 的值,在每一帧重新计算贝塞尔曲线上的位置,并仅绘制从起点到该位置的部分。最终形成一种“逐步绘制”的视觉效果[^1]。 #### 数据驱动扩展 如果希望进一步支持更复杂的数据集,则可以通过数组存储多个关键点及其对应属性(如颜色变化),并通过循环迭代这些节点完成整个图形构建过程。例如定义如下结构: ```json [ {"type": "move", "x": 50, "y": 100}, {"type": "curve", "controlX": 200, "controlY": 50, "endX": 350, "endY": 100} ] ``` 随后遍历此类配置文件即可生成任意复杂的轨迹。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值