15.3.3.10 曲面属性

surface 对象的属性(另请参阅 surface):

类别:

回调执行 | 颜色和透明度 | 坐标数据 | 创建/删除 | 显示 | 面外观 | 图例选项 | 照明 | 标记外观 | 鼠标交互 | 对象标识 | 轮廓外观 | 父对象/子对象

回调执行

busyaction: "cancel" | {"queue"}

定义 Octave 在无法中断另一个对象正在执行的回调时,如何处理此对象回调属性的执行。这仅在当前执行回调的对象将其 interruptible 属性设置为 "off" 时相关。中断回调对象的 busyaction 属性指示中断回调是排队("queue",默认值)还是丢弃("cancel")。另请参阅 回调部分

interruptible: "off" | {"on"}

指定此对象的回调函数是否会被其他回调中断。默认情况下,interruptible"on",并且使用 drawnowfigurewaitforgetframepause 函数的回调最终会被中断。另请参阅 回调部分

颜色和透明度

alphadata: scalar | matrix, def. 1

曲面对象尚未实现透明度。alphadata 未使用。

alphadatamapping: "direct" | "none" | {"scaled"}

曲面对象尚未实现透明度。alphadatamapping 未使用。

cdata: array, def. 3-by-3 double

曲面顶点的颜色数据值。数据存储为与 "zdata" 大小相同的二维矩阵,其中每个元素的值根据当前颜色图确定该顶点的颜色;或者存储为三维数组,其中第三维包含每个顶点的单独红色、蓝色和绿色分量。

cdatamapping: "direct" | {"scaled"}

设置从 "cdata" 属性 到当前颜色图的数据映射方法。"Direct" 映射使用 "cdata" 值作为当前颜色图的索引来选择颜色。"Scaled" 映射将 "cdata" 值缩放到 "clim" 坐标轴属性 中指定的范围。

cdatasource: string, def. ""

工作区变量的名称,该变量包含用于 "cdata" 属性 的数据。数据通过 refreshdata 函数 传输到 "cdata"

坐标数据

xdata: matrix, def. [1 2 3]

x 坐标的数据。

xdatasource: string, def. ""

工作区变量的名称,该变量包含用于 "xdata" 属性 的数据。数据通过 refreshdata 函数 传输到 "xdata"

ydata: matrix, def. [1; 2; 3]

y 坐标的数据。

ydatasource: string, def. ""

工作区变量的名称,该变量包含用于 "ydata" 属性 的数据。数据通过 refreshdata 函数 传输到 "ydata"

zdata: matrix, def. 3-by-3 double

z 坐标的数据。

zdatasource: string, def. ""

工作区变量的名称,该变量包含用于 "zdata" 属性 的数据。数据通过 refreshdata 函数 传输到 "zdata"

创建/删除

beingdeleted: {"off"} | "on"

指示对象删除已启动的属性。beingdeleted 设置为 true,直到对象不再存在为止。

createfcn: string | function handle, def. [](0x0)

在创建曲面后立即执行的回调函数。该函数通过设置根对象的默认属性来配置,例如 set (groot, "defaultsurfacecreatefcn", 'disp ("surface created!")')

有关如何编写图形监听器函数的信息,另请参阅 回调部分

deletefcn: string | function handle, def. [](0x0)

在删除曲面之前立即执行的回调函数。

有关如何编写图形监听器函数的信息,另请参阅 回调部分

显示

clipping: "off" | {"on"}

如果 clipping"on",则曲面在其父坐标轴限制内进行裁剪。

visible: "off" | {"on"}

如果 visible"off",则曲面不会在屏幕上渲染。

面外观

facealpha: scalar | "flat" | "interp" | "texturemap", def. 1

曲面对象面的透明度级别。目前仅支持 double 值,其中值 0 表示完全透明,值 1 表示没有透明度的实体面。将属性设置为 "flat""interp""texturemap" 会导致面不被渲染。此外,面没有从后向前排序,这可能在渲染分层透明面时导致意外结果。

facecolor: colorspec | "none" | {"flat"} | "interp"

曲面对象面的颜色,指定为有效的颜色规范或 "none""flat""interp""flat""interp" 将为每个面设置单一颜色,或使用存储在 "cdata" 中的颜色数据值在两个相邻顶点之间插值的颜色。另请参阅 颜色规范

facelighting: {"flat"} | "gouraud" | "none" | "phong"

当设置为非 "none" 的值时,使用光照和阴影效果绘制对象的面。支持的值为 "none"(无光照效果)、"flat"(多面外观)和 "gouraud"(顶点之间光照效果的线性插值)。"phong" 已弃用,其效果与 "gouraud" 相同。

facenormals: def. [](0x0)

如果 edgelightingfacelighting 属性设置为 "flat",则 facenormals 也会强制将 facenormalsmode 属性设置为 "manual"

facenormalsmode: {"auto"} | "manual"

如果此属性设置为 "auto",则当 edgelightingfacelighting 属性设置为 "flat" 且同一坐标轴上至少存在一个可见的 light 对象时,facenormals 会自动计算。

图例选项

