diff --git a/articles/2024/orthodontics.md b/articles/2024/orthodontics.md new file mode 100644 index 0000000..9600a6a --- /dev/null +++ b/articles/2024/orthodontics.md @@ -0,0 +1,10 @@ +# 正畸 + +- 校正会改变面下三分之一的外貌 + +## 流程 + +- 排齐、整平牙齿,逐渐调整牙齿位置,达到牙列的基本对齐 +- 收缝,关闭牙齿间隙,调整咬合关系,确保上下牙齿的咬合关系良好,间隙没有过大的缝隙,咬合平衡 +- 精调,对牙齿进行更精细的调整,包括微小的旋转、校正和微调,确保每颗牙齿的位置和角度都能达到理想状态 +- diff --git a/articles/2024/umi.md b/articles/2024/umi.md deleted file mode 100644 index 4d8a23e..0000000 --- a/articles/2024/umi.md +++ /dev/null @@ -1,3 +0,0 @@ -# [Umi](https://umijs.org/) - -[github]() diff --git a/articles/2024/wechat.md b/articles/2024/wechat.md deleted file mode 100644 index 8121cf9..0000000 --- a/articles/2024/wechat.md +++ /dev/null @@ -1,8 +0,0 @@ -# 微信 -> 网页开发中,很多地方会用到微信,记录一下相关过程 - -## 扫码关注 -- 先获取一个tick数据,是str -- 轮询去检查这个str对应的图像被扫码不 - - 扫码,返回openid,属于关注成功 - - 为得到openid,重复轮询check \ No newline at end of file diff --git a/articles/safe/index.md b/articles/safe/index.md index a93e4b3..9872d22 100644 --- a/articles/safe/index.md +++ b/articles/safe/index.md @@ -4,3 +4,14 @@ - [计时攻击](/articles/safe/time.attacks.md) - [OpenArk:专业的 Windows 恶意程序分析与清理工具。](github.com/BlackINT3/OpenArk) - [分析 Go 编译后文件大小的工具](github.com/Zxilly/go-size-analyzer) + +## 工具 + +- [nmap](https://nmap.org/) + - [github](https://github.com/nmap/nmap) + - [Nmap Project's Windows packet capture and transmission library ](https://github.com/nmap/npcap) + +- [TCP port scanner, spews SYN packets asynchronously, scanning entire Internet in under 5 minutes. 扫描工具](https://github.com/robertdavidgraham/masscan) + +- [tcpdump, a powerful command-line packet analyzer](https://www.tcpdump.org/) + - [github](https://github.com/the-tcpdump-group/tcpdump) diff --git a/cg/font.md b/cg/font.md index 2820c7e..513eb8b 100644 --- a/cg/font.md +++ b/cg/font.md @@ -71,6 +71,12 @@ freetype可以根据ttf等格式的font文件 提取到文字轮廓 然后根据 [FTGL is a free cross-platform Open Source C++ library that uses Freetype2 to simplify rendering fonts in OpenGL applications. FTGL supports bitmaps, pixmaps, texture maps, outlines, polygon mesh, and extruded polygon rendering modes.](https://sourceforge.net/projects/ftgl/) +### [opentype.js](https://opentype.js.org/) + +前端渲染字体 + +- [github](https://github.com/opentypejs/opentype.js/) + ## 参考 [Web 字体 font-family 该如何设置?](https://zhuanlan.zhihu.com/p/313284552) [cmap — Character to Glyph Index Mapping Table](https://learn.microsoft.com/en-us/typography/opentype/spec/cmap#encoding-records-and-encodings) diff --git a/cg/mesh/bvh.md b/cg/mesh/bvh.md new file mode 100644 index 0000000..2c480b7 --- /dev/null +++ b/cg/mesh/bvh.md @@ -0,0 +1,11 @@ +# Bounding Volume Hierarchy(BVH) + + +## [three-mesh-bvh](https://github.com/gkjohnson/three-mesh-bvh) + +### Surface Area Heuristic(SAH) + +表面积启发式算法, 是一种用于优化BVH构建过程的策略, 基于复杂度成本分析和概率论,旨在通过最小化遍历BVH时的预期成本来提高查询效率. + +SAH算法广泛应用于需要高效碰撞检测、射线相交测试等场景管理技术的领域, + diff --git a/cg/shader.md b/cg/shader.md index f9b86a6..dc5848e 100644 --- a/cg/shader.md +++ b/cg/shader.md @@ -138,6 +138,7 @@ mat3( - [Layout Qualifier (GLSL)](https://www.khronos.org/opengl/wiki/Layout_Qualifier_(GLSL)) - [Data Type (GLSL)](https://www.khronos.org/opengl/wiki/Data_Type_(GLSL)) +- [shadertop着色器](https://www.shadertoy.com/) ### WebGPU - [gpuweb](https://www.w3.org/community/gpu/) @@ -145,6 +146,10 @@ mat3( - [WebGPU Shading Language](https://gpuweb.github.io/gpuweb/wgsl/) - [WebGPU深入探索](http://www.bimant.com/blog/webgpu-deep-dive/) +- [webGPU版compute.toys is an experimental editor for WebGPU compute shaders](https://compute.toys/) + - [github](https://github.com/compute-toys/compute.toys) + - [Cross-platform compute shader engine](https://github.com/compute-toys/wgpu-compute-toy) + ### [RenderDoc](https://renderdoc.org/) [RenderDoc在线文档](https://renderdoc.org/docs/index.html) diff --git a/cg/tools/camera.md b/cg/tools/camera.md index fdd0f60..3cb3ec0 100644 --- a/cg/tools/camera.md +++ b/cg/tools/camera.md @@ -38,8 +38,40 @@ top = right / aspect = tan(theta/2) * near / aspect; // https://community.khronos.org/t/fovy-or-zoom-value/24950/2 sx = (2n * v.x)(f - n) / ((right - left)(-2fn)v.z); sy = (2n * v.y)(f - n) / ((top - bottom)(-2fn)v.z); +// perspective equal <==> orthographi camera +// persp to ortho +const distance = persp.position.distanceTo(control.target); +const halfHeight = tan * distance; +const halfWidth = halfHeight * persp.aspect; +ortho.top = halfHeight; +ortho.bottom = -halfHeight; +ortho.left = -halfWidth; +ortho.right = halfWidth; +ortho.updateProjectionMatrix(); +// ortho to persp +const frustumHeight = (orhto.top - ortho.bottom) / ortho.zoom; +const halfHeight = frustumHeight / 2; +const distance = halfHeight / tan; +persp.position.copy(orhto.position).normalize().multiplyScalar(distance); +persp.updateProjectionMatrix(); +// to orhto projection get current viewport width + ``` +求当前正交投影下的视图宽度参考three.js src\math\Matrix4.js makeOrthographic + +$$ +\begin{cases} +e_{0} = 2 \times w = 2 \times \frac{1}{right - left} \newline +e_{12} = - \frac{right + left}{w} +\end{cases} \to +\begin{cases} +right - left = \frac{2}{e_{0}} \newline +e_{12} = - \frac{right + left}{right - left} \to left = right \times \frac{e_{12} + 1}{e_{12} - 1} +\end{cases} \to right(1 - \frac{e_{12} + 1}{e_{12} - 1}) = \frac{2}{e_{0}} \to right = \frac{-2}{2_{0}} \times \frac{e_{12} - 1}{-2} += \frac{1 - e_{12}}{e_{0}} \to left = -\frac{1 + e_{12}}{e_{0}} +$$ + [CombinedCamera的实现](https://github.com/mrdoob/three.js/blob/7f43f4e6ef087cec168fea25bb53591052d5ff12/examples/js/cameras/CombinedCamera.js) ## 参考 diff --git a/dev-note/index.md b/dev-note/index.md index c9378d5..b64b9e3 100644 --- a/dev-note/index.md +++ b/dev-note/index.md @@ -1,7 +1,6 @@ # dev-note - [nodejs包管理](/web/pkg.md) -- [git](/dev-note/git.md) - [cmake](/dev-note/cmake.md) - [linux](/dev-note/linux.md) - [powershell](/dev-note/powershell.md) @@ -17,9 +16,16 @@ - [硬件配置](/dev-note/hardware.md) +## 版本控制 + +- [git](/dev-note/git.md) +- [Sourcetree simplifies how you interact with your Git repositories so you can focus on coding](https://www.atlassian.com/software/sourcetree) ## 其他资源 - [MDN--Documenting web technologies, including CSS, HTML, and JavaScript, since 2005.](https://developer.mozilla.org/en-US/docs/Web) - [Google的开发工具,面向开发者的Android](https://developer.android.google.cn/?hl=zh-cn) - [远程终端工具Mosh is a remote terminal application that supports intermittent connectivity, allows roaming, and provides speculative local echo and line editing of user keystrokes.](https://github.com/mobile-shell/mosh) + +### 工具 + diff --git a/exercises/book-info.md b/exercises/book-info.md index 9b79ce2..6065ef4 100644 --- a/exercises/book-info.md +++ b/exercises/book-info.md @@ -23,6 +23,21 @@ - [Charles Chapman Pugh《Real Mathematical Analysis》(实数学分析)](https://book.douban.com/subject/26588474/) - 很好的解释了概念或证明的本质,帮助建立直觉 +### [Steven H. Strogatz《Nonlinear dynamics and chaos: with applications to physics, biology, chemistry, and engineering》(非线性动力学与混沌)](https://book.douban.com/subject/27049323/) + +$$ +\text{如何解微分方程} x^{''} + \frac{1}{2}x^{'} + 5sin(x) = 0 \text{因为非线性,线性方法在这里不起作用,但可以将其分解为一阶方程组}, \newline +\text{定义新的变量} v= x^{'}, \text{则有} +\begin{cases} +x^{'} = v \newline +v^{'} = -\frac{1}{2}v - 5sinx(x) +\end{cases} +$$ + +然后可以选择一个合适的数值方法来求解这个一阶方程组。如在相空间中绘制轨迹,并了解系统的行为方式,在每个点上,水平方向上存在一个微分,在垂直方向上也存在一个微分,从而在相交处得到了相空间中的积分。在实际应用中,还需要考虑初始值和边界值。 + +机械练习中是找到解,带入数值验证,其实方程组不仅仅练习题,而是描述变化,运动,时间等的语言,要去理解语言背后的场景。数学的真正美妙处就是学会从全新的角度去看待问题 + ## 概率论 - [Ross《a First Course in Probability》]() diff --git a/exercises/index.md b/exercises/index.md index 799997f..4142167 100644 --- a/exercises/index.md +++ b/exercises/index.md @@ -32,6 +32,7 @@ - [图形计算器,用meijie.lmj@outlook.com登录的](https://www.desmos.com/calculator?lang=zh-CN) - [math is fun](https://www.mathsisfun.com/) - [数学乐-中文版](https://www.shuxuele.com/index.html) +- [前端数学库](http://algebrite.org/)
Geogebra开源在线工具 diff --git a/index/book-info.md b/index/book-info.md index 83b96d3..3440c0e 100644 --- a/index/book-info.md +++ b/index/book-info.md @@ -7,11 +7,15 @@ ## 公版 +- [科学直通车Explore scientific, technical, and medical research on ScienceDirect](https://www.sciencedirect.com/) + - [古登堡计划Project Gutenberg is a library of over 70,000 free eBooks](https://www.gutenberg.org/) - [国学导航](http://www.guoxue123.com/) - [漢川草廬--一個文史哲愛好者所建立的正體中文古籍網站--繁体-台湾](http://www.漢川草廬.tw/index.php) - [中國哲學書電子化計劃](https://ctext.org/zh) + + ## reading - [vulkan tutorial](https://vulkan-tutorial.com/) diff --git a/index/medicalScience.md b/index/medicalScience.md index 2696133..62a4e56 100644 --- a/index/medicalScience.md +++ b/index/medicalScience.md @@ -1,10 +1,11 @@ # 医学 -> medical science +- [医学百科--快速搜索概念](https://www.yixue.com/) - [口腔解剖图集](https://www.imaios.com/cn/e-anatomy/4/4) - [CT相关](../cg/ct.md) - [cornerstonejs](../cg/library/cornerstonejs.md) - [微笑美学](../articles/2023/smile.md) +- [正畸](../articles/2024/orthodontics.md) - [Open Health Imaging Foundation](https://ohif.org/) ## 概念 @@ -73,4 +74,20 @@ I轴向右增大,J轴向右增大,K轴向后增大。除了每个体素的 - [3DSlicer -- Coordinate systems](https://www.slicer.org/wiki/Coordinate_systems) - [VolView is an open source radiological viewer developed for clinical professionals.](https://volview.kitware.com/) - [app online](https://volview.kitware.app/) - - [github](https://github.com/Kitware/VolView) \ No newline at end of file + - [github](https://github.com/Kitware/VolView) + +### [牙科联盟](http://www.fdiworldental.org/) + +- [International Dental Journal--Official Journal of FDI World Dental Federation](https://www.sciencedirect.com/journal/international-dental-journal) + +### [美国正畸医师协会Official Journal of the American Association of Orthodontists](https://www.ajodo.org/) + +### [中华口腔医学会](https://www.cndent.com/) + +- [生理性 曲线的保持和建立——直丝弓还是 Spee 弓](https://www.cndent.com/wp-content/uploads/2019/08/2-8.pdf) +- [中国口腔医学继续教育杂志](http://www.cndent.com/%e4%b8%ad%e5%9b%bd%e5%8f%a3%e8%85%94%e5%8c%bb%e5%ad%a6%e7%bb%a7%e7%bb%ad%e6%95%99%e8%82%b2%e6%9d%82%e5%bf%97) +- [全英文版Chinese Journal of Dental Research](http://cjdr.cndent.com/index.html) + +### [国际口腔医学杂志--四川大学主办](https://www.gjkqyxzz.cn/CN/1673-5749/home.shtml) +- [Spee曲线在口腔正畸领域的应用及研究进展](https://www.gjkqyxzz.cn/article/2021/1673-5749/1673-5749-48-1-90.shtml) +- [Bolton 指数在正畸矫治中的应用分析](https://www.gjkqyxzz.cn/CN/10.3969/j.issn.1673-5749.2009.04.027) \ No newline at end of file diff --git a/web/mini.md b/web/mini.md index f4bcb2d..bc59b6a 100644 --- a/web/mini.md +++ b/web/mini.md @@ -31,6 +31,12 @@ rpx(responsive pixel): 可以根据屏幕宽度进行自适应。规定屏 ### Skyline 新增的一个Skyline渲染引擎 +### 扫码关注 +- 先获取一个tick数据,是str +- 轮询去检查这个str对应的图像被扫码不 + - 扫码,返回openid,属于关注成功 + - 为得到openid,重复轮询check + ## 支付宝小程序 ## 文档参考