HarmonyOS RenderNode指定pivot后设置rotation,scale,结果不符合预期?

RenderNode 指定pivot后设置rotation,scale,结果不符合预期。

  1. rotation选择角度不符合预期,设置pivot并不是按照pivot给定的左边进行旋转
  2. scale指定pivot后,放大结果不符合预期
阅读 520
1 个回答

RenderNode的pivot属性的x,y代表相对于当前RenderNode的比例,而不是实际坐标值,取值是0.0\~1.0,默认值是0.5,代表RenderNode的中心,如果要绕中心转则需设置renderNode.pivot = { x: 0.5, y: 0.5}(也可以省略不设置,默认值就是0.5)

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-arkui-graphics-V5\#pivot

RenderNode的rotation的x, y, z的单位是vp(见指南),如果要旋转270度,需要转一下,如renderNode.rotation = { x: 0, y: 0, z: px2vp(270) }

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-arkui-graphics-V5\#rotation

RenderNode的scale代表缩放比例,默认值1.0,如果长款都要放大两倍,则设置renderNode.scale = { x: 2, y: 2 }

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-arkui-graphics-V5\#scale

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进