最后
小编利用空余时间整理了一份《MySQL性能调优手册》,初衷也很简单,就是希望能够帮助到大家,减轻大家的负担和节省时间。
关于这个,给大家看一份学习大纲(PDF)文件,每一个分支里面会有详细的介绍。
这里都是以图片形式展示介绍,如要下载原文件以及更多的性能调优笔记(MySQL+Tomcat+JVM)!
∣
A
⃗
∣
∗
∣
B
⃗
∣
|\vec{A}|\*|\vec{B}|
∣A
∣∗∣B
∣\*SinAB
P
Q
⃗
∗
P
A
⃗
\vec{PQ}*\vec{PA}
PQ
∗PA
叉积的一个非常重要性质是可以通过它的符号判断两矢量相互之间的顺逆时针关系:
- 若
P
Q
⃗
∗
P
A
⃗
\vec{PQ}*\vec{PA}
PQ
∗PA
0 , 则点A向量
P
Q
⃗
\vec{PQ}
PQ
的顺时针方向。
- 若
P
Q
⃗
∗
P
A
⃗
\vec{PQ}*\vec{PA}
PQ
∗PA
< 0 , 则点A向量
P
Q
⃗
\vec{PQ}
PQ
的逆时针方向。
- 若
P
Q
⃗
∗
P
A
⃗
\vec{PQ}*\vec{PA}
PQ
∗PA
= 0 , 则P与Q共线,但可能同向也可能反向
。
1.3. 向量积思路
定义:平面上的三点P1(x1,y1),P2(x2,y2),P3(x3,y3)的面积量:
S(P1,P2,P3)=|y1 y2 y3|= (x1-x3)*(y2-y3)-(y1-y3)*(x2-x3)
当P1P2P3逆时针时S为正的
,当P1P2P3顺时针时S为负的
。
令矢量的起点为A,终点为B,判断的点为C,
- 如果S(A,B,C)为正数,则C在矢量AB的左侧;
- 如果S(A,B,C)为负数,则C在矢量AB的右侧;
- 如果S(A,B,C)为0,则C在直线AB上。
2. 点集组成的环方向判断
OGC关于数据格式有规定,多边形的外环应为逆时针,内环应为顺时针。GIS相关的库包,在对数据进行空间操作的时候,也基于这个规定,将数据标准化为外环逆时针,内环顺时针之后,再进行空间计算和分析。
∑
m
=
0
n
(
x
i
∗
y
i
1
−
y
i
∗
x
i
1
)
)
\sum_{m=0}^n (x_i*y_{i+1}-y_i * x_{i+1}))
m=0∑n(xi∗yi+1−yi∗xi+1))
如果结果S大于0,说明是逆时针,如果结果S小于0,说明是顺时针。
3. 点在面判断,是否在面内
3.1 射线法
http://alienryderflex.com/polygon/
解法
:从这个点做一条射线,计算它跟多边形边界的交点个数,如果交点个数为奇数,那么点在多边形内部,否则点在多边形外。
3.2 回转数法
解法
:面中的闭合曲线关于一个点的回转数(又叫卷绕数),代表了曲线绕过该点的总次数。下面这张图动态演示了回转数的概念:图中红色曲线关于点(人所在位置)的回转数为 2。
结论
:角度和为360度,所以a在多边形内,反之,如果角度和小于360度,则不在
/\*\*
\* @description 回转数法判断点是否在多边形内部
\* @param {Object} p 待判断的点,格式:{ x: X坐标, y: Y坐标 }
\* @param {Array} poly 多边形顶点,数组成员的格式同 p
\* @return {String} 点 p 和多边形 poly 的几何关系
\*/
function windingNumber(p, poly) {
var px = p.x,
py = p.y,
sum = 0
for(var i = 0, l = poly.length, j = l - 1; i < l; j = i, i++) {
var sx = poly[i].x,
sy = poly[i].y,
tx = poly[j].x,
ty = poly[j].y
// 点与多边形顶点重合或在多边形的边上
if((sx - px) \* (px - tx) >= 0 && (sy - py) \* (py - ty) >= 0 && (px - sx) \* (ty - sy) === (py - sy) \* (tx - sx)) {
return 'on'
}
// 点与相邻顶点连线的夹角
var angle = Math.atan2(sy - py, sx - px) - Math.atan2(ty - py, tx - px)
// 确保夹角不超出取值范围(-π 到 π)
if(angle >= Math.PI) {
angle = angle - Math.PI \* 2
} else if(angle <= -Math.PI) {
angle = angle + Math.PI \* 2
}
sum += angle
}
// 计算回转数并判断点和多边形的几何关系
# 最后
本人也收藏了一份Java面试核心知识点来应付面试,借着这次机会可以送给我的读者朋友们
**目录:**
![全靠这套面试题,才让我有惊无险美团二面拿offer (面经解析)](https://img-blog.csdnimg.cn/img_convert/4d65afd22671317d174da3bf93e6a431.webp?x-oss-process=image/format,png)
Java面试核心知识点
**一共有30个专题,足够读者朋友们应付面试啦,也节省朋友们去到处搜刮资料自己整理的时间!**
![全靠这套面试题,才让我有惊无险美团二面拿offer (面经解析)](https://img-blog.csdnimg.cn/img_convert/6f0c383db40a494e641d90793ad0bf41.webp?x-oss-process=image/format,png)
Java面试核心知识点
**已经有读者朋友靠着这一份Java面试知识点指导拿到不错的offer了**
![全靠这套面试题,才让我有惊无险美团二面拿offer (面经解析)](https://img-blog.csdnimg.cn/img_convert/481a0fc7e678e6634f2b6ee3a9112766.webp?x-oss-process=image/format,png)
> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/topics/618154847)收录**
**[需要这份系统化的资料的朋友,可以点击这里获取](https://bbs.csdn.net/topics/618154847)**
并判断点和多边形的几何关系
# 最后
本人也收藏了一份Java面试核心知识点来应付面试,借着这次机会可以送给我的读者朋友们
**目录:**
[外链图片转存中...(img-qcOH0iyY-1714848708660)]
Java面试核心知识点
**一共有30个专题,足够读者朋友们应付面试啦,也节省朋友们去到处搜刮资料自己整理的时间!**
[外链图片转存中...(img-Q3qc08Fh-1714848708660)]
Java面试核心知识点
**已经有读者朋友靠着这一份Java面试知识点指导拿到不错的offer了**
[外链图片转存中...(img-RsIooxDV-1714848708660)]
> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/topics/618154847)收录**
**[需要这份系统化的资料的朋友,可以点击这里获取](https://bbs.csdn.net/topics/618154847)**