displayname: def. ""

与此曲面对应的图例条目的文本。

光照

ambientstrength: scalar, def. 0.3000

环境光的强度。值在 0.0 和 1.0 之间。

backfacelighting: "lit" | {"reverselit"} | "unlit"

"lit":法线按原样用于光照。"reverselit":法线始终朝向视点。"unlit":法线指向远离视点的面不发光。

diffusestrength: scalar, def. 0.6000

漫反射的强度。值在 0.0(无漫反射)和 1.0(全漫反射)之间。

specularcolorreflectance: scalar, def. 1

镜面反射颜色的反射率。值在 0.0(基础面的颜色)和 1.0(光源的颜色)之间。

specularexponent: scalar, def. 10

镜面反射的指数。该值越低,反射越分散。

specularstrength: scalar, def. 0.9000

镜面反射的强度。值在 0.0(无镜面反射)和 1.0(全镜面反射)之间。

vertexnormals: def. [](0x0)

如果 edgelightingfacelighting 属性设置为 "gouraud",则 vertexnormals 也会强制将 vertexnormalsmode 属性设置为 "manual"

vertexnormalsmode: {"auto"} | "manual"

如果此属性设置为 "auto",则当 edgelightingfacelighting 属性设置为 "gouraud" 且同一坐标轴上至少存在一个可见的 light 对象时,vertexnormals 会自动计算。

标记外观

marker: "*" | "+" | "." | "<" | ">" | "^" | "_" | "d" | "diamond" | "h" | "hexagram" | {"none"} | "o" | "p" | "pentagram" | "s" | "square" | "v" | "x" | "|"

另请参阅 标记样式

markeredgecolor: {"auto"} | "flat" | "none"

另请参阅 线条标记边缘颜色属性

markerfacecolor: "auto" | "flat" | {"none"}

另请参阅 线条标记表面颜色属性

markersize: scalar, def. 6

另请参阅 线条标记大小属性

鼠标交互

buttondownfcn: string | function handle, def. [](0x0)

有关如何编写图形监听器函数的信息,另请参阅 回调部分

contextmenu: graphics handle, def. [](0x0)

当前与此曲面对象关联的 uicontextmenu 对象的图形句柄。

hittest: "off" | {"on"}

指定曲面是处理鼠标事件还是将其传递给对象的祖先。启用后,对象可以通过评估 "buttondownfcn"、显示 uicontextmenu 并最终成为根 "currentobject" 来响应鼠标单击。只有当对象通过 "pickableparts" 属性(另请参阅 pickableparts 属性)接受事件时,才能进行鼠标拾取。

pickableparts: "all" | "none" | {"visible"}

指定曲面是否接受鼠标单击。默认情况下,pickableparts"visible",只有曲面的可见部分或其子对象可以对鼠标单击做出反应。当 pickableparts"all" 时,可见和不可见部分(或子部分)都可能对鼠标单击做出反应。当 pickableparts"none" 时,鼠标在该对象上的单击将被忽略,并传输到该对象下方的任何对象。当对象配置为接受鼠标单击时,"hittest" 属性将决定如何处理它们。另请参阅 hittest 属性

selected: {"off"} | "on"

指示是否选中此曲面的属性。

selectionhighlight: "off" | {"on"}

如果 selectionhighlight"on",则曲面的选中状态将在视觉上高亮显示。

对象标识

tag: string, def. ""

用于标记图形对象的用户定义字符串。

type (read-only): string

图形对象的类名。type 始终为 "surface"

userdata: Any Octave data, def. [](0x0)

要与图形对象关联的用户定义数据。

轮廓外观

edgealpha: scalar, def. 1

曲面对象尚未实现透明度。edgealpha 未使用。

edgecolor: colorspec | "none" | "flat" | "interp", def. [0 0 0]

曲面对象的边的颜色,指定为有效的颜色规范或 "none""flat""interp""flat""interp" 将为每条边设置单一颜色,或使用存储在 "cdata" 中的颜色数据值在两个相邻顶点之间插值的颜色。另请参阅 颜色规范

edgelighting: "flat" | "gouraud" | {"none"} | "phong"

当设置为非 "none" 的值时,使用光照和阴影效果绘制对象的边缘。支持的值为 "none"(无光照效果)、"flat"(多面外观)和 "gouraud"(顶点之间光照效果的线性插值)。"phong" 已弃用,其效果与 "gouraud" 相同。

linestyle: {"-"} | "--" | "-." | ":" | "none"

另请参阅 线条样式

linewidth: scalar, def. 0.5000

另请参阅 线条线宽属性

meshstyle: {"both"} | "column" | "row"

指定是显示与曲面数据的行、列关联的边,还是同时显示两者。

父对象/子对象

children (read-only): vector of graphics handles, def. [](0x0)

曲面对象的子对象尚未实现。children 未使用。

handlevisibility: "callback" | "off" | {"on"}

如果 handlevisibility"off",则曲面的句柄在其父对象的 "children" 属性中不可见。

parent: graphics handle

父图形对象的句柄。


版权所有 © 2024-2026 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-4