当前位置: 首页 > news >正文

一屏展示网站如何使用wordpress主题

一屏展示网站,如何使用wordpress主题,安全网站建设公司,商业网站开发 说课games 101 作业4 题目题解作业答案 题目 Bzier 曲线是一种用于计算机图形学的参数曲线。在本次作业中#xff0c;你需要实 现 de Casteljau 算法来绘制由 4 个控制点表示的 Bzier 曲线 (当你正确实现该 算法时#xff0c;你可以支持绘制由更多点来控制的 Bzier 曲线)。 你需… games 101 作业4 题目题解作业答案 题目 Bézier 曲线是一种用于计算机图形学的参数曲线。在本次作业中你需要实 现 de Casteljau 算法来绘制由 4 个控制点表示的 Bézier 曲线 (当你正确实现该 算法时你可以支持绘制由更多点来控制的 Bézier 曲线)。 你需要修改的函数在提供的 main.cpp 文件中。 • bezier该函数实现绘制 Bézier 曲线的功能。它使用一个控制点序列和一个 OpenCVMat 对象作为输入没有返回值。它会使 t 在 0 到 1 的范围内进 行迭代并在每次迭代中使 t 增加一个微小值。对于每个需要计算的 t将 调用另一个函数 recursive_bezier然后该函数将返回在 Bézier 曲线上 t 处的点。最后将返回的点绘制在 OpenCV Mat 对象上。 • recursive_bezier该函数使用一个控制点序列和一个浮点数 t 作为输入 实现 de Casteljau 算法来返回 Bézier 曲线上对应点的坐标。 De Casteljau 算法说明如下 考虑一个 p0, p1, … pn 为控制点序列的 Bézier 曲线。首先将相邻的点连接 起来以形成线段。用 t : (1 − t) 的比例细分每个线段并找到该分割点。得到的分割点作为新的控制点序列新序列的长度会减少一。如果序列只包含一个点则返回该点并终止。否则使用新的控制点序列并 转到步骤 1。 使用 [0,1] 中的多个不同的 t 来执行上述算法你就能得到相应的 Bézier 曲 线 提升部分 实现对 Bézier 曲线的反走样。(对于一个曲线上的点不只把它对应于一个像 素你需要根据到像素中心的距离来考虑与它相邻的像素的颜色。) 题解 本次作业的难度适中用递归的方式实现n次贝塞尔曲线。 根据算法说明以及贝塞尔函数的定义实现如下算法给定若干个点和t,返回这若干个控制点构成的贝塞尔曲线中t时刻的点。 cv::Point2f recursive_bezier(const std::vectorcv::Point2f control_points, float t) {if (control_points.size() 1)return control_points[0];std::vectorcv::Point2f new_control_points;for (int i 0; i control_points.size() -1; i){cv::Point2f p t * control_points[i] (1 - t) * control_points[i 1];new_control_points.emplace_back(p);}return recursive_bezier(new_control_points,t); }然后t 从0到1步进值可自定义本代码中设置为0.001也就是一条贝塞尔由1001个点组成每个点的G通道设置为255也就是线条颜色为绿色。 void bezier(const std::vectorcv::Point2f control_points, cv::Mat window) {// TODO: Iterate through all t 0 to t 1 with small steps, and call de Casteljaus // recursive Bezier algorithm.int neighborXIndex[8] { 0,1,0,-1,-1,1,-1,1};int neighborYIndex[8] { 1,0,-1,0.1,1,-1,-1};for (double t 0.0; t 1.0; t 0.001){auto point recursive_bezier(control_points,t);window.atcv::Vec3b(point.y, point.x)[1] 255;} }提升抗锯齿 根据点的位置到所在像素中心点距离以及到相邻像素中心点的距离计算相邻像素的颜色值。可以是四邻或者八邻下面以四邻距离说明 假设当前像素Q点的颜色值为 c o l o r Q color_{Q} colorQ​ 则ABCD的颜色值分别为 c o l o r A ∣ P Q ∣ / ∣ P A ∣ ∗ c o l o r Q color_{A}|PQ|/|PA| * color_{Q} colorA​∣PQ∣/∣PA∣∗colorQ​ c o l o r B ∣ P Q ∣ / ∣ P B ∣ ∗ c o l o r Q color_{B}|PQ|/|PB| * color_{Q} colorB​∣PQ∣/∣PB∣∗colorQ​ c o l o r C ∣ P Q ∣ / ∣ P C ∣ ∗ c o l o r Q color_{C}|PQ|/|PC| * color_{Q} colorC​∣PQ∣/∣PC∣∗colorQ​ c o l o r D ∣ P Q ∣ / ∣ P D ∣ ∗ c o l o r Q color_{D}|PQ|/|PD| * color_{Q} colorD​∣PQ∣/∣PD∣∗colorQ​ 代码如下 void bezier(const std::vectorcv::Point2f control_points, cv::Mat window) {// TODO: Iterate through all t 0 to t 1 with small steps, and call de Casteljaus // recursive Bezier algorithm.int neighborXIndex[4] { 0,1,0,-1};int neighborYIndex[4] { 1,0,-1,0};for (double t 0.0; t 1.0; t 0.001){auto point recursive_bezier(control_points,t);window.atcv::Vec3b(point.y, point.x)[1] 255;int x point.x;int y point.y;cv::Point2f p1(x 0.5, y 0.5);float d1 std::sqrt(std::pow(point.x - p1.x, 2) std::pow(point.y - p1.y, 2));for (int i 0; i 4; i){cv::Point2f p(x neighborXIndex[i]*0.5,y neighborYIndex[i]*0.5);float d std::sqrt(std::pow(point.x - p.x, 2) std::pow(point.y - p.y, 2));window.atcv::Vec3b(y neighborYIndex[i], x neighborXIndex[i])[1] d1 / d * 255;}}}总结 贝塞尔函数的定义比较简单n次贝塞尔的函数的定义公式如下 B ( t ) ∑ i 0 n ( n i ) P i ( 1 − t ) n − i 1 t i B(t)\sum_{i0}^n\binom{n}{i} P_i(1-t)^{n-i_1} t^i B(t)∑i0n​(in​)Pi​(1−t)n−i1​ti 所以也可以不用递归而是通过这个公式实现N次贝塞尔函数。 一条贝塞尔打断成两端贝塞尔同时保持断点初过渡平滑可以参考博文 作业答案 本次作业的答案放在的git仓库中作业地址
http://www.zqtcl.cn/news/44636/

