GithubHelp home page GithubHelp logo

ouyen / -computational-geometry-algorithms Goto Github PK

View Code? Open in Web Editor NEW

This project forked from fanghao6666/-computational-geometry-algorithms

0.0 0.0 0.0 24 KB

Basic algorithm of computational geometry

C++ 100.00%

-computational-geometry-algorithms's Introduction

Computational-Geometry-Algorithms

This file is implementation of Common Common Computational Geometry Algorithms.Please please pay attention to input according to the specified data type.

个人实现的一些计算几何中常见的算法,包括点,线,多边形等;所有算法只依赖于C++标准库,不用包含任何其他第三方库,包含此头文件即可使用。使用时请注意按照规定的数据类型进行输入,目前只使用C++来实现算法,具体算法原理会陆续在Github上更新

算法目录

目前实现的算法包括点、向量、线段、直线、三角形、多边形、圆等基本计算几何模型。

一、点和向量

1、两点之间的距离

2、点到线的距离

3、点到线的投影点

4、点关于线的对称点

5、点是否在线上

6、三点是否共线

7、向量长度

8、向量标准化

9、向量点乘

10、向量叉乘

11、向量夹角

12、向量正弦、余弦、正切

13、随机生成n个点

二、直线和线段

1、线段/直线是否相交/平行

2、直线的夹角

3、一阶贝塞尔曲线插值

4、二阶贝塞尔曲线插值

5、三阶贝塞尔曲线插值

三、三角形

1、三个点是否能够组成三角形

2、点是否在三角形内部

3、点到平面的投影点

4、点到平面的距离

5、线段和平面的交点

6、计算平面的单位法向量

7、计算三角形面积

8、随机生成n条线

四、多边形

1、判断多边形顶点的凹凸性

2、判断多边形是否为凸多边形

3、计算多边形围成的面积

4、判断多边形是否是按照逆时针排列

5、判断点是否在多边形内部

6、判断线段是否在多边形内部

7、判断圆是否在多边形内部

8、寻找点集合的凸包算法

9、求简单多边形重心

10、求肯定在多边形内部的一个点

11、计算多边形的范围

五、圆

1、点和圆的关系

2、线段和圆的关系

3、直线和圆的关系

4、圆与圆的关系

-computational-geometry-algorithms's People

Contributors

fanghao6666 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.