|
Failure makes no sense, I can't produce locally O_O def test_gray():
fig = fpl.Figure()
ig = fig[0, 0].add_image(GRAY_IMAGE)
assert isinstance(ig, fpl.ImageGraphic)
ig.add_event_handler(
event_handler,
"data",
"cmap",
"vmin",
"vmax",
"interpolation",
"cmap_interpolation",
)
# make sure entire data is the same
npt.assert_almost_equal(ig.data.value, GRAY_IMAGE)
# since this entire image is under the wgpu max texture limit,
# the entire image should be in the single Texture buffer
npt.assert_almost_equal(ig.data.buffer[0, 0].data, GRAY_IMAGE)
> ig.cmap = "viridis"
tests/test_image_graphic.py:89:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
fastplotlib/graphics/image.py:205: in cmap
self._cmap.set_value(self, name)
fastplotlib/graphics/_features/_base.py:346: in set_value_wrapper
raise exc # set_value has raised. The line above and the lines 2+ steps below are probably more relevant!
fastplotlib/graphics/_features/_base.py:343: in set_value_wrapper
set_value(self, graphic_or_key, value)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <fastplotlib.graphics._features._image.ImageCmap object at 0x114c90410>
graphic = ImageGraphic, value = 'viridis'
@block_reentrance
def set_value(self, graphic, value: str):
new_colors = make_colors(256, value)
> graphic._material.map.texture.data[:] = new_colors
E AttributeError: 'TextureMap' object has no attribute 'data'
|
Sorry, something went wrong.
|
Ah the change is because cmap now returns a TextureMap instead of a Texture |
Sorry, something went wrong.
|
📚 Docs preview built and uploaded! https://www.fastplotlib.org/ver/fix-comment-fix-doc-readme |
Sorry, something went wrong.
old comment lingering from when graphics were weakrefs (before we dug into the ways ipython docs gc)