一直把ccnode当做ui元素的容器使用,比如一段带下划线的文字,我会在一个ccnode中加入一个label和一个sprite,然后作为一个整体传出。

  在主界面聊天的时候遇到一个问题,一段聊天信息需要由多个不同的元素拼凑而成,而主界面只有能显示一条不超过16个字的文字信息。一开始的想法是写一个算法,从第一个元素开始遍历到最后一个元素,

累加字数,直到16个字为止,但是这个涉及到在16个字的时候元素切割和重新创建末尾元素的问题,想来想去觉得甚是复杂,再加上工期紧,觉得需要另寻通途。既然要求的是16个字,后面是多少内容不管,

于是我想到为何不直接截断取整呢?但是多元素拼接而成无法进行截断,所以跳出元素这一层,我想到我可以把所有元素放到一个ccnode中,然后对ccnode的显示区域进行裁剪,这样我可以不用考虑ccnode内部的

元素有多长,最后通过百度和好友的指点下,发现通过继承ccnode,重写visit方法可以达到效果。代码如下:

  glEnabel后一定要glDisable,其次worldPos是世界坐标系,无论ScissorNode是作为child还是parent,worldPos需要传入的是世界坐标系的坐标。

  

转载于:https://www.cnblogs.com/beyond-time-space/p/4239184.html

CCNode作为容器实现显示区域剪裁相关推荐

  1. R语言ggplot2可视化:可视化水平堆叠条形图(horizontal stacked bar plot)并在条形图中的每个分组条形区域显示区域占整体的百分比数值标签

    R语言ggplot2可视化:可视化水平堆叠条形图(horizontal stacked bar plot)并在条形图中的每个分组条形区域显示区域占整体的百分比数值标签(draw stacked bar ...

  2. VC++ 鼠标非显示区域命中测试消息WM_NCHITTEST和相关编程问题学习1

    此消息代表非显示区域命中测试:非显示区域,应该指窗口客户区以外的区域: 这个消息优先于所有其他的显示区域和非显示区域鼠标消息:其中lParam参数含有鼠标位置的x和y屏幕坐标,wParam 这里没有用 ...

  3. OpenCV Cut Image via ROI 根据兴趣区域剪裁图片

    我们在使用OpenCV时,有时候需要对现有图片剪裁,比如只需要一个小窗口中的内容,那么我们可以通过OpenCV的兴趣区域 Region of Interest (ROI) 来很轻易的实现,操作也很简单 ...

  4. [WPF]根据显示区域宽度裁剪字符串

    应用开发中经常会需要根据显示区域的宽度来决定能显示字符的个数,但受字符不同.字体不同.字号不同的影响,这个个数又无法固定.怎么办呢?这就需要我们去测量每个字符在实际显示中所占的宽度,然后和可显示宽度做 ...

  5. html 背景区域设置,HTML5 背景的显示区域实现

    background-clip 属性规定背景的绘制区域. 默认值:  border-box 继承性:  no 版本:  css3 javascript 语法:  object.style.backgr ...

  6. Google map地图限制显示区域、拖拽范围

    根据坐标限制显示区域.限制地图拖拽范围 function moveLimit(){var strictBounds = new google.maps.LatLngBounds(new google. ...

  7. 两步轻松搞定 编辑器上传图片尺寸过大 超出前台显示区域问题!

    用户在编辑器中随意上传图片,难免会遇到图片宽度超出前台显示区域,严重影响页面展示美观度.... 两步搞定方法: 1.书写在内容显示区域DIV中控制img标签最大宽度. 2.js清除用户设定宽度. 问题 ...

  8. PyQt+Opencv-python多线程显示摄像头信息至QLabel,摄像头显示区域自由拉伸尺寸

    文章目录 前言 效果 资源下载 核心代码 编程思路 Camera.py Widget.py 前言   通过PyQt与Opencv-python实现多线程显示摄像头信息至QLabel,可以同时拉伸窗口, ...

  9. 《Photoshop Lightroom4 经典教程》—第2课2.5节使用主显示区域

    本节书摘来自异步社区<Photoshop Lightroom4 经典教程>一书中的第2课2.5节使用主显示区域,作者[美]Adobe公司,更多章节内容可以访问云栖社区"异步社区& ...

  10. tablewidget字体显示不全_ios 容器内容显示原理及调整

    先发一行文字,看一下奇特之处: 09afgjkpqz汉字 这是编辑器自动加的横线 iOS,OS文本容器中都是基线对齐,所谓的基线对齐就是指无论中文字符,数字,英文字符,表情等它们在一行的时候,基线是在 ...

最新文章

  1. idea将普通目录转换为模块maven module。
  2. 在Android源码树中添加userspace I2C读写工具(i2c-util)
  3. apache httpclient 工具类_Java教程分享使用HttpClient抓取页面内容
  4. HDU2102 A计划
  5. matlab氢原子杂化轨道,网络版原子和分子结构可视化程序的开发
  6. Angular 依赖注入 useClass 的实例创建位置
  7. 微信iOS 7.0.5版本终于上线:新功能好方便!
  8. 日志文件导入到mysql_导入日志文件到mysql数据库表
  9. DeepMind的脑补AI再获新技能:看文字知场景、复杂环境、连续视频……
  10. 【开源】多多客发布 3.0.0-alpha.6,Koa+Vue+Taro最佳实践
  11. 【POJ1679】The Unique MST(非严格次小生成树)
  12. CFS之vruntime记录
  13. 网络安全及包分析实验报告
  14. 消防物联网,为逆行英雄守住第一道生命线
  15. 这7大技术博客平台,编程偏爱,程序员的你知道几个?
  16. python中ix用法_Python Pandas DataFrame.ix[ ]用法及代码示例
  17. 如何发布百度离线地图及二次开发API
  18. 计算机操作系统原理——第一章.绪论
  19. python图片截取斜四边形_python shapely.geometry.polygon任意两个四边形的IOU计算实例...
  20. 计算机网络管理云,云考试系统云平台/计算机网络管理考试时间-考试

热门文章

  1. java语言没有保留结构和联合,java选择题判断题题库.doc
  2. 【生信进阶练习1000days】day15-SRAdbV2包
  3. 合肥青少年信息学计算机竞赛试题,合肥市第三十一届青少年信息学(计算机)竞赛 小学组试题...
  4. JAVA写接口傻瓜(%)教程(五)
  5. Robot Framework (一)自动化测试框架搭建
  6. [JSOI2017]原力(分块+map(hash))
  7. 模仿iframe框架,由分隔栏动态改变左右两侧div大小———基于jQuery
  8. cocos2dx box2d使用(一)
  9. 使用screen来保存你的远程会话
  10. 动易BizIdea后台添加自定义功能