Element Face3D
JXG.GeometryElement
↳ JXG.Curve
↳ Curve
↳ Face3D
This element creates a 3D face.
Defined in: face3d.js.
Extends
Curve.
Constructor Attributes | Constructor Name and Description |
---|---|
A 3D faces is TODO
|
Field Attributes | Field Name and Description |
---|---|
Shading of faces.
|
Field Attributes | Field Name and Description |
---|---|
Hesse right hand side of the plane that contains the face.
|
|
Index of the face in the list of faces of the polyhedron
|
|
Normal vector for the face.
|
|
Link to the defining data of the parent polyhedron3d.
|
|
First basis vector of the face.
|
|
Second basis vector of the face.
|
Method Attributes | Method Name and Description |
---|---|
<static> |
Face3D.shader()
Determines the lightness of the face (in the HSL color scheme).
|
Update the coordinates of all vertices of the polyhedron
|
|
Update the 2d coordinates of the face
|
- Methods borrowed from class JXG.Curve:
- addTransform, allocatePoints, generateTerm, getTransformationSource, hasPoint, interpolationFunctionFromArray, maxX, minX, moveTo, notifyParents, update, updateCurve, updateDataArray, updateRenderer, updateTransform, X, Y, Z
- Methods borrowed from class JXG.GeometryElement:
- _set, addChild, addDescendants, addParents, addParentsFromJCFunctions, addRotation, addTicks, animate, bounds, clearTrace, cloneToBackground, countChildren, createGradient, createLabel, draggable, eval, evalVisProp, formatNumberLocale, fullUpdate, generatePolynomial, getAttribute, getAttributes, getLabelAnchor, getName, getParents, getProperty, getSnapSizes, getTextAnchor, getType, handleSnapToGrid, hide, hideElement, noHighlight, normalize, prepareUpdate, remove, removeAllTicks, removeChild, removeDescendants, removeTicks, resolveShortcuts, setArrow, setAttribute, setDash, setDisplayRendNode, setLabel, setLabelText, setName, setParents, setPosition, setPositionDirectly, setProperty, show, showElement, snapToPoints, updateVisibility, useLocale
- Events borrowed from class JXG.GeometryElement:
- attribute, attribute:key, down, drag, keydrag, mousedown, mousedrag, mousemove, mouseout, mouseover, mouseup, move, out, over, pendown, pendrag, penup, touchdown, touchdrag, touchup, up
Element Detail
Face3D
A 3D faces is TODO
- Throws:
- {Exception}
- If the element cannot be constructed with the given parent objects an exception is thrown.
Attribute Detail
{Object}
shader
Shading of faces. For this, the HSL color scheme is used.
Two types are possible: either by 'angle' or by 'zIndex'.
By default (i.e. type:'angle'), the angle between the camera axis and the normal of the
face determines the lightness value of the HSL color. Otherwise, the
zIndex of the face determines the lightness value of the HSL color.
Defined in: options3d.js.
Defined in: options3d.js.
var view = board.create( 'view3d', [[-5, -3], [8, 8], [[-3, 3], [-3, 3], [-3, 3]]], { projection: 'central', trackball: { enabled: true }, depthOrder: { enabled: true }, xPlaneRear: { visible: false }, yPlaneRear: { visible: false }, zPlaneRear: { fillOpacity: 0.2, visible: true } } ); let rho = 1.6180339887; let vertexList = [ [0, -1, -rho], [0, +1, -rho], [0, -1, rho], [0, +1, rho], [1, rho, 0], [-1, rho, 0], [1, -rho, 0], [-1, -rho, 0], [-rho, 0, 1], [-rho, 0, -1], [rho, 0, 1], [rho, 0, -1] ]; let faceArray = [ [4, 1, 11], [11, 1, 0], [6, 11, 0], [0, 1, 9], [11, 10, 4], [9, 1, 5], [8, 9, 5], [5, 3, 8], [6, 10, 11], [2, 3, 10], [2, 10, 6], [8, 3, 2], [3, 4, 10], [7, 8, 2], [9, 8, 7], [0, 9, 7], [4, 3, 5], [5, 1, 4], [0, 7, 6], [7, 2, 6] ]; var ico = view.create('polyhedron3d', [vertexList, faceArray], { fillColorArray: [], fillOpacity: 1, strokeWidth: 0.1, layer: 12, shader: { enabled: true, type: 'angle', hue: 0, saturation: 90, minlightness: 60, maxLightness: 80 } });
- See:
- View3D#depthOrder
- Default Value:
-
{ enabled: false, type: 'angle', // 'angle', otherwise zIndex hue: 60, // yellow saturation: 90, minLightness: 30, maxLightness: 90 }
Field Detail
{Number}
d
Hesse right hand side of the plane that contains the face.
{Number}
faceNumber
Index of the face in the list of faces of the polyhedron
{array}
normal
Normal vector for the face. Array of length 4.
{Object}
polyhedron
Link to the defining data of the parent polyhedron3d.
- See:
- Polyhedron3D#def
{Array}
vec1
First basis vector of the face. Vector of length 4.
{Array}
vec2
Second basis vector of the face. Vector of length 4.
Method Detail
<static>
{Number}
Face3D.shader()
Determines the lightness of the face (in the HSL color scheme).
Sets the fillColor of the adjoint 2D curve.
- Returns:
- {Number} zIndex of the face
{Face3D}
updateCoords()
Update the coordinates of all vertices of the polyhedron
- Returns:
- {Face3D} reference to itself
{Object}
updateDataArray2D()
Update the 2d coordinates of the face
- Returns:
- {Object} {X:[], Y:[]}
Attributes borrowed from other Elements
- Attributes borrowed from class Curve:
- curveType, doAdvancedPlot, doAdvancedPlotOld, firstArrow, handDrawing, label, lastArrow, numberPointsHigh, numberPointsLow, plotVersion, recursionDepthHigh, recursionDepthLow
- Attributes borrowed from class JXG.Curve:
- lineCap
- Attributes borrowed from class JXG.GeometryElement:
- aria, cssClass, dash, dashScale, draft, dragToTopOfLayer, element3D, fillColor, fillOpacity, fixed, frozen, gradient, gradientAngle, gradientCX, gradientCY, gradientEndOffset, gradientFR, gradientFX, gradientFY, gradientR, gradientSecondColor, gradientSecondOpacity, gradientStartOffset, highlight, highlightCssClass, highlightFillColor, highlightFillOpacity, highlightStrokeColor, highlightStrokeOpacity, highlightStrokeWidth, isLabel, layer, needsRegularUpdate, nonnegativeOnly, precision, priv, rotatable, scalable, shadow, snapToGrid, strokeColor, strokeOpacity, strokeWidth, tabindex, trace, traceAttributes, transitionDuration, transitionProperties, visible, withLabel
Fields borrowed from other Elements
- Fields borrowed from class JXG.Curve:
- dataX, dataY, numberPoints, qdt, ticks
- Fields borrowed from class JXG.GeometryElement:
- _org_type, _pos, ancestors, baseElement, board, childElements, descendants, dump, elementClass, elType, hasLabel, highlighted, id, inherits, isDraggable, isReal, lastDragTime, methodMap, mouseover, name, needsUpdate, notExistingParents, numTraces, parents, quadraticform, rendNode, stdform, subs, symbolic, traces, transformations, type, visProp, visPropCalc
Methods borrowed from other Elements
- Methods borrowed from class JXG.Curve:
- addTransform, allocatePoints, generateTerm, getTransformationSource, hasPoint, interpolationFunctionFromArray, maxX, minX, moveTo, notifyParents, update, updateCurve, updateDataArray, updateRenderer, updateTransform, X, Y, Z
- Methods borrowed from class JXG.GeometryElement:
- _set, addChild, addDescendants, addParents, addParentsFromJCFunctions, addRotation, addTicks, animate, bounds, clearTrace, cloneToBackground, countChildren, createGradient, createLabel, draggable, eval, evalVisProp, formatNumberLocale, fullUpdate, generatePolynomial, getAttribute, getAttributes, getLabelAnchor, getName, getParents, getProperty, getSnapSizes, getTextAnchor, getType, handleSnapToGrid, hide, hideElement, noHighlight, normalize, prepareUpdate, remove, removeAllTicks, removeChild, removeDescendants, removeTicks, resolveShortcuts, setArrow, setAttribute, setDash, setDisplayRendNode, setLabel, setLabelText, setName, setParents, setPosition, setPositionDirectly, setProperty, show, showElement, snapToPoints, updateVisibility, useLocale
Events borrowed from other Elements