python-如何解决“ TraitError:…实例的’input’特性是’只读’.”
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-如何解决“ TraitError:…实例的’input’特性是’只读’.”,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1569字,纯文字阅读大概需要3分钟。
内容图文
![python-如何解决“ TraitError:…实例的’input’特性是’只读’.”](/upload/InfoBanner/zyjiaocheng/664/0f3dce9359bb42e3ae2186b43e16bea6.jpg)
与vtk的原始Python API相比,我一直更喜欢pythonic tvtk,但是使用从MacPorts获得的最新版本,我遇到了基本问题不再起作用的问题.以下代码段摘自tvtv documentation:
from tvtk.api import tvtk
cs = tvtk.ConeSource()
cs.resolution = 36
m = tvtk.PolyDataMapper()
m.input = cs.output # <== fails here
a = tvtk.Actor()
a.mapper = m
p = a.property
p.representation = 'w'
print p.representation
每次初始化“输入”特征时,都会出现类似
TraitError: The 'input' trait of a PolyDataMapper instance is 'read only'.
我发现了许多类似的问题,错误报告等,但它们都指向与VTK 6(SetInputData和SetInputConnection而不是SetInput)有关的更改,而我有should be supported in Mayavi 4.4.2:
vtk @6.3.0_0+python27 (active)
py27-traits @4.5.0_0 (active)
py27-traitsui @5.0.0_0 (active)
py27-apptools @4.3.0_0 (active)
py27-envisage @4.4.0_0 (active)
py27-pyface @5.0.0_0+pyqt4 (active)
py27-mayavi @4.4.3_0 (active)
PolyDataMapper具有以下输入特征:
'input': <traits.traits.CTrait at 0x11b23a260>,
'input_algorithm': <traits.traits.CTrait at 0x119516520>,
'input_as_data_set': <traits.traits.CTrait at 0x11b230470>,
'input_connection': <traits.traits.CTrait at 0x119516310>,
'input_executive': <traits.traits.CTrait at 0x1195165d0>,
'input_information': <traits.traits.CTrait at 0x119516680>,
解决方法:
Mayavi支持VTK 5.10和VTK 6.x,它们内部具有用于配置到管道的不同API. tvtk软件包具有一个公共API,该API支持两个版本以实现可移植性.
变更:
m.input = cs.output # <== fails here
至:
from tvtk.common import configure_input
tvtk.configure_input(m, cs) # <== will work
参考:https://github.com/enthought/mayavi/blob/master/tvtk/common.py#L79
内容总结
以上是互联网集市为您收集整理的python-如何解决“ TraitError:…实例的’input’特性是’只读’.”全部内容,希望文章能够帮你解决python-如何解决“ TraitError:…实例的’input’特性是’只读’.”所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。