多边形裁剪

  • 多边形裁剪
    • Sutherland Hodgeman多边形裁剪
    • 新点的产生与旧点的保留及其二者的输出确定
      • 第一点S在不可见侧,第二点P在可见侧
      • 第一点S和第二点P都在可见侧
      • 第一点S在可见侧,第二点P在不可见侧
      • 第一点S和第二点P都在不可见侧
    • 举例
    • 缺点

多边形裁剪

Sutherland Hodgeman多边形裁剪

如果用直线裁剪算法来处理一个多边形,得到的是一堆零散的线段。
所以这里介绍Sutherland Hodgeman算法。
将多边形边界作为一个整体,每次用窗口的一条边对要裁剪的多边形和中间结果多边形进行裁剪。

新点的产生与旧点的保留及其二者的输出确定

第一点S在不可见侧,第二点P在可见侧


输出这条边线段与边界的交点I和原本就在可见侧的P。

第一点S和第二点P都在可见侧


输出原本就在可见侧的P。
(S已经输出过了)

第一点S在可见侧,第二点P在不可见侧


输出这条边线段与边界的交点I。
(S已经输出过了)

第一点S和第二点P都在不可见侧


不进行输出。

举例


旧点:1,2,3,4,5,6;

顺序 输出
1->2 不输出
2->3 a,3
3->4 4
4->5 5
5->6 b
6->1 不输出

缺点

会产生多余的线段。

计算机图形学 多边形裁剪相关推荐

  1. 计算机图形学——多边形裁剪(待改良可运行)

    用窗口的四条边的边界分别对所画多边形进行裁剪,每次裁剪后的结果都会生成一个新的多边形,再将这一多边形作为输入多边形再以裁剪窗口其他边界裁剪,最终达到裁剪多边形的目的.上述多边形裁剪对于凸多边形适用,但 ...

  2. 【Weiler-Atherton算法】 计算机图形学多边形裁剪算法

    目录 什么是多边形裁剪 前置知识 算法步骤 程序框图 代码实现 源代码: https://github.com/ricar0/Weiler-Atherton-Alogrithm/tree/master ...

  3. 计算机图形学-多边形裁剪

    Suther land-Hodgeman多边形裁剪 核心思想 将多边形作为一个整体 每次用窗口的一条边对要裁剪的多边形和中间结果多边形进行裁剪 分治思想 先用窗口的左边界对多边形进行裁剪 就会得到1 ...

  4. 计算机图形学 学习笔记(五):多边形裁剪(Suther land-Hodgeman),文字裁剪

    接上文 计算机图形学 学习笔记(四):直线裁剪算法:Cohen-Suther land,中点分割法,Liang-Barsky 光栅图形学算法 3.4 多边形裁剪 之前上一篇文章中,我们介绍了直线段的裁 ...

  5. 计算机有哪些应用领域 请举例说明,计算机图形学作业求助

    计算机图形学作业求助 计算机图形学作业题 计算机中由图形的形状参数(方程或分析表达式的系数,线段的端点坐标等)加属性参数(颜色.线型等)来表示图形称图形的参数表示:枚举出图形中所有的点称图形的点阵表示 ...

  6. 计算机图形学与相关学科的关系,哈尔滨工业2015博士招生计算机图形学与人机交互设计大纲...

    哈尔滨工业大学2015博士招生计算机图形学与人机交互设计考试大纲及参考书目 考博复习第一手复习资料及最权威的复习参考书目就是研究生院公布的考博科目考试大纲.参考书目,新东方在线整理了哈尔滨工业大学20 ...

  7. 重庆理工大学国际学院计算机图形学试题,哈尔滨理工大学-第一学期考试试题答案B卷考试.doc...

    哈尔滨理工大学-第一学期考试试题答案B卷考试 考试科目 计算机图形学 考试时间:120分钟 试卷总分100分 题 号一二三四五六总分得 分评卷教师一.选择题(在每个小题四个备选答案中选出一个正确答案, ...

  8. 计算机图形学学习报告,计算机图形学学习报告.doc

    计算机图形学学习报告 篇一:计算机图形学学习心得体会 计算机图形学学习心得体会 计算机科学与技术与技术 班 学号: 1.计算机图形学 计算机图形学(Computer Graphics,简称CG),狭义 ...

  9. 计算机图形学算法详解,计算机图形学裁剪算法详解

    <计算机图形学裁剪算法详解>由会员分享,可在线阅读,更多相关<计算机图形学裁剪算法详解(10页珍藏版)>请在人人文库网上搜索. 1.裁剪算法详解在使用计算机处理图形信息时,计算 ...

最新文章

  1. 初创企业不上云拿什么“火拼”?
  2. Python中的 __name__属性的含义和作用
  3. winform中捕获程序未处理的所有异常
  4. 推荐系统炼丹笔记:推荐算法特征交叉新方式CAN
  5. python学习day2:类与对象
  6. Jmeter-基础篇
  7. asp与php对比,个人看法 zblogasp和zblogphp的对比
  8. 【同124】LeetCode 543. Diameter of Binary Tree
  9. js常用循环遍历方法
  10. 吴琛:智慧工地——履约考勤系统的应用实践
  11. cyberduck 源代码学习记录一,编译源代码 build for window
  12. Re: 客户协作 OVER 合同谈判
  13. powershell安装sdkman
  14. vue 组件内引入外部在线js、css
  15. 基于springboot小型车队管理系统毕业设计源码
  16. Python+NetworkX画图的nx.draw_networkx(函数详解)
  17. ZOJ 3380 Patchouli's Spell Cards 概率DP
  18. 英语不好学计算机专业可以吗,英语不好学什么专业好,计算机专业好毕业吗
  19. Java解析XML数据(三)——强大的XOM之simple-xml解析
  20. lombok 1.18.10

热门文章

  1. 读Java核心技术36讲有感——谈谈对Java的理解,谈谈Exception和Error
  2. AI人工智能可以做哪些课题的毕业设计毕设
  3. 根据二叉树的先序遍历和中序遍历建立二叉树
  4. 名字中间一条线怎么弄_网名怎么加横线啊 网名中间加一条横线
  5. PGPool-II 4.2.1+PostgreSQL 13高可用
  6. 彻底了解 suid, sgid ,sticky权限
  7. autoconf使用
  8. OpenDRIVE文件格式详解
  9. Android开发——Snackbar使用详解
  10. Excel实现给加单引号,以及加逗号