可可西

随笔分类 -  算法思想

Cooley-Tukey FFT算法的非递归实现
摘要:一维情况 #include <iostream> #include <complex> #include <cmath> const double PI = 3.14159265358979323846; // 交换位置 void swap(std::complex<double>& a, std: 阅读全文

posted @ 2024-09-08 23:23 可可西 阅读(65) 评论(0) 推荐(0) 编辑

Mipmap与纹理过滤
摘要:为了加快渲染速度和减少纹理锯齿(Texture Aliasing or Shimmering,纹理反走样或闪烁),贴图被处理成由一系列被预先计算和优化过的图片组成的文件,这样的贴图被称为Mipmap。 使用DirectX Texture Tool(DX自带工具)预生成Mipmap Chain Ori 阅读全文

posted @ 2015-12-31 23:02 可可西 阅读(4579) 评论(0) 推荐(0) 编辑

游戏主循环(Game Loop)
摘要:游戏主循环是游戏的心跳,一般使用while循环进行主动刷新。 一次循环由获取用户输入、更新游戏状态、处理AI、播放音乐和绘制画面组成。 这些行为可以分成两类: update_game(); // 更新游戏状态(逻辑帧),一般不耗时 display_game(); // 更新显示(显示帧),耗时(场景 阅读全文

posted @ 2014-04-18 17:05 可可西 阅读(9586) 评论(1) 推荐(2) 编辑

OpenStreetMap/Google/百度/Bing瓦片地图服务(TMS)
摘要:开源与成熟商业的瓦片地图服务(TMS2 WMTS),都有如下共同的特性,基本成为了标准:(1) 坐标系:WGS84(2) 投影:墨卡托投影(Marcator,正轴等角圆柱投影)--------------------------------------------注:均为弧度。(3) 当经度范围在[-180,180],投影为正方形时,纬度范围:[-85.05113, 85.05113](4) 图片大小:256*256(5) 图片格式:jpg[有损压缩率高、不透明] png[无损、透明]OpenStreetMap 格式:png (1,0,0)(1,1,0) (1,0,1)(1,1,1)... 阅读全文

posted @ 2013-07-14 22:36 可可西 阅读(36568) 评论(5) 推荐(6) 编辑

三维模型等大长方体剖分算法实现
摘要:原始模型:网格剖分较粗的情况:网格剖分更密的情况: 阅读全文

posted @ 2012-06-28 14:23 可可西 阅读(642) 评论(4) 推荐(0) 编辑