相关文章:

  • 西宁市建设局网站iis 发布网站 500
  • 学习网站建设的步骤瑞安建设公司网站
  • 小米网站建设书设计公司怎么开
  • 连云港建设部网站seo诊断报告怎么写
  • 怎么制作网站教程步骤濮阳网站建设在哪里
  • 集团公司网站建设策划方案百度建网站
  • 做网站自己买服务器好还是用别人的网络文化有限公司网站建设策划书
  • 无锡网站排名优化报价案例较少如何做设计公司网站
  • 网站页面关键字在哪里公司网站怎么做才高大上
  • 内涵 网站 源码网站代理服务器设置
  • 做网站的公司如何运营有原型怎么做网站
  • 网站建设的主机网站首页图片制作
  • 上软件免费下载做优化关键词
  • 西安网站建设网站哪个地区网站建设好
  • 成都市锦江区网站建设wordpress 免登录发布
  • 网站建设整个过程湛江企业网站建设
  • 摄影网站排行北京最大做网站的公司有哪些
  • 制作网页的网站网站建设交流平台
  • 冀州建设局网站中山手机建网站
  • 深圳外贸营销型网站建设罗湖做网站公司
  • 关于文化馆网站建设的材料资源网址有哪些
  • 响应式一页网站wordpress 不同面包屑
  • 沈阳淘宝网站建设哪里有专业网站建设公司
  • iis 编辑网站绑定如何做内网站的宣传栏
  • 在北京做网站制作一个月多少钱全网营销张启明
  • 网络研发工程师seo 网站标题长度
  • js 网站源码网页游戏开服表的排行榜
  • 建立个人网站用虚拟主机网站建设教程 项目式
  • 上海市开办企业一窗网上服务手机系统优化软件哪个好
  • 建设银行企业网站访问不了网站建设公司 经营范围