2020-04-10 23:31:13 -- Edit by yangray
BlendedGenericTransform是Transform的子类,支持在x / y方向上使用不同的变换。(博主翻译为:混合变换)
CompositeGenericTransform是Transform的子类,支持一次作两个变换(连续的)。(博主自译:复合变换)
BlendedGenericTransform(Transform):
方法:
  • __init__(self, x_transform, y_transform, **kwargs):

    参数[x_transform], [y_transform]: Transform对象,x / y方向的变换。

    初始化本变换,x方向用x_transform, y方向用y_transform。

  • contains_branch_seperately(self, transform):

    参数[transform]: Transform实例

     返回transform是否是本混合变换中x_transform / y_transform的子类。返回值形如(True, False)

  •  depth(self):  @property修饰器

    返回[x_transform], [y_transform]的最大深度(具体是啥不知道)

  • contains_branch(self, other):

    返回False。(两个不同类的变换不可能包含同一个子孙类)

  •  _get_is_affine(self), _get_has_inverse(self):

    返回 x 和 y 方向的变换是否都是仿射变换 / 是否都拥有反转方法。(x, y都有为True,其他情况都为False)

  • frozen(self):

    返回静态的元组形式的 x 和 y 方向的变换矩阵。(若x方向变换和y方向变换都是Affine2DBase的子类,则使用BlendedAffine2D返回;其他清况使用                BlendedGenericTransform)

  •  transform_non_affine(self, points):

    参数[points]: 点集

    返回仅对points作 x 和 y 方向变换的 非仿射变换部分 的结果。

  • inverted(self):

    返回x_transform和y_transform使用各自的反转方法反转之后 再初始化的 新BlendedGenericTransform(混合变换)对象。

  • get_affine(self):
    返回x_transform和y_transform中的仿射矩阵。(相同则返回一个结果)

