(清华大学版)计算机图形学第1章绪论第2章光栅图形学第3章几何造型技术第4章真实感图形学第5章OpenGL与VRML第6章附录—图形■第1章绪论※计算机图形学的研究内容※计算机图形学的发展简史※应用及研究前沿※图形设备■第2章光栅图形学※直线段的扫描转换算法※圆弧的扫描转换算法※多边形扫描转换与区域填充※字符※裁剪※反走样※消隐※练习题■第3章几何造型技术※曲线和曲面※Bezier和B样条曲线曲面※形体在计算机内的表示※求交分类※实体造型系统简介※练习题■第4章真实感图形学※颜色视觉※简单光照明模型※局部光照明模型※光透射模型※纹理及纹理映射※整体光照明模型※实时真实感图形学技术※练习题■第5章OpenGL与VRML※OpenGL※VRML■第6章附录—图形变换※数学基础※几何变换※投影变换
2023/9/30 0:01:18 3.07MB 计算机图形学 清华大学
1
前面几日我重新实现了迷宫的自动生成方法,并且添加了迷宫自动寻路方法。
有了一个独立于GUI的迷宫库,我开始迫不及待地实现三维迷宫了!下面是我在开发迷宫程序中遇到的问题。
1、怎样将迷宫类的行和列映射到真实的三维坐标中?迷宫应该用哪个参考系来描述?其实我在制作的时候为了简化,将二维迷宫的左上角与三维的原点重合,二维迷宫的右对应三维的X轴正方向,迷宫的下对应Z轴的正方向。
2、迷宫的“上、下、左、右”在三维中应该叫做什么?在确定好迷宫的位置后,我们将迷宫的上对应Z轴的负半轴,下对应Z轴的正半轴,左对应X轴的负半轴,右对应Y轴的正半轴。
3、三维点绘制顺序以及OpenGL裁剪模式造成的一些面不可见问题。
这个问题是我在编写二维迷宫没有想到的。
主要是因为二维迷宫中描述墙是用一条直线,而到了三维则是一个面。
由于在OpenGL中有裁剪模式可以选择,我使用了glFrontFace(GL_CW);//顺时针的绘制为正面glEnable(GL_CULL_FACE);//剔除不是正面的面进行设定,也就是说,所有在摄像机看来是逆时针绘制的图形都无法显示。
因此我不得不用同样的顶点绘制两个面。
下面是相关的函数:voidDrawInnerWall(Point3F&p1,Point3F&p2,Point3F&p3,Point3F&p4){glTexCoord2f(0.0f,1.0f);glVertex3fv(p1);glTexCoord2f(1.0f,1.0f);glVertex3fv(p2);glTexCoord2f(1.0f,0.0f);glVertex3fv(p3);glTexCoord2f(0.0f,0.0f);glVertex3fv(p4);}voidDrawOuterWall(Point3F&p1,Point3F&p2,Point3F&p3,Point3F&p4){glTexCoord2f(1.0f,1.0f);glVertex3fv(p1);glTexCoord2f(0.0f,1.0f);glVertex3fv(p2);glTexCoord2f(0.0f,0.0f);glVertex3fv(p3);glTexCoord2f(1.0f,0.0f);glVertex3fv(p4);}在编写这些函数的时候尤其注意纹理坐标的绘制顺序。
可以在纸上绘制一个草图。
下面是我调用的代码:if(Cell_UpWall(cell)){DrawInnerWall(p8,p7,p3,p4);DrawOuterWall(p7,p8,p4,p3);}4、怎样设置阻挡?设置阻挡的基本原则还是先检测后执行。
首先我先尝试着执行走一步,再判断这一步是不是出现了越界问题。
如果出现了越界问题,那么不执行这一步,否则执行这一步。
为了不让我们无限地靠近墙,我设定了一个gap,即摄像机必须与墙保持gap的距离。
下面是我相关的代码:boolView3D::CanGo(Maze&maze,floatstep){staticfloatgap=m_CellSize.w/8.0f;//摄像机与墙最近不能超过的间隔constPoint3F&pos=m_Camera.Pos();Point3FtryPos;if(pos.y>0&&pos.y(row-1)*m_CellSize.w);if(
2023/9/28 16:29:52 737KB opengl 游戏 摄像机
1
android裁剪和人脸识别示例,从android2.3.3系统的Gallery3D的源码中提取出来的。
2023/9/25 20:21:12 35KB android裁剪 android人脸识别
1
从本地相册选择图片裁剪,或者拍照后裁剪,实现修改头像功能。
做了兼容性处理。
详细效果:https://blog.csdn.net/gengbaolong/article/details/84668216。
2023/9/24 0:33:53 13.71MB 修改头像 裁剪图片 相册 拍照
1
Liang-Barsky剪线算法快速,破坏性实现。
它通过矩形裁剪2D线段。
这是对的改编,其简单性给我留下了深刻的印象。
API破坏性的vara=[-10,-10],b=[10,10];clip(a,b,[-5,-5,5,5]);//returns1-"clipped"console.log(a);//[-5,-5]console.log(b);//[5,5]无损vara=[-10,-10],b=[10,10];varan=a.slice(),bn=b.slice();clip(a,b,[-5,-5,5,5],an,bn);//returns1-"clipped"console.log(an);//[-5,-5]cons
2023/9/18 2:52:11 519KB algorithm geometry clipping clipping-algorithm
1
读取json文件切割图集,支持按目录批量裁剪,保留命名
2023/9/13 11:50:15 821KB python 图集裁剪
1
主要实现对遥感数据的批处理功能,可以实现如批裁剪。
2023/9/10 17:52:50 3KB IDL批处理
1
里面有就是多种数据处理工具,非常便利。
1.文本文件操作1.1征地部标准坐标导出...21.2征地部标准坐标导入...61.3线封闭...61.4点集转面...72.    数据转换...82.1       SHP转数据库...82.2       批量数据库转数据库...92.3       栅格彩色转黑白...93.    数据检查和数据信息获得...103.1       锐角检查...103.2       获得内角并判断是否凸多边形...113.3       获得线(面)两个折点方向...123.4       四至和范围获得...143.4.1获得数据的XY范围...143.4.2获得数据的经纬度范围...153.4.3四邻信息获得...153.4.4地块四至点获得...173.4.5地块四至点坐标获得...183.4.6获得相对四至(适合大比例小地块)193.4.7获得绝对四至(根据四至点坐标)...203.5       属性赋值...223.5.1比例分析...223.5.2加权平均...233.6       椭球面积计算...233.7       计算点到线的距离...243.8       道路河流依次经过的地方...244.    裁剪和合并...254.1       按属性裁剪...254.2       矢量数据批量裁剪...254.3       矢量数据批量合库...264.4       影像批量裁剪...274.5       影像批量合并...285.    MXD文档处理...295.1       MXD批量裁剪...295.2       MXD批量导出图片...305.3       mxd压缩和版本另存...315.4       mxd文档相对路径和无效数据检查...316.    制图...326.1       梯形接幅表的创建...326.2       矩形接幅表的创建...336.3       公里网或方里网制作...346.4       经纬网制作...356.5       色带制作...357.    拓扑错误处理...367.1       删除线面直线上的点...367.2       点不在线面上处理...377.3       线部分或完全重叠处理...387.4       删除完全重复的点线面处理...387.5       面线边界不重合...397.6       面缝隙处理...397.7       面重叠处理...407.8       删除线面上重复点...407.9       检查多部件要素...417.10         删除伪节点...428.    编号工具...428.1       整库更新BSM..428.2       更新BSM..438.3       字符串前补零...438.4       按图形自动编号...449.    数据处理...459.1       两个图层按重叠度赋属性...459.2       分区域消除...469.3       批量压缩数据库...479.4       批量修复几何(修复前一定备份数据)479.5       按长度分割线...489.6       线分割面保留属性...489.7       融合时字段连接...499.8       要素移动...5110.           业务相关...5110.1         上级行政区和下级行政区图形不一致处理...5110.2         修改面左上角点为第一个点...5210.3         修改面左上角点为第一个点根据点层...5310.4
2023/9/6 6:03:24 1.66MB 真好
1
iOS自定义相机界面(实现自定义裁剪框)
2023/8/28 9:39:45 80KB 相机 裁剪框
1
Java、Android实现MP4裁剪功能
2023/8/27 2:27:12 965KB 视频裁剪
1
共 227 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