判断多边形点串存放序列
摘要:目标:给定一个任意点串序列的多边形(可能出现自相交的情况),判断其形点的存放序列方向。注:输入的多边形点串的尾点与首点相同,即多存一个点,将首点存两遍。算法思想:(1)判断多边形形点个数,若少于4,则表明该点串无法构成多多边形。【return -2】(2)计算多边形外包围盒的宽度和高度,若其中一个为0,则表明该多边形退化成了一条线或一个点。【return -1】(3)计算多边形落在其外包围盒四条边上的顶点的索引号(left, bottom,right,up)(4)比较得到索引号中最小的索引值:hit = min{left, bottom,right,up}(5)判断从hit开始之后,(left 阅读全文

posted @ 2012-04-25 11:44 可可西 阅读(760) 评论(0) 推荐(0) 编辑

多边形面积和点串序列判断
摘要:下面讲解以上图逆时针序列三角形ABC为例,进行推导和讲解:A(x1,y1) B(x2,y2) C(x3,y3)S为三角形ABC的面积,Sm1为直角梯形AA'B'B的面积,Sm2为直角梯形BB'C'C的面积,Sn1为直角梯形AA'C'C的面积容易得知:S =-(Sm1+Sm2) +Sn1-Sm1 = (x1-x2)(y1+y2)/2 = (x1*y1+x1*y2-x2*y1-x2*y2)/2-Sm2 = (x2-x3)(y2+y3)/2 = (x2*y2+x2*y3-x3*y2-x3*y3)/2 Sn1 = (x3-x1)(y1+y3)/2 = ( 阅读全文

posted @ 2012-03-21 16:24 可可西 阅读(760) 评论(0) 推荐(0) 编辑

定比分点公式(2D/3D)
摘要:二维情况:对于线段AB,A(x1,y1)为起点,B(x2,y2)为终点,且AC/AB=t;求线段C(x,y)的坐标。x = (1-t)*x1+t*x2y = (1-t)*y1+t*y2三维情况:对于线段AB,A(x1,y1,z1)为起点,B(x2,y2,z2)为终点,且AC/AB=t;求线段C(x,y,z)的坐标。x = (1-t)*x1+t*x2y = (1-t)*y1+t*y2z = (1-t)*z1+t*z2 阅读全文

posted @ 2012-03-21 11:06 可可西 阅读(4312) 评论(0) 推荐(0) 编辑

Andrew's Monotone Chain二维凸包算法
摘要:算法复杂度为:O(nlogn) 算法描述(以上图点串为例说明): (1)输入N个点的二维点集S ={ P = (P.x,P.y)} (2)对点集S进行x值第一升序,y值第二升序排序 (3)令: P--为最小x,最小y,即为P0; P++为最大x,最大y;P+-为最大x,最小y,即为Pn-1; P-+ 阅读全文

posted @ 2012-03-17 18:27 可可西 阅读(2384) 评论(0) 推荐(0) 编辑

三维模型部件分离
摘要:将三维模型的几何上不相连的部件分离开。(使用Deep Exploration 5进行可视化)输入一个三维模型:--------------------------------------------------------------------------------------------------------------------------分离出各个部件: 阅读全文

posted @ 2012-02-19 16:22 可可西 阅读(384) 评论(0) 推荐(0) 编辑

三维模型自动提取footprint
摘要:输入三维模型:输出shp格式拓扑闭合的footprint多边形: 阅读全文

posted @ 2012-02-19 13:49 可可西 阅读(466) 评论(0) 推荐(0) 编辑

三维模型凸包提取
摘要: 阅读全文

posted @ 2012-02-10 10:35 可可西 阅读(826) 评论(2) 推荐(1) 编辑

QEM三维模型简化算法
摘要:QEM(Quadric Error Mactrics,二次误差测度)模型简化算法,具有兼顾执行效率和模型质量的优点。能在考虑颜色,纹理,拓扑等特征的条件下,对三维模型进行任意程度的简化。+++++++++++++++其关键思想是将模型中最小Q值的顶点对(Pair Contraction)进行收缩(即:将2个点收缩成1个点),不停地迭代来逐步化简模型。下图为两种类型的顶点对:模型试验结果:S97 quadric-talk another有关QEM的更多信息,请参考:http://mgarland.org/software/qslim.html 阅读全文

posted @ 2011-12-07 15:00 可可西 阅读(5835) 评论(0) 推荐(0) 编辑

可视化排序(插入/选择/冒泡/快速/归并/Shell)
摘要:大家看这个flash吧! 阅读全文

posted @ 2011-06-13 16:10 可可西 阅读(589) 评论(1) 推荐(0) 编辑

2010.11.10晚"思想火花"群-讨论笔记
摘要:“2010.11.10讨论笔记” 19:30-22:00 参加人员:宋(主讲),褚,董,陈(笔记整理) 分割线 +++ 应关注算法及其思想的形成过程 +++ 内容: (1)主要讲了四个经典排序算法(插入排序,折半插入排序,并归排序和快速排序),详细地讲述形成这些算法思考过程,以及算法的复杂度分析方法 阅读全文

posted @ 2010-11-15 11:18 可可西 阅读(390) 评论(0) 推荐(0) 编辑

导航

统计信息

点击右上角即可分享
微信分享提示