JavaScript must be enabled in order for you to use JSXGraph and JSXGraph reference. However, it seems JavaScript is either disabled or not supported by your browser.

Class Index | File Index

Elements
Classes

Element Face3D

JXG.GeometryElement
   ↳ JXG.Curve
      ↳ Curve
            ↳ Face3D

This element creates a 3D face.

Defined in: face3d.js.
Extends Curve.

Element Summary
Constructor Attributes Constructor Name and Description
 
A 3D faces is TODO
Attributes Summary
Field Attributes Field Name and Description
 
Shading of faces.
Field Summary
Field Attributes Field Name and Description
 
d
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 Summary
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.
        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
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
Documentation generated by JsDoc Toolkit 2.4.0 on Mon Feb 24 2025 14:55:58 GMT+0100 (Mitteleuropäische Normalzeit)