查看源码 wxGraphicsMatrix (wx v2.4.3)
wxGraphicsMatrix
是一个仿射矩阵的本地表示。
其内容对于各个渲染器是特定的且私有的。实例是引用计数的,因此可以像往常一样进行赋值。获取有效实例的唯一方法是通过 wxGraphicsContext:createMatrix/2
或 wxGraphicsRenderer:createMatrix/2
。
此类派生自,并且可以使用以下类中的函数:
wxWidgets 文档:wxGraphicsMatrix
概要
函数
将传入的矩阵与当前矩阵连接。
通过参数指针返回矩阵的组件值。
反转矩阵。
如果变换矩阵的元素相等,则返回 true。
如果此矩阵是单位矩阵,则返回 true。
将此矩阵顺时针旋转(以弧度为单位)。
缩放此矩阵。
等效于 set(This, [])
。
将矩阵设置为相应的值(默认值为单位矩阵)。
将此矩阵应用于距离(即,
将此矩阵应用于一个点。
平移此矩阵。
类型
-type wxGraphicsMatrix() :: wx:wx_object().
函数
-spec concat(This, T) -> ok when This :: wxGraphicsMatrix(), T :: wxGraphicsMatrix().
将传入的矩阵与当前矩阵连接。
结果变换的效果是首先将 t
中的变换应用于坐标,然后将当前矩阵中的变换应用于坐标。
-spec get(This) -> Result when Result :: {A :: number(), B :: number(), C :: number(), D :: number(), Tx :: number(), Ty :: number()}, This :: wxGraphicsMatrix().
通过参数指针返回矩阵的组件值。
-spec invert(This) -> ok when This :: wxGraphicsMatrix().
反转矩阵。
-spec isEqual(This, T) -> boolean() when This :: wxGraphicsMatrix(), T :: wxGraphicsMatrix().
如果变换矩阵的元素相等,则返回 true。
-spec isIdentity(This) -> boolean() when This :: wxGraphicsMatrix().
如果此矩阵是单位矩阵,则返回 true。
-spec rotate(This, Angle) -> ok when This :: wxGraphicsMatrix(), Angle :: number().
将此矩阵顺时针旋转(以弧度为单位)。
-spec scale(This, XScale, YScale) -> ok when This :: wxGraphicsMatrix(), XScale :: number(), YScale :: number().
缩放此矩阵。
-spec set(This) -> ok when This :: wxGraphicsMatrix().
等效于 set(This, [])
。
-spec set(This, [Option]) -> ok when This :: wxGraphicsMatrix(), Option :: {a, number()} | {b, number()} | {c, number()} | {d, number()} | {tx, number()} | {ty, number()}.
将矩阵设置为相应的值(默认值为单位矩阵)。
-spec transformDistance(This) -> {Dx :: number(), Dy :: number()} when This :: wxGraphicsMatrix().
将此矩阵应用于距离(即,
执行除平移之外的所有变换)。
-spec transformPoint(This) -> {X :: number(), Y :: number()} when This :: wxGraphicsMatrix().
将此矩阵应用于一个点。
-spec translate(This, Dx, Dy) -> ok when This :: wxGraphicsMatrix(), Dx :: number(), Dy :: number().
平移此矩阵。