Mesh3D
Draws sets of triangles with coordinates given by three 1-dimensional arrays in x, y, z
and (1) a sets of i, j, k indices (2) Delaunay triangulation or (3) the Alpha-shape
algorithm or (4) the Convex-hull algorithm
-
Corresponding Plotly trace type.
Declaration
Swift
public let type: String -
Switch indicating whether the trace supports animation of its data.
Declaration
Swift
public static var animatable: Bool { get } -
Determines whether or not this trace is visible.
If legendonly, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).
Declaration
Swift
public var visible: Visible? -
Sets the legend group for this trace.
Traces part of the same legend group hide/show at the same time when toggling legend items.
Declaration
Swift
public var legendGroup: String? -
Sets the trace name.
The trace name appear as the legend item and on hover.
Declaration
Swift
public var name: String? -
Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.
Declaration
Swift
public var uid: String? -
Assigns id labels to each datum.
These ids for object constancy of data points during animation. Should be an array of strings, not numbers or any other type.
Declaration
Swift
public var ids: [String]? -
Assigns extra data each datum.
This may be useful when listening to hover, click and selection events. Note that, scatter traces also appends customdata items in the markers DOM elements
Declaration
Swift
public var customData: [String]? -
Assigns extra meta information associated with this trace that can be used in various text attributes.
Attributes such as trace
name, graph, axis and colorbartitle.text, annotationtextrangeselector,updatemenuesandsliderslabeltext all supportmeta. To access the tracemetavalues in an attribute in the same trace, simply use%{meta[i]}whereiis the index or key of themetaitem in question. To access tracemetain layout attributes, use%{data[n[.meta[i]}whereiis the index or key of themetaandnis the trace index. -
Undocumented
Declaration
Swift
public var hoverLabel: HoverLabel? -
Undocumented
Declaration
Swift
public var stream: Stream? -
Controls persistence of some user-driven changes to the trace:
constraintrangeinparcoordstraces, as well as someeditable: truemodifications such asnameandcolorbar.title.Defaults to
layout.uirevision. Note that other user-driven trace attribute changes are controlled bylayoutattributes:trace.visibleis controlled bylayout.legend.uirevision,selectedpointsis controlled bylayout.selectionrevision, andcolorbar.(x|y)(accessible withconfig: {editable: true}) is controlled bylayout.editrevision. Trace changes are tracked byuid, which only falls back on trace index if nouidis provided. So if your app can add/remove traces before the end of thedataarray, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace auidthat stays with it as it moves.Declaration
Swift
public var uiRevision: Anything? -
A vector of vertex indices, i.e.
integer values between 0 and the length of the vertex vectors, representing the first vertex of a triangle. For example,
{i[m], j[m], k[m]}together represent face m (triangle m) in the mesh, wherei[m] = npoints to the triplet{x[n], y[n], z[n]}in the vertex arrays. Therefore, each element inirepresents a point in space, which is the first vertex of a triangle.Declaration
Swift
public var i: [Int]? -
A vector of vertex indices, i.e.
integer values between 0 and the length of the vertex vectors, representing the second vertex of a triangle. For example,
{i[m], j[m], k[m]}together represent face m (triangle m) in the mesh, wherej[m] = npoints to the triplet{x[n], y[n], z[n]}in the vertex arrays. Therefore, each element injrepresents a point in space, which is the second vertex of a triangle.Declaration
Swift
public var j: [Int]? -
A vector of vertex indices, i.e.
integer values between 0 and the length of the vertex vectors, representing the third vertex of a triangle. For example,
{i[m], j[m], k[m]}together represent face m (triangle m) in the mesh, wherek[m] = npoints to the triplet{x[n], y[n], z[n]}in the vertex arrays. Therefore, each element inkrepresents a point in space, which is the third vertex of a triangle.Declaration
Swift
public var k: [Int]? -
Sets the text elements associated with the vertices.
If trace
hoverinfocontains a text flag and hovertext is not set, these elements will be seen in the hover labels.Declaration
Swift
public var text: Data<String>? -
Template string used for rendering the information that appear on hover box.
Note that this will override
hoverinfo. Variables are inserted using %{variable}, for example “y: %{y}”. Numbers are formatted using d3-format’s syntax %{variable:d3-format}, for example “Price: %{y:$.2f}”. https://github.com/d3/d3-3.x-api-reference/blob/master/Formatting.md#d3_format for details on the formatting syntax. Dates are formatted using d3-time-format’s syntax %{variable|d3-time-format}, for example “Day: %{2019-01-01|%A}”. https://github.com/d3/d3-time-format#locale_format for details on the date formatting syntax. The variables available inhovertemplateare the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, every attributes that can be specified per-point (the ones that arearrayOk: true) are available. Anything contained in tag<extra>is displayed in the secondary box, for example “{fullData.name} ”. To hide the secondary box completely, use an empty tag<extra></extra>.Declaration
Swift
public var hoverTemplate: Data<String>? -
Sets the Delaunay axis, which is the axis that is perpendicular to the surface of the Delaunay triangulation.
It has an effect if
i,j,kare not provided andalphahullis set to indicate Delaunay triangulation.Declaration
Swift
public var delaunayAxis: DelaunayAxis? -
Determines how the mesh surface triangles are derived from the set of vertices (points) represented by the
x,yandzarrays, if thei,j,karrays are not supplied.For general use of
mesh3dit is preferred thati,j,kare supplied. If -1, Delaunay triangulation is used, which is mainly suitable if the mesh is a single, more or less layer surface that is perpendicular todelaunayaxis. In case thedelaunayaxisintersects the mesh surface at more than one point it will result triangles that are very long in the dimension ofdelaunayaxis. If >0, the alpha-shape algorithm is used. In this case, the positivealphahullvalue signals the use of the alpha-shape algorithm, and its value acts as the parameter for the mesh fitting. If 0, the convex-hull algorithm is used. It is suitable for convex bodies or if the intention is to enclose thex,yandzpoint set into a convex hull.Declaration
Swift
public var alphaHull: Double? -
Sets the intensity values for vertices or cells as defined by
intensitymode.It can be used for plotting fields on meshes.
Declaration
Swift
public var intensity: IntensityData? -
Determines the source of
intensityvalues.Declaration
Swift
public var intensityMode: IntensityMode? -
Sets the color of the whole mesh
Declaration
Swift
public var color: Color? -
Sets the color of each vertex Overrides color.
While Red, green and blue colors are in the range of 0 and 255; in the case of having vertex color data in RGBA format, the alpha color should be normalized to be between 0 and 1.
Declaration
Swift
public var vertexColor: VertexcolorData? -
Sets the color of each face Overrides color and vertexcolor.
Declaration
Swift
public var faceColor: FacecolorData? -
Determines whether or not the color domain is computed with respect to the input data (here
intensity) or the bounds set incminandcmaxDefaults tofalsewhencminandcmaxare set by the user.Declaration
Swift
public var cAuto: Bool? -
Sets the lower bound of the color domain.
Value should have the same units as
intensityand if set,cmaxmust be set as well.Declaration
Swift
public var cMin: Double? -
Sets the upper bound of the color domain.
Value should have the same units as
intensityand if set,cminmust be set as well.Declaration
Swift
public var cMax: Double? -
Sets the mid-point of the color domain by scaling
cminand/orcmaxto be equidistant to this point.Value should have the same units as
intensity. Has no effect whencautoisfalse.Declaration
Swift
public var cMiddle: Double? -
Sets the colorscale.
The colorscale must be an array containing arrays mapping a normalized value to an rgb, rgba, hex, hsl, hsv, or named color string. At minimum, a mapping for the lowest (0) and highest (1) values are required. For example,
[[0, 'rgb(0,0,255)'], [1, 'rgb(255,0,0)']]. To control the bounds of the colorscale in color space, usecminandcmax. Alternatively,colorscalemay be a palette name string of the following list: Greys,YlGnBu,Greens,YlOrRd,Bluered,RdBu,Reds,Blues,Picnic,Rainbow,Portland,Jet,Hot,Blackbody,Earth,Electric,Viridis,Cividis.Declaration
Swift
public var colorScale: ColorScale? -
Determines whether the colorscale is a default palette (
autocolorscale: true) or the palette determined bycolorscale.In case
colorscaleis unspecified orautocolorscaleis true, the default palette will be chosen according to whether numbers in thecolorarray are all positive, all negative or mixed.Declaration
Swift
public var autoColorScale: Bool? -
Reverses the color mapping if true.
If true,
cminwill correspond to the last color in the array andcmaxwill correspond to the first color.Declaration
Swift
public var reverseScale: Bool? -
Determines whether or not a colorbar is displayed for this trace.
Declaration
Swift
public var showScale: Bool? -
Undocumented
Declaration
Swift
public var colorBar: ColorBar? -
Sets a reference to a shared color axis.
References to these shared color axes are coloraxis, coloraxis2, coloraxis3, etc. Settings for these shared color axes are set in the layout, under
layout.coloraxis,layout.coloraxis2, etc. Note that multiple color scales can be linked to the same color axis.Declaration
Swift
public var colorAxis: ColorAxis -
Sets the opacity of the surface.
Please note that in the case of using high
opacityvalues for example a value greater than or equal to 0.5 on two surfaces (and 0.25 with four surfaces), an overlay of multiple transparent surfaces may not perfectly be sorted in depth by the webgl API. This behavior may be improved in the near future and is subject to change.Declaration
Swift
public var opacity: Double? -
Determines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.
Declaration
Swift
public var flatShading: Bool? -
Undocumented
Declaration
Swift
public var contour: ContourHover? -
Undocumented
Declaration
Swift
public var lightPosition: LightPosition? -
Undocumented
Declaration
Swift
public var lighting: Lighting? -
Determines which trace information appear on hover.
If
noneorskipare set, no information is displayed upon hovering. But, ifnoneis set, click and hover events are still fired.Declaration
Swift
public var hoverInfo: HoverInfo? -
Determines whether or not an item corresponding to this trace is shown in the legend.
Declaration
Swift
public var showLegend: Bool? -
Sets a reference between this trace’s 3D coordinate system and a 3D scene.
If scene (the default value), the (x,y,z) coordinates refer to
layout.scene. If scene2, the (x,y,z) coordinates refer tolayout.scene2, and so on.Declaration
Swift
public var scene: Scene -
Creates
Mesh3Dobject from the most frequently used properties.Declaration
Swift
public init(name: String? = nil, x: XData? = nil, y: YData? = nil, z: ZData? = nil, text: Data<String>? = nil, hoverText: Data<String>? = nil, intensity: IntensityData? = nil, vertexColor: VertexcolorData? = nil, faceColor: FacecolorData? = nil, colorScale: ColorScale? = nil, reverseScale: Bool? = nil)Parameters
nameSets the trace name.
xSets the X coordinates of the vertices.
ySets the Y coordinates of the vertices.
zSets the Z coordinates of the vertices.
textSets the text elements associated with the vertices.
hoverTextSame as
text.intensitySets the intensity values for vertices or cells as defined by
intensitymode.vertexColorSets the color of each vertex Overrides color.
faceColorSets the color of each face Overrides color and vertexcolor.
colorScaleSets the colorscale.
reverseScaleReverses the color mapping if true.
-
init(visible:legendGroup: name: uid: ids: customData: meta: hoverLabel: stream: uiRevision: x: y: z: i: j: k: text: hoverText: hoverTemplate: delaunayAxis: alphaHull: intensity: intensityMode: color: vertexColor: faceColor: cAuto: cMin: cMax: cMiddle: colorScale: autoColorScale: reverseScale: showScale: colorBar: colorAxis: opacity: flatShading: contour: lightPosition: lighting: hoverInfo: showLegend: xCalendar: yCalendar: zCalendar: scene: ) Creates
Mesh3Dobject with specified properties.Declaration
Swift
public init(visible: Visible? = nil, legendGroup: String? = nil, name: String? = nil, uid: String? = nil, ids: [String]? = nil, customData: [String]? = nil, meta: Data<Anything>? = nil, hoverLabel: HoverLabel? = nil, stream: Stream? = nil, uiRevision: Anything? = nil, x: XData? = nil, y: YData? = nil, z: ZData? = nil, i: [Int]? = nil, j: [Int]? = nil, k: [Int]? = nil, text: Data<String>? = nil, hoverText: Data<String>? = nil, hoverTemplate: Data<String>? = nil, delaunayAxis: DelaunayAxis? = nil, alphaHull: Double? = nil, intensity: IntensityData? = nil, intensityMode: IntensityMode? = nil, color: Color? = nil, vertexColor: VertexcolorData? = nil, faceColor: FacecolorData? = nil, cAuto: Bool? = nil, cMin: Double? = nil, cMax: Double? = nil, cMiddle: Double? = nil, colorScale: ColorScale? = nil, autoColorScale: Bool? = nil, reverseScale: Bool? = nil, showScale: Bool? = nil, colorBar: ColorBar? = nil, colorAxis: ColorAxis = .preset, opacity: Double? = nil, flatShading: Bool? = nil, contour: ContourHover? = nil, lightPosition: LightPosition? = nil, lighting: Lighting? = nil, hoverInfo: HoverInfo? = nil, showLegend: Bool? = nil, xCalendar: Calendar? = nil, yCalendar: Calendar? = nil, zCalendar: Calendar? = nil, scene: Scene = .preset)Parameters
visibleDetermines whether or not this trace is visible.
legendGroupSets the legend group for this trace.
nameSets the trace name.
uidAssign an id to this trace, Use this to provide object constancy between traces during animations and transitions.
idsAssigns id labels to each datum.
customDataAssigns extra data each datum.
metaAssigns extra meta information associated with this trace that can be used in various text attributes.
hoverLabelstreamuiRevisionControls persistence of some user-driven changes to the trace:
constraintrangeinparcoordstraces, as well as someeditable: truemodifications such asnameandcolorbar.title.xSets the X coordinates of the vertices.
ySets the Y coordinates of the vertices.
zSets the Z coordinates of the vertices.
iA vector of vertex indices, i.e.
jA vector of vertex indices, i.e.
kA vector of vertex indices, i.e.
textSets the text elements associated with the vertices.
hoverTextSame as
text.hoverTemplateTemplate string used for rendering the information that appear on hover box.
delaunayAxisSets the Delaunay axis, which is the axis that is perpendicular to the surface of the Delaunay triangulation.
alphaHullintensitySets the intensity values for vertices or cells as defined by
intensitymode.intensityModeDetermines the source of
intensityvalues.colorSets the color of the whole mesh
vertexColorSets the color of each vertex Overrides color.
faceColorSets the color of each face Overrides color and vertexcolor.
cAutoDetermines whether or not the color domain is computed with respect to the input data (here
intensity) or the bounds set incminandcmaxDefaults tofalsewhencminandcmaxare set by the user.cMinSets the lower bound of the color domain.
cMaxSets the upper bound of the color domain.
cMiddleSets the mid-point of the color domain by scaling
cminand/orcmaxto be equidistant to this point.colorScaleSets the colorscale.
autoColorScaleDetermines whether the colorscale is a default palette (
autocolorscale: true) or the palette determined bycolorscale.reverseScaleReverses the color mapping if true.
showScaleDetermines whether or not a colorbar is displayed for this trace.
colorBarcolorAxisSets a reference to a shared color axis.
opacitySets the opacity of the surface.
flatShadingDetermines whether or not normal smoothing is applied to the meshes, creating meshes with an angular, low-poly look via flat reflections.
contourlightPositionlightinghoverInfoDetermines which trace information appear on hover.
showLegendDetermines whether or not an item corresponding to this trace is shown in the legend.
xCalendarSets the calendar system to use with
xdate data.yCalendarSets the calendar system to use with
ydate data.zCalendarSets the calendar system to use with
zdate data.sceneSets a reference between this trace’s 3D coordinate system and a 3D scene.
-
Encodes the object in a format compatible with Plotly.
Declaration
Swift
public func encode(to encoder: Encoder) throws
View on GitHub
Install in Dash
Mesh3D Structure Reference