harmonic.mz.data.fields
Class MaterialField

java.lang.Object
  |
  +--harmonic.mz.data.ModelNode
        |
        +--harmonic.mz.data.fields.MaterialField
All Implemented Interfaces:
java.awt.event.ActionListener, DataNode, Documentable, java.util.EventListener, Interpolater, harmonic.meshGeom.math.MarkableObject, NodeListener

public class MaterialField
extends ModelNode

This is the Material data field, for specifing how a surface reposonds to lighting.


Field Summary
 ColorField ambient
          Color that is dot product'd with ambient light
 ColorField diffuse
          Color that is dot product'd with diffuse light
 ColorField emissive
          Color that added on to regarless of lighting
 ScalarField shininess
          How important is the lighting angle.
 ColorField specular
          Color that reponds to shineness exponent
 
Fields inherited from class harmonic.mz.data.ModelNode
_fileRoot_, _thread_, ATTRIB_CONTROL_WIDGET, ATTRIB_LISTABLE, ATTRIB_PRESENTABLE, ATTRIB_PRIVATE, ATTRIB_REMOVEABLE, ATTRIB_RENAMEABLE, ATTRIB_SHOW_CONTEXT_MENU, ATTRIB_TYPE_FILTER, ATTRIB_USERGROUP, ATTRIB_VALUE_GROUP, ATTRIB_VE_LISTENER, bCustomCS, bDebug, bValid, name
 
Constructor Summary
MaterialField()
          Constructs a MaterialField
MaterialField(harmonic.meshGeom.math.Clr3f clr)
           
MaterialField(java.lang.String name)
          Constructs a MaterialField with given name
 
Method Summary
 void assignTo(harmonic.viewer3D.PaintAttrib ap)
          Assign to a PaintAttrib
 void assignTo(harmonic.viewer3D.PaintStruct p)
           
 void assignToColors(harmonic.viewer3D.PaintAttrib ap)
           
 void assignToHighlights(harmonic.viewer3D.PaintAttrib ap)
           
 java.awt.Component createControlWidget()
          Implements abstract control widget creator by returning a MaterialEntry
 boolean linksChildren()
          Return whether this nodes children should be skipped in file write.
 void setAllColors(harmonic.meshGeom.math.Clr3f clr)
          Set all colors except the emissive to given color
 
Methods inherited from class harmonic.mz.data.ModelNode
actionPerformed, addAll, addAlphaed, addField, addField, addField, addFields, addNetworkInput, addNetworkOutput, addNode, addNodeListener, addNodeListener, addNodes, addNodes, addToCurrent, addToGlobals, addToNetworkEditor, addToTemps, addWithUndo, allFieldsAreFinal, applyDataTransfer, areFieldsValid, assignFromMetaFields, assignFromXMLAttributes, assignFromXMLString, assignToMetaFields, assignToXMLAttributes, assignToXMLString, at, bind, canSelect, castSelection, checkFileRead, checkNetworkInput, childCount, clean, clearAttrib, clearNotified, compare, copyFrom, createCopy, createXMLElement, deepCopy, defeatNodeEvents, disableEvents, enableEvents, expectedValidationTime, fileRoot, finalize, findFieldElement, findNode, fromXMLNodes, getAttrib, getBound, getCatagory, getControlWidget, getCurrentNames, getDataTransfer, getDataTransferTypes, getDeleted, getDirectInputs, getDirectOutputs, getEffectors, getEntryListener, getErrorState, getFilterType, getFullName, getHandles, getInstanceURL, getInterpolater, getIsLeaf, getListable, getMark, getMetaFields, getName, getNodeChildren_V, getNodeChildren, getNodeID, getNodeParent, getObjectRep, getPresentable, getPrivate, getReferencePoolName, getRemoteOwner, getRemoveable, getRenameable, getSaveable, getSavedChildren, getSelect, getSeparateDirectInputs, getSeparateDirectOutputs, getSequenced, getSerialNo, getTags, getTentativeSelect, getTransformable, getTransformableParent, getTransient, getTreeName, getTypeImage, getTypeURL, getUnfoldedChildren, getUpdateTime, getUserGroup, getValidates, getValue, getXMLNodes, hasDependants, hasExternalRef, hashKey, hasValidationLock, hideControlWidget, indexOf, initControlWidget, insertNode, interpolate_Linear, interpolate_Quadratic, invalidate, isField, isFinal, isInSubtree, isInTree, isLinked, isNotified, isPurged, isSet, isTemporary, isValid, linkedTo, makeContextMenu, makeFixed, makePrototype, makeReferenced, makeUnreferenced, makeVisibleInGUI, markNotified, mayValidate, nodeChanged, notifyListeners, postAssignFromXMLElement, preAssignToXMLElement, printChildren, printTags, printTree, printTree, purge, purgeFinal, pythonString, remove, removeAll, removeAll, removeHandles, removeNetworkInput, removeNetworkOutput, removeNode, removeNode, removeNode, removeNodeListener, replace, selfNodeChanged, set, setActualName, setAttrib, setBound, setCatagory, setChildrenExcept, setCoordSystem, setCurrentControlWidget, setCurrentNames, setDeleted, setEntryListener, setErrorState, setFromPrototype, setIsField, setIsLeaf, setIsSet, setListable, setMark, setMetaFields, setName, setNodeParent, setPresentable, setPrivate, setRemoteOwner, setRemoveable, setRenameable, setSaveable, setSelect, setSelect, setSequenced, setSerialNo, setTentativeSelect, setTentativeSelect, setToLink, setTransient, setTransientChildren, setUpdateTime, setUserGroup, setValidates, setValidationLock, setValue, setValueGroup, showControlWidget, showControlWidget, showControlWidget, showHandles, startRename, tag, toString, unlinkListeners, unmarkNotified, untag, updateBindable, valChanged, valChanged, validate, valueString
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ambient

public ColorField ambient
Color that is dot product'd with ambient light


diffuse

public ColorField diffuse
Color that is dot product'd with diffuse light


emissive

public ColorField emissive
Color that added on to regarless of lighting


specular

public ColorField specular
Color that reponds to shineness exponent


shininess

public ScalarField shininess
How important is the lighting angle.

Constructor Detail

MaterialField

public MaterialField()
Constructs a MaterialField


MaterialField

public MaterialField(harmonic.meshGeom.math.Clr3f clr)

MaterialField

public MaterialField(java.lang.String name)
Constructs a MaterialField with given name

Method Detail

linksChildren

public boolean linksChildren()
Description copied from class: ModelNode
Return whether this nodes children should be skipped in file write. If true, children are skipped, if false, they are included. False is the default

Overrides:
linksChildren in class ModelNode

setAllColors

public void setAllColors(harmonic.meshGeom.math.Clr3f clr)
Set all colors except the emissive to given color


createControlWidget

public java.awt.Component createControlWidget()
Implements abstract control widget creator by returning a MaterialEntry

Overrides:
createControlWidget in class ModelNode

assignTo

public void assignTo(harmonic.viewer3D.PaintStruct p)

assignTo

public void assignTo(harmonic.viewer3D.PaintAttrib ap)
Assign to a PaintAttrib


assignToColors

public void assignToColors(harmonic.viewer3D.PaintAttrib ap)

assignToHighlights

public void assignToHighlights(harmonic.viewer3D.PaintAttrib ap)