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

网络规划设计师教程第二版 pdf信阳做网站优化

网络规划设计师教程第二版 pdf,信阳做网站优化,微信公众号怎么引流推广,线上教育实现原理#xff1a; 共用一个texture、material、渲染状态等。紧通过修改vertex、uvs、indexes数据即可实现任意切割功能。 一、线段分割多边形#xff0c;并分散多边形 线段分割多边形 已知多边形points#xff0c;线段sp、ep。线段分割多边形得到两个多边形。 publi… 实现原理 共用一个texture、material、渲染状态等。紧通过修改vertex、uvs、indexes数据即可实现任意切割功能。 一、线段分割多边形并分散多边形 线段分割多边形 已知多边形points线段sp、ep。线段分割多边形得到两个多边形。 public splitPolygon(points: cc.Vec2[],sp: cc.Vec2,ep: cc.Vec2): cc.Vec2[][] {console.log(points);let intersectCount 0;const polygon1 [];const polygon2 [];for (let i 0; i points.length; i) {const p1 points[i];const p2 points[(i 1) % points.length];this.convertToInt([p1, p2]);if (intersectCount 0) {polygon1.push(p1);} else if (intersectCount 1) {polygon2.push(p1);} else if (intersectCount 2) {polygon1.push(p1);}const point segmentIntersect(sp, ep, p1, p2);if (point ! null) {this.convertToInt([point]);polygon1.push(point);polygon2.push(point);intersectCount;}}if (intersectCount 2) {return [polygon1, polygon2];}return [polygon1];} 获得多边形数组创建成sprite  //分割多边形splitSprites(sprites: CustomSprite[]): void {for (let i 0; i sprites.length; i) {console.log(第, i, 开始分割);const baseSprite sprites[i];const points baseSprite.getPolygon();const { sp, ep } this.getLocalTouchEndPoint(baseSprite.node);const newPolygons this.splitPolygon(points, sp, ep);newPolygons.forEach((polygon, i) {if (i 0) {baseSprite.setPolygon(polygon);} else {const node new cc.Node();const sprite node.addComponent(CustomSprite);sprite.texture2D baseSprite.texture2D;node.parent baseSprite.node.parent;node.position baseSprite.node.position;sprite.setPolygon(polygon);this.customSprites.push(sprite);console.log(添加新的纹理);this.isDisperse true;}});}} 以线段为边界和几何中心点位置把多边形分散 //根据几何中心点拿到直线法向量分离disperseAllSprite(): void {if (!this.isDisperse) return;const { p1, p2 } this.getGraphic();this.customSprites.forEach((sprite, i) {const polygon sprite.polygon;const centerP calculatePolygonGeometryCenter(polygon);const wp sprite.node.convertToWorldSpaceAR(centerP);const np this.graphic.node.convertToNodeSpaceAR(wp);const pIntersect pointLineNormal(np, p1, p2);const normal pIntersect.normalize();sprite.node.x normal.x * this.getDisperse();sprite.node.y normal.y * this.getDisperse();sprite.setVertsDirty();// this.printPolygon(polygon);});} 二、Assembler自定义vertex数据、uv数据、indexes数据 第四篇实践2 《使用MeshRender 实现图片任意切割功能》
http://www.yutouwan.com/news/174530/

相关文章:

  • 网站建设需要步骤营销型网站制作价格
  • 网站个性化设计山西制作网站
  • h5页面网站模板用科讯cms做网站的步骤
  • 做宠物商品的网站网站制作公司网站建设公司
  • 深圳网站优化哪家好怎么搭建app
  • 网站开发毕业设计说明书范文品牌推广方案范文
  • nanopi neo做网站网站数据库怎么配置
  • 自贡网站开发杭州最好的工业设计公司
  • 网站友情链接检测使用dw设计个人简历网页模板
  • 国外网站如何做推广个人建设网站需要什么证件吗
  • 泰州网站建设优化网站怎么备案在哪里
  • 东莞网站制作公司是什么好听好记的域名
  • net大规模网站开发视频网页和网站区别
  • 已备案网站更换域名重庆网站推广什么
  • 河北省住房城乡建设局网站网站建设需求调研计划表
  • 如何做免费的网站微信小程序上线流程
  • wordpress制作官方网站网站建设怎么收费
  • 网站制作包括数据库吗免费学高中课程的软件
  • 专业外贸网站制作wordpress手机访问不了
  • 以前有个自助建设网站wordpress 3d旋转
  • 当地信息网站建设资质坑梓网站建设价格
  • 做知识产权服务的网站十大软件下载软件大全
  • 网站log文件示例电商网站定制
  • 建设网站需要花多少钱搜索引擎优化的工作流程是什么?
  • wordpress屏蔽谷歌蜘蛛成都网站优化公司
  • 网站建设规划文档昆明做网站找天度
  • 学校网站建设工作内容深圳创业贷款条件申请及流程
  • 手机建站平台可上传自己视频用dw做网站结构图
  • 公司网站建设总结深圳设计网站速成班
  • 网站建设从化万能浏览器手机版