CompositeGenericTransform(Transform): 
方法:
  • __init__(self, a, b, **kwargs):

    参数 [a], [b]:Transform对象

    初始化复合变换,并将a, b存为类属性。

  •  frozen(self):

    返回静态的元组形式的 a 和 b 的变换矩阵。(若变换a和b都是Affine2D的子类,则用CompositeAffine2D返回;其他情况用CompositeGenericTransform

  • _invalidate_internal(self, value, invalidating_node):

    参数 [value]: 无效化的目标,可选 INVALID_AFFINE,INVALID_NON_AFFINE 或INVALID(INVALID_NON_AFFINE | INVALID_AFFINE),分别为仿射部分,非仿射部分,全部       [invalidating_node]:需要无效化的结点(对象)

    某些特殊情况下当仅对仿射部分的无效化需要扩展到非仿射部分时使用。特殊情况为变换b为非仿射并且 变换a也是非仿射变换 或 变换a已经开启无效化。

  • _iter_break_from_left_to_right(self):

  ·  (不懂)

  • depth(self):
     返回变化a和b的深度之和(不知道啥意思)
  • _get_is_affine(self), _get_is_separable(self):

    返回是否 变换a和b都为仿射变化 /  都为可分离的(混合变换)。(ab都满足才为True)

  • transform_affine(self, points), transform_non_affine(self, points):

    参数[points]: 点集

    返回对points仅作本复合变换中的仿射部分 / 非仿射部分的结果

  • transform_path_non_affine(self, path):

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

    返回对path执行本复合变换中非仿射部分的结果。

  • get_affine(self):

    返回本复合变换中仿射部分的矩阵。(若变换b为非仿射,则返回b的仿射矩阵(False);否则变化b和变换a的仿射矩阵的点积)。

  • inverted(self):

    返回变换a和b使用各自的反转方法反转之后 再初始化的 新CompositeGenericTransform(复合变换)对象。

  •  _get_has_inverse(self):
    返回变换a和b是否都有反转方法。(都有为True)

matplotlib BlendedGenericTransform(混合变换)和CompositeGenericTransform(复合变换)的更多相关文章

  1. 幂等性是数学中的一个概念,表达的是N次变换与1次变换的结果相同

    幂等性是数学中的一个概念,表达的是N次变换与1次变换的结果相同

  2. 常用函数的DTFT变换对和z变换对

    直接从书上抓图的,为以后查表方便 1.DTFT 2.z变换对

  3. 离散傅立叶变换与快速傅立叶变换(DFT与FFT)

    自从去年下半年接触三维重构以来,听得最多的词就是傅立叶变换,后来了解到这个变换在图像处理里面也是重点中的重点. 本身自己基于高数知识的理解是傅立叶变换是将一个函数变为一堆正余弦函数的和的变换.而图像处 ...

  4. Arnold变换(猫脸变换)

    Arnold变换是Arnold在遍历理论研究中提出的一种变换.由于Arnold本人最初对一张猫的图片进行了此种变换,因此它又被称为猫脸变换.Arnold变换可以对图像进行置乱,使得原本有意义的图像变成 ...

  5. 直流-直流(DC-DC)变换电路_BUCK&BOOST变换电路

    1. 直流—直流变换器通过对电力电子器件的通断控制,将直流电压断续地加到负载上,通过改变占空比改变输出电压平均值. BUCK线路原理图如上,其中Q管/MOS作为开关管,驱动电压一般为PWM. 当开关管 ...

  6. [学习一个] Matlab GUI 学习笔记 Ⅰ

    Matlab GUI 学习笔记 Ⅰ 1. Foreword Matlab 是严格意义上的编程语言吗?曾经有人告诉我他是通过 Matlab 学会了面对对象编程,我是不信的,但这依然不妨碍它在特殊领域的强 ...

  7. 基础图像处理之混合空间增强——(Java:拉普拉斯锐化、Sobel边缘检测、均值滤波、伽马变换)

    相信看过冈萨雷斯第三版数字图像处理的童鞋都知道,里面涉及到了很多的基础图像处理的算法,今天,就专门借用其中一个混合空间增强的案例,来将常见的几种图像处理算法集合起来,看能发生什么样的化学反应 首先,通 ...

  8. iOS 混合变换旋转 CGAffineTransform 的使用

    在ios 中, Core Graphics 提供了一系列的函数可以在一个变换的基础上做深层次的变换,如果做一个既要缩放又要旋转的变换,以下的方法比较实用. CGAffineTransformScale ...

  9. iOS 混合变换旋转 CGAffineTransform

    在ios 中, Core Graphics 提供了一系列的函数可以在一个变换的基础上做深层次的变换,如果做一个既要缩放又要旋转的变换,以下的方法比较实用. CGAffineTransformScale ...

随机推荐

  1. angular http 节流

    有时候点列表但是由于查询问题,后端返回数据的速度很慢,导致回来的顺序错乱,后端解决不了,前端来 在jq年代 像标志位 防抖 节流等 在angular里使用了rxjs //错误示范 getIntelli ...

  2. 保姆级教程!手把手教你使用Longhorn管理云原生分布式SQL数据库!

    作者简介 Jimmy Guerrero,在开发者关系团队和开源社区拥有20多年的经验.他目前领导YugabyteDB的社区和市场团队. 本文来自Rancher Labs Longhorn是Kubern ...

  3. Cisco 模拟配置

    本次模拟:采用Cisco Packet Tracer 软件,进行cisco网络设备的模拟.可以实现CLI界面命令配置,同实际交换机一样. 1.同一VLAN 可以互相访问,不同VLAN 不能访问 PC0 ...

  4. spring单例bean是线程安全的吗?

    如果在你不定义成员变量的情况下,spring默认是线程安全的 否则,设置scope="prototype"

  5. python-pathlib

    2019-12-12 04:27:17 我们知道在不同的操作系统中文件路径的组成方式是不同的,因此在python中关于路径的问题以往我们通常采用os.path.join来进行路径的字符串级别的串联,通 ...

  6. 利用 MinIO 轻松搭建静态资源服务

    目录 1 引言 2 MinIO 简介 3 MinIO 运行与静态资源使用 3.1 MinIO 获取 3.2 MinIO 启动与运行 3.2.1 前台简单启动 3.2.2 后台指定参数运行 3.2.3 ...

  7. uni-app实现文件上传(h5方式)

    1.嵌入H5页面,需要采用web-view标签,如下: <web-view src="/hybrid/html/index.html" @message="hand ...

  8. Android之练习MVVM+DataBinding框架模式

    最近简单学习了MVVM框架,记录一下. 结果演示: 分析其功能在不同框架下的构成: 无框架 可以明显感受到在无框架下,虽然一个单独的Activity即可实现功能,但其负担过重,代码复查时繁琐,一旦需要 ...

  9. 逻辑回归和sigmoid函数分类

    逻辑回归和sigmoid函数分类:容易欠拟合,分类精度不高,计算代价小,易于理解和实现 sigmoid函数与阶跃函数的区别在于:阶跃函数从0到1的跳跃在sigmoid函数中是一个逐渐的变化,而不是突变 ...

  10. 2020.4.4号全国疫情哀悼日网页变灰色前端是如何实现的?-pink老师

    今天是4.4疫情哀悼日,纪念疫情期间牺牲的烈士和逝世同胞,因此大部分网站颜色都变灰色了,我们前端是如何实现的呢? 核心原理,使用css3的滤镜效果即可,filter grayscale 将整个界面变为 ...