imscrollpanel
滚动面板的交互式图像导航
语法
Hpanel = imscrollpanel(hparent, himage)
描述
Hpanel = imscrollpanel(hparent, himage)
创建包含目标图像(要导航的图像)的滚动面板。himage
目标图像的句柄。hparent
将包含新滚动面板的图形或uipanel的句柄。函数返回hpanel
,滚动面板的句柄,它是一个uipanel对象。
滚动面板使图像可滚动。如果尺寸或放大倍率使图像过大,无法在屏幕上以图形形式显示,滚动面板将以100%放大倍率显示图像的一部分(一个屏幕像素表示一个图像像素)。滚动面板添加了水平和垂直滚动条,以支持在图像周围导航。
imscrollpanel
更改目标图像的对象层次结构。不是我们熟悉的>轴->图像对象层次结构,imscrollpanel
在图形和axis对象之间插入几个uipanel和uicontrol对象。
API函数
滚动面板包含一个函数句柄结构,称为API。您可以使用此API中的函数来操作滚动面板。要检索此结构,请使用iptgetapi
函数,如下例所示。
API = iptgetapi(hpanel)
这个表列出了滚动面板API函数,按照它们在结构中出现的顺序。
函数 |
描述 |
---|---|
|
以每个图像像素的屏幕像素为单位设置目标图像的放大倍数。 mag = api.setMagnification(new_mag) 在哪里 |
|
返回目标图像的当前放大系数,单位为每个图像像素的屏幕像素。 mag = api.getMagnification() 乘 |
|
改变放大倍率,使点 api.setMagnificationAndCenter(杂志、残雪、cy) |
|
返回使目标图像刚好适合滚动面板的放大系数。 mag = api.findFitMag() |
|
移动目标图像,使指定的位置可见。滚动条更新。 api。setVisibleLocation(xmin, ymin) api。setVisibleLocation ([xmin ymin]) |
|
返回目标图像当前可见部分的位置。 loc = api.getVisibleLocation() 在哪里 |
|
返回图像的当前可见部分。 r = api. getvisibleimag勃起() 在哪里 |
|
添加函数句柄 id = api.addNewMagnificationCallback(fcn) 每当滚动面板的放大倍数发生变化时,列表中的每个函数都会使用以下语法调用: fcn (mag) 在哪里 返回值, |
|
从新放大回调列表中移除相应的函数。 api.removeNewMagnificationCallback (id) 在哪里 |
|
添加函数句柄 id = api.addNewLocationCallback(fcn) 每当滚动面板位置改变时,列表中的每个函数都会使用以下语法调用: fcn (loc) 在哪里 返回值, |
|
从新位置回调列表中移除相应的函数。 api.removeNewLocationCallback (id) 在哪里 |
|
api.replaceImage(I) api.replaceImage(BW) api.replaceImage(RGB) api.replaceImage(I,MAP) api.replaceImage(filename) 默认情况下,新的图像数据以100%的放大倍率居中显示。图像句柄不变。 所支持的许多参数都可以指定万博1manbetx |
请注意
提供的滚动条导航imscrollpanel
与默认的MATLAB不兼容®图导航按钮(平移,放大,缩小)。对应的菜单项和工具栏按钮应该在自定义GUI中删除,其中包括由创建的可滚动ui面板imscrollpanel
.
当你奔跑imscrollpanel
,它似乎接管了整个图形,因为在默认情况下,hpanel对象已经接管了“单位”
设置为“归一化”
而且“位置”
设置为[0 0 1 1]
.如果你想看其他孩子的hparent
在使用新的滚动面板时,必须手动设置“位置”
的属性hpanel
.