文档章节

得到直线的坐标算法

lssaint
 lssaint
发布于 2015/03/23 12:55
字数 122
阅读 12
收藏 0

void GetPts(POINT OA,POINT OB,std::list<POINT> &pts)

{

int L=abs(OA.x-OB.x);

int W=abs(OA.y-OB.y);


if(W==0&&L!=0){

for(int i=1;i<L;i++)

{

POINT pt;

if(OA.x<OB.x)

{

  pt.x=i+OA.x;

}else

{

  pt.x=OA.x-i;

}

pt.y=OA.y;

pts.push_back(pt);

}

return;

}

if(W!=0&&L!=0)

{

  for(int i=1;i< L; i++)

  {

POINT pt;

if(OA.y<OB.y)

{

  pt.y=(i)*W/L+ OA.y;

}

else

{

 pt.y=OA.y-(i)*W/L;

}

if(OA.x<OB.x)

{

  pt.x=i+OA.x;

}else

{

  pt.x=OA.x-i;

}

pts.push_back(pt);

}

  return;

}

if(W!=0&&L==0)

{

  for(int i=1;i<W;i++)

{

POINT pt;

pt.x=OA.x;

if(OA.y>OB.y)

{

pt.y=OA.y-i;

}else{

   pt.y=OA.y+i;

}

pts.push_back(pt);

}

}

}


© 著作权归作者所有

共有 人打赏支持
lssaint
粉丝 4
博文 19
码字总数 14262
作品 1
程序员
[计算机图形学] 基于C#窗口的Bresenham直线扫描算法、种子填充法、扫描线填充法模拟软件设计(一)

一、首先说明: 这是啥? —— 这是利用C#FORM写的一个用来演示计算机图形学中 ①Bresenham直线扫描算法(即:连点成线);②种子填充法(即:填充多边形);③扫描线填充法 有啥用? —— ...

史迪奇2号
2017/10/09
0
0
[区块链] 密码学——椭圆曲线密码算法(ECC)

  今天在学椭圆曲线密码(Elliptic Curve Cryptography,ECC)算法,自己手里缺少介绍该算法的专业书籍,故在网上查了很多博文与书籍,但是大多数博客写的真的是。。。你懂的。。。真不愧是...

x-knight_勋爵
06/07
0
0
二维平面上判断点是否在三角形内

最近在项目中碰到的这个问题,在此记录一下。已知三角形的三个顶点坐标,判断某个点是否在三角形中(在三角形的边上,我们也视作在三角形中),本文给出了三种方法。 算法1 利用面积法,如上...

嗯哼9925
2017/11/08
0
0
使用canvas寻路最小生成树

online source 问题引入 在学习了加权无向图寻找最小生成树的算法之后,想通过可视化的方式来表示一个图的构造和最小生成树的寻路过程,就使用canvas来模拟了图的构造,连接边和加重显示最小...

xiyuyizhi
2017/11/12
0
0
直线的生成算法

在光栅显示器的荧光屏上生成一个对象,实质上是往帧缓存寄存器的相应单元中填入数据。画一条从(x1, y1)到(x2, y2)的直线,实质上是一个发现最佳逼近直线的象素序列,并填入色彩数据的过程...

嗯哼9925
2017/12/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

配置Spring的注解支持

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 配置Spring的注解支持 以上也提到了使用注解来配...

凯哥学堂
34分钟前
0
0
关于Spring Aop存在的一点问题的思考

在本人前面的文章Spring Aop原理之切点表达式解析中讲解了Spring是如何解析切点表达式的,在分析源码的时候,出现了如下将要讲述的问题,我认为是不合理的,后来本人单纯使用aspectj进行试验...

爱宝贝丶
36分钟前
0
0
JavaScript 概述

JavaScript是面向Web的编程语言。绝大多数现代网站都使用了JavaScript,并且所有的现代Web浏览器——基于桌面系统、游戏机、平板电脑和智能手机的浏览器——均包含了JavaScript解释器。这使得...

Mr_ET
今天
0
0
Java Run-Time Data Areas(Java运行时数据区/内存分配)

Java运行时数据区(内存分配) 本文转载官网 更多相关内容可查看官网 中文翻译可参考 2.5. Run-Time Data Areas The Java Virtual Machine defines various run-time data areas that are use...

lichuangnk
今天
0
0
docker learn :services docker-compose.yml

docker-compose.yml定义了服务的运行参数 version: "3" services: web: # replace username/repo:tag with your name and image details image: hub.c.163.com/dog948453219/friendlyhello d......

writeademo
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部