zoukankan      html  css  js  c++  java
  • matplotlib 中其他基于Affine2DBase的类

    2020-04-11 11:42:22 --Edit by yangray
    以下所有类(除了BboxTransformToMaxOnly )都直接继承于Affine2DBase

    IdentityTransform专门做高效的原地变换(变换前后不变)。
    BboxTransform 线性地将点集从一个bbox变换到另一bbox。
    BboxTransformTo 线性地将点集从单位bbox([0,0], [1,1]) 变换到指定bbox。
    BboxTransformToMaxOnly 线性地将点集从单位bbox变换到指定bbox,左上角固定为原点(0, 0)。
    BboxTransformFrom 线性地将点集从给定bbox变换到单位bbox
    ScaledTranslation 对位移量进行伸缩控制的位移变换。


    IdentityTransform(Affine2DBase):
    方法:
    • frozen(self):

        返回静态的变换矩阵的拷贝。

    • get_matrix(self):

        返回变换矩阵。

    • transform(self, points):

        返回points(点集)作原地变换的结果。(变换之后和变换之前一样)

    • transform_path(self, path):

        参数[path]: Path对象,曲线。    

        返回对曲线path作原地变换的结果。(变换前后都一样)

    • get_affine(self):

        返回本原地变换的 self。(便于链式调用)

    BboxTransform(Affine2DBase):
    方法:
    • __init__(self, boxin, boxout, **kwargs):

        参数[boxin], [boxout]: Bbox对象

        创建一个BboxTransform对象,线性地将点集从boxin变换到boxout中

    •  get_matrix(self):

         返回由boxin变换到boxout的变换矩阵,包括尺度的变换,位置的变换。

        横向尺度为 boxout的宽 / boxin的宽,纵向尺度为 boxout的高 / boxin的高。

        横向位移为boxout的左边 - bbox的左边 * 横向尺度,纵向类似。

    BboxTransformTo(Affine2DBase):
    方法:
    • __init__(self, boxout, **kwargs):

        参数[boxout]: Bbox对象

        创建一个BboxTransformTo对象,线性地将点集从单位bbox([0,0], [1,1])变换到boxout。

    • get_matrix(self):

        返回从单位bbox变换到boxout的变换矩阵。生成方式参考BboxTransform类的同一方法。

    BboxTransformToMaxOnly(BboxTransformTo):
    方法
    • get_matrix(self):

        返回从单位bbox变换到boxout的变换矩阵。生成方式参考BboxTransform类的同一方法。(选择最大的变换比例)

    
    
    BboxTransformFrom(Affine2DBase):
    方法
    • __init__(self, boxin, **kwargs):

        参数[boxin]: Bbox实例

         创建新的BboxTransformFrom,将点集从boxin变换到单位bbox([0,0], [1,1])

    • get_matrix(self):

        返回从boxin变换到单位box的变换矩阵。生成方式参考BboxTransform类的同一方法。

    ScaledTranslation(Affine2DBase):
    方法
    •  __init__(self, xt, yt, scale_trans, **kwargs):

        参数[xt], [yt]: x / y方向的位移量

         [scale_trans]: 位移的伸缩比例

         创建一个ScaledTranslation(可控位移变换)对象,x方向位移xt*scale_trans, y方向位移yt*scale_trans

    • get_matrix(self):

        返回本ScaledTranslation(可控位移变换)的变换矩阵。

        
  • 相关阅读:
    我倾向于使用发布版本进行调试,而不是使用调试版本
    常见WinDbg问题及解决方案
    在崩溃转储中查找所有可能的上下文记录
    向C/C++程序员介绍Windbg 脚本
    VS 使用技巧(1)
    Windows资源监视器软件的原理
    微架构、指令集架构与汇编语言的关系
    调试寄存器 原理与使用:DR0-DR7
    如何学习调试?
    WinDbg: 执行 SOS 扩展命令 !clrstack时报错 Access violation exception (0xC0000005)
  • 原文地址:https://www.cnblogs.com/exploer/p/12678511.html
Copyright © 2011-2022 走看看