lufy's legend

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 13101|回复: 11
打印 上一主题 下一主题

无法设置中心点?

[复制链接]

6

主题

0

好友

106

积分

士兵

Rank: 1

跳转到指定楼层
楼主
发表于 2014-7-7 17:59:07 |只看该作者 |倒序浏览
能增加这个属性吗?虽然FLASH也没有.不过有IED可以在创作的时候设置啊..如果为了中心点这个功能去嵌套一层LSprite好像不太划算呢!或者说如果只能使用这种方式去实现的话,也会导致多写一些代码呢..所以能够在引擎中原生支持这个属性吗?在旋转和移动到某个特定点时非常有用呢...

顺便.希望增加getChild()和getChildByName两个方式.现在好像只有getChildAt()呢...
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

沙发
发表于 2014-7-7 22:12:29 |只看该作者
感谢建议,LSprite其实是可以设置旋转中心的,虽然我并不推荐这么做
直接调用一下getRotateXY()函数,可以将旋转中心设置在对象中心
另外也可以直接设置rotatex和rotatey属性

getChildByName我知道,getChild()是指什么?
不回答与技术和引擎不相关的问题
回复

使用道具 举报

6

主题

0

好友

106

积分

士兵

Rank: 1

板凳
发表于 2014-7-8 09:21:05 |只看该作者
汗..我在API里面没找到getRotateXY和rotatex,rotatey属性啊..是在哪个类下面啊?我也了解如果改变了中心点.坐标和宽度什么的都需要重新计算定位..不过这的确是个正常的需求呢.相信很多人都会碰到需要围绕中心点旋转的需求吧!~

  1. var _bg = new LSprite();
  2. var _hero = new LSprite();
  3. var _effect = new LSprite();
  4. var _title = new LSprite();
  5. addChild(_bg);
  6. addChild(_hero);
  7. addChild(_effect);
  8. addChild(_title);

  9. //以上层级如果嵌套太多,或者某些操作在未知的情况下移除了某个层,那么索引就乱掉了.这时候想要移除或获取某个存在的LSprite或其它对象时,使用getChildAt(index)就不可靠了.
  10. //希望使用以下方式:
  11. removeChild(getChild(_title));//从对象获取,这样很方便.当然声明对象时肯定要注意作用域了!这是开发者应该注意的问题!
  12. //而不是:
  13. removeChild(getChildAt(3));//假设索引是从0开始,我还没研究这个索引值!这里我移除了_title!
复制代码
回复

使用道具 举报

6

主题

0

好友

106

积分

士兵

Rank: 1

地板
发表于 2014-7-8 09:24:38 |只看该作者
呵呵..我是AS3转过来玩的.我当然知道JS里面移除对象可以直接移除的.不过getChild这种写法其实是很顺手的.所以希望有而已..这样可以考虑用AS3的代码编辑器写代码了.并且经过很少的改动就能移植了.这也是个不错的方式呢!~所以希望能够内置进引擎.不用自己特别去扩展!~!~谢谢!~!~
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

5#
发表于 2014-7-8 11:23:54 |只看该作者
zijiguang 发表于 2014-7-8 09:24
呵呵..我是AS3转过来玩的.我当然知道JS里面移除对象可以直接移除的.不过getChild这种写法其实是很顺手的.所 ...
  1. removeChild(getChild(_title));
复制代码
直接下面这样写不行吗
  1. removeChild(_title);
复制代码
为什么要加上一层getChild呢?
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

6#
发表于 2014-7-8 11:25:16 |只看该作者
zijiguang 发表于 2014-7-8 09:21
汗..我在API里面没找到getRotateXY和rotatex,rotatey属性啊..是在哪个类下面啊?我也了解如果改变了中心点. ...

getRotateXY和rotatex,rotatey属性
这些都是我并不太推荐的写法,所以api中没有写
都是LSprite的属性
我还是建议你自己写个类,直接继承LSprite,然后中心的设置等,可以在自己的类里面写
完善了这个类之后,你用的时候就方便了
不回答与技术和引擎不相关的问题
回复

使用道具 举报

6

主题

0

好友

106

积分

士兵

Rank: 1

7#
发表于 2014-7-8 11:27:06 |只看该作者
lufy 发表于 2014-7-8 11:23
直接下面这样写不行吗为什么要加上一层getChild呢?

顺手而已...因为是AS3的语法啊..这样可以使用现有的习惯的编辑器啊.还有很多代码提示呢!~
而且这样的项目可以在AS和JS中间无缝切换也不错啊..呵呵.多一种方式多一种选择了!~
回复

使用道具 举报

6

主题

0

好友

106

积分

士兵

Rank: 1

8#
发表于 2014-7-8 11:28:55 |只看该作者
lufy 发表于 2014-7-8 11:25
getRotateXY和rotatex,rotatey属性
这些都是我并不太推荐的写法,所以api中没有写
都是LSprite的属性

呵呵..希望增加这个功能吧..当然至少也限制在物理中心就行啊..这样就没必要为了达到以中心点旋转这个功能还要单独自己去嵌套一层对象,引擎内嵌套肯定比在外面手动做这个事情来得方便啊...
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

9#
发表于 2014-7-8 11:34:23 |只看该作者
zijiguang 发表于 2014-7-8 11:27
顺手而已...因为是AS3的语法啊..这样可以使用现有的习惯的编辑器啊.还有很多代码提示呢!~
而且这样的项 ...

无缝切换的话,就不应该有getChild吧,因为AS中也不存在这个方法啊
不回答与技术和引擎不相关的问题
回复

使用道具 举报

37

主题

8

好友

9312

积分

诸侯王

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

10#
发表于 2014-7-8 11:35:51 |只看该作者
zijiguang 发表于 2014-7-8 11:28
呵呵..希望增加这个功能吧..当然至少也限制在物理中心就行啊..这样就没必要为了达到以中心点旋转这个功能 ...

嗯,目前的话,你可以使用rotatex,rotatey试一下
以后扩展可能会增加更好的方法
不回答与技术和引擎不相关的问题
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

防止垃圾广告,请填写任意字符

Archiver|lufy's legend

GMT+8, 2024-5-3 08:35 , Processed in 0.049135 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部