讨论区 老师答疑区 主题详情
花生牛奶啊
置顶 精华 老师参与 大饼老师,我在做旋转的时候,如果不将原件设置为动态面板,而是将原件设为组合,同样的尺寸同样的动作,为什么用组合做出来的旋转时会发生偏移?

https://oapxq0.axshare.com           

课时317

所有回复(1)

十分抱歉回复的比较慢,1是还没有下班只能抽空想一想,2是你这个问题看似简单,但是牵扯的东西比较多,不太好总结语言。


总结之后,回答如下:

/*建议你以后直接发RP文件给我,你上传到Axureshare,我会预览不全,并且我也看不到你的动作设置*/

 

关于旋转动作:

Axure的旋转动作其实就是控件围绕一个点(像素点)做圆周运动,打个比方,你从default元件库里面拖入了一个矩形框,矩形框的宽度和高度均为200个像素单位,矩形框的位置:X=0,Y=0,你想让矩形框做顺时针旋转,旋转类型为相对位置,锚点你选择中心。那么经过计算,这个锚点的坐标位置就是:X=100,Y=100。

所以这个矩形框在旋转的时候,给我们的视觉效果就像中心被钉在屏幕上一样。

 

 

在旋转动作中关于组合的特殊性:

组合是将多个控件组合在了一起,方便我们拖动或者达到一些效果,但是本质上还是多个控件,所以组合的锚点不固定,他会随着旋转位置的变化,动态的重新定位锚点,这也会为什么,如果旋转角度设置的不合适(非360度),组合会发生偏移。


在旋转动作中,关于动态面板或单个控件:

动态面板(在某种程度上也可以称之为单个控件或者叫集合控件),或者单个控件,他们在旋转的时候,锚点是不会发生变化的(以初始位置为准

 

问题扩展:

除了上述情况,那么在控件旋转的什么时候,还有哪些情况会发生偏移呢,

1、当出现浮点小数的时候(比如咱们前面讲的的动态时钟的案例,由于用到了随机函数,所以会出现浮点小数),

2、控件位置发生了变化,比如咱们用到了添加动作里面的移动,由于我们使用的是相对位置,也就是相对当前的位置,如果在移动的效果还没有完成之前,我们就触发了相应的动作让某个控件进行旋转,那么将会影响 该控件经旋转之后出现的坐标位置。


回复

最近活动:
创建时间:
浏览次数:1476
关注人数:0