Class Normal

All Implemented Interfaces:
X3DNode, Normal, X3DGeometricPropertyNode, X3DNormalNode

public class Normal extends X3DConcreteNode implements Normal
Normal defines a set of 3D surface-normal vectors that apply either to a sibling Coordinate|CoordinateDouble node, or else to a parent ElevationGrid node.

Warning: this is an abstract interface that cannot be instantiated as a concrete object. Java programmers typically only need to use concrete objects provided by the org.web3d.x3d.jsail classes. Normal node tooltip: [X3DNormalNode] Normal defines a set of 3D surface-normal vectors that apply either to a sibling Coordinate|CoordinateDouble node, or else to a parent ElevationGrid node. Normal values are perpendicular directions that are used per-polygon or per-vertex when computing lighting and shading.
  • Hint: Normal values are typically only calculated or applied once, during initial loading of model geometry.
  • Hint: custom Normal values can produce special effects.
  • Hint: if no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.
  • Hint: computation of normal values is performed quite quickly on modern 3D graphics hardware, often with no perceptible delay.
  • Warning: adding normal values to a model might significantly increase file size. Testing can help determine proper tradeoffs between file size, network transmission delays and initial rendering speed.
  • Hint: normal vectors perpendicular to 3D surface https://en.wikipedia.org/wiki/Normal_(geometry)

Package hint: This org.web3d.x3d.jsail concrete class is used for implementing a standalone X3D object as a Plain Old Java Object (POJO). If you are writing Java code for use inside an X3D Script node, compile separate code using only the org.web3d.x3d.sai package instead.
See Also: