计算几何的一些代码。。。
来源:互联网 发布:js将字符串数组转json 编辑:程序博客网 时间:2024/05/16 11:53
具体作用都有注释的
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
// darkscope.cpp : Defines the entry point for the console application.// // darkscope.cpp : Defines the entry point for the console application.// #include "stdafx.h"#include #include #include #include const double eps=1e-8;const double pi=3.1415926535897;using namespace std;struct point //点{double x,y;point(){}point(double xx,double yy){x=xx;y=yy;}};struct vect //向量{double x,y;vect(){}vect(double xx,double yy){x=xx;y=yy;}vect(point a,point b){x=b.x-a.x;y=b.y-a.y;}};double dot_product(vect a,vect b)//点积{return a.x*b.x+a.y*b.y;}double cha_product(vect a,vect b)//叉积{return a.x*b.y-b.x*a.y;}bool cross(point a,point b,point c,point d)//线段ab,cd是否相交,不含边界{return cha_product(vect(a,c),vect(a,d))*cha_product(vect(b,c),vect(b,d))0?1:-1;}double square_of_polygan(vector a) //计算多边形面积,a是顺时针或者逆时针的点集{a.push_back(a[0]);double ans=0;for (int i=1;i k;k.push_back(a);k.push_back(c);k.push_back(d);double sacd=square_of_polygan(k);k.clear();k.push_back(b);k.push_back(c);k.push_back(d);double sbcd=square_of_polygan(k);point ans=point(a.x*sbcd/(sacd+sbcd)+b.x*sacd/(sacd+sbcd),a.y*sbcd/(sacd+sbcd)+b.y*sacd/(sacd+sbcd));return ans;}double angle_of_vector(vect a,vect b) //求两个向量的夹角,返回值为弧度数,如果要度数需要ans*180/pi{return acos((a.x*b.x+a.y*b.y)/(sqrt(a.x*a.x+a.y*a.y)*sqrt(b.x*b.x+b.y*b.y)));}
本文出自 “DarkScope从这里开始(..” 博客,请务必保留此出处http://darkscope.blog.51cto.com/4254649/989030
- 计算几何的一些代码。。。
- 计算几何的一些模版
- 计算几何的一些模板
- [转]一些计算几何的基础
- [计算几何]一些模型的积累
- 一些计算几何
- 计算几何ACM——一些代码整理
- 计算几何的基本代码模板
- 计算几何代码
- 关于计算几何一些算法
- 一些三维计算几何算法
- 一些常用的几何相关在线计算工具
- 基本的计算几何
- 计算几何的题目
- 计算几何的模板
- 计算几何的学习
- 计算几何的常用算法
- 计算几何的常用算法
- Fibonacci Knapsack
- 暑期书单
- Unix命令一句话解释
- 汇编指令大全【转】
- 比较两个字符串是否相等,相等输出MATCH,否则NOMATCH
- 计算几何的一些代码。。。
- 读入一个十进制数存成可直接使用的数字
- 读取数字的子程序—小于65536的无符号数
- 汇编求最小公约数
- 欧拉图的判定和求法
- GIT/GITHUB资料导航
- QT 生命游戏模拟
- QT-MYSQL连接问题( Driver not loaded)
- 机器学习–笔记1