小小智慧树
「已注销」
不忘初心
展开
-
[图像处理] 图片转马赛克
准备 一张图片 安装图形库 (下载官网) 涉及到的知识 主要就是图形库的一些简单函数的应用(需要积累)部分函数说明 函数名 功能 调用方式 参数说明 getpixel 用于获取点的颜色 COLORREF getpixel(int x, int y);...原创 2018-08-21 00:19:18 · 2713 阅读 · 0 评论 -
[计算几何] (平面上)点与线段的位置 矢量法
给出点A、B的坐标, 构成线段AB, 再给出一点P的坐标, 判断点P与线段AB的位置关系如下图, 点P与AB的关系可分为5种情况(1) 点P在线段AB的顺时针方向(2) 点P在线段AB的逆时针方向(3) 点P在线段AB的反向延长线上(4) 点P在线段AB的延长线上(5) 点P在线段AB上为了更好的解决此类问题, 借助两个工具: 向量的外积(叉积)和向量的内积(...原创 2018-09-23 20:01:34 · 3153 阅读 · 6 评论 -
[计算几何] (平面上)两线段最短距离 矢量法
知识都是环环相扣的, 在阅读这编文章之前, 要求懂两个知识点1. 会求点到线段的最短距离 传送门2. 会判断点与线段位置关系 传送门如果上面两个知识点都懂, 那么就进入正题了给出点A1、A2的坐标, 构成线段A1A2, 再给出点B1,B2的坐标, 构成线段B1B2, 求线段A1A2与线段B1B2的最短距离两条线段的摆放有很多情况(1) 两线段相交成 X...原创 2018-09-24 22:33:17 · 8753 阅读 · 7 评论 -
[计算几何] (二维)两线段的交点坐标
给出点A1,A2,B1,B2的坐标, 分别构成线段A1A2, 线段B1B2, 求两线段的交点坐标 线段A1A2,B1B2如下图所示, 并建立辅助线(图片来源于<<挑战程序设计竞赛2>>)Step1: 先求出B1点到直线A1A2的距离d1, 和B2点到直线A1A2的距离d2 可根据矢量法求出(A1B1为向量, 其它一样) Ste...原创 2018-09-26 17:26:07 · 4101 阅读 · 1 评论 -
[计算几何] (二维)圆与直线的交点
给出圆心O的坐标, 和半径r, 再给出点A,B的坐标构成直线AB, 求出圆与直线AB交点的坐标如下图Step1: 首先求出圆心c在直线l 上的投影点pr的坐标可通过求解向量p1pr(p1pr的长度 * p1p2的单位向量)Step2: 计算向量p1p2的单位向量e, 再勾股定理求出base的长度, 进而求出向量baseStep3: 最后,以pr作为起点, 向正or负...原创 2018-09-26 19:10:53 · 4200 阅读 · 0 评论 -
[计算几何] 圆与圆的交点坐标
给出两圆的圆心坐标和半径, 求出两圆交点的坐标 如下图 可根据余弦定理求出角a的大小, 再根据函数atan2()可求出向量C1C2的方位角t这样一来, 我们所求的交点就是以圆心C1.c为起点, 大小为c1.r ,角度为 t+a 和 t-a 的两个向量程序代码参考#include<iostream>#include<cmath>#includ...原创 2018-09-27 00:35:57 · 6013 阅读 · 1 评论 -
[计算几何] (平面上)点到线段的最短距离 矢量法
给出点A、B的坐标, 构成线段AB, 再给出一点P的坐标, 求点P到线段AB的最短距离程序代码#include<cmath>#include<iostream>using namespace std;typedef struct node{ double x, y;}*PNODE,NODE;double getDis2(NODE a, ...原创 2018-09-22 19:37:09 · 3836 阅读 · 0 评论