harmonic.cad.shapes
Class PolygonSplineShape

java.lang.Object
  |
  +--harmonic.mz.data.ModelNode
        |
        +--harmonic.mz.data.ShapeNode
              |
              +--harmonic.cad.shapes.CAD_ShapeNode
                    |
                    +--harmonic.cad.shapes.CAD_LineShapeNode
                          |
                          +--harmonic.cad.shapes.PolygonShape
                                |
                                +--harmonic.cad.shapes.PolygonSplineShape
All Implemented Interfaces:
java.awt.event.ActionListener, harmonic.mz.data.DataNode, harmonic.mz.gui.Documentable, java.util.EventListener, harmonic.mz.data.Interpolater, harmonic.meshGeom.math.MarkableObject, harmonic.mz.event.NodeListener, harmonic.viewer3D.ShapeOwner, harmonic.mz.data.Transformable

public class PolygonSplineShape
extends PolygonShape

This defines a smooth version of a polygon.


Field Summary
 harmonic.mz.data.fields.BooleanField matchEnd
          Whether to force the smoothed polygon to the control polygons end
static int PBLEND
           
 harmonic.mz.data.fields.NodeSetField polygon
          Polygon to smooth
 harmonic.mz.data.fields.IntField splineSubdivision
          The number of points
 harmonic.mz.data.fields.ExclusiveIntField type
          Smoothing method, one of the enumerations in this class
static int UNIFORM_BSPLINE_3
           
static int UNIFORM_BSPLINE_4
           
 
Fields inherited from class harmonic.cad.shapes.PolygonShape
effField, geom, origGeom
 
Fields inherited from class harmonic.cad.shapes.CAD_LineShapeNode
lineColor, lineWidth, painter
 
Fields inherited from class harmonic.cad.shapes.CAD_ShapeNode
bDiscreet, bEditing, bRoughPolygonization, idealEdges
 
Fields inherited from class harmonic.mz.data.ShapeNode
ANY_GEOM, ARRAY_GEOM, ATTRIBUTE_FIELD_TYPE, bAssignMaterialColors, bAttribsValid, bBaseGeometryValid, bSelectionValid, bTSelectionValid, bVisibilityValid, coordSystem, COORDSYSTEM_FIELD_TYPE, existingPainters, fastPainters, GEOMETRY_FIELD_TYPE, LINES_GEOM, localKludge, material, painters, POINT_GEOM, POLYGON_GEOM, REGION_GEOM, SOLID_GEOM, SURFACE_GEOM, transparency, visibility
 
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
PolygonSplineShape()
           
PolygonSplineShape(harmonic.mz.data.ShapeNode polygon, int type, boolean bMatchEnd, int cmode)
           
 
Method Summary
 java.lang.String areFieldsValid()
           
 harmonic.meshGeom.geom.Geom calcGeom()
           
 void calcPointAt(harmonic.meshGeom.math.Pnt3f p, float s)
           
 void calcTangentAt(harmonic.meshGeom.math.Vec3f v, float s)
           
 void checkFileRead()
           
 void getPointSnaps(java.lang.String type, java.util.Vector points)
           
 
Methods inherited from class harmonic.cad.shapes.PolygonShape
addEffector, applyEffectors, calcPolygonProps, childPointSnaps, getEffectors, getGeom, getUserVertexKey, getUserVerticies, isClosed, makeContextMenu, nCurve, pointAt, polyAt, polyPainterAt, printUserVerticies, purgeFinal, removeEffector, tangentAt, validateGeometry
 
Methods inherited from class harmonic.cad.shapes.CAD_LineShapeNode
calcRoughPolygonization, validate, validateAttribs
 
Methods inherited from class harmonic.cad.shapes.CAD_ShapeNode
addField, checkFields, setToLink, showPointHandles
 
Methods inherited from class harmonic.mz.data.ShapeNode
addFastGeometry, addFastGeometry, addFastGeometry, addFastGeometry, addFastPainter, addGeometry, addGeometry, addGeometry, addGeometry, addNetworkOutput, addPainter, addWithUndo, beginTransform, bigValidation, calcGeometricProps, calcSurfaceArea, calcVolume, checkRequirements, clearFastGeometries, clearFastPainters, clearGeometries, clearGeometryCache, clearPainters, defaultPickPriority, endTransform, expectedValidationTime, fastPainterCount, findPointSnaps, getCachedGeometries, getCachedGeometry, getChildRequirements, getCoordSystem, getDataTransfer, getDataTransferTypes, getDragable, getEdges, getFastPainter, getFastPainters, getFitable, getGDIEdges, getGeom, getGeom, getGeomAt, getGeoms, getGeoms, getGeoms, getGlobalPerLocal, getILAEdges, getMoveableCoordSystem, getObjectChildren, getPainter, getPainter, getPainters, getPainters, getPainters, getPaintOnTransient, getPickable, getRequirements, getSerializeGeometry, getShapeDefOwner, getTransformable, getTypeImage, getViewpointDependantGeometry, getVisibility, hasFixedCS, hasGeometryLock, hide, hide, invalidate, invalidateAttribs, invalidateCoordSystem, invalidateGeometry, invalidateGeometryDependants, isAttribsValid, isGeomComposite, isGeometryValid, isSelectionValid, isTentativeSelectionValid, isVisibilityValid, makeContextMenu_ShapeFns, makeContextMenu, nodeChanged, painterCount, processMouseDragged, processMouseEntered, processMouseExited, processMouseMoved, processMousePressed, processMouseReleased, purge, removeFastPainter, removePainter, scaleCoordSystem, selfNodeChanged, setDragable, setExclusiveVisibility, setFieldCoordSystems, setFitable, setMoveableCoordSystem, setPaintOnTransient, setPickable, setPickPriority, setSelect, setSerializeGeometry, setTempVisibility, setTentativeSelect, setTransform, setTransient, setViewpointDependantGeometry, setVisibility, shouldSpawnThread, show, show, transferAttributes, transferAttributes, transform, transformFields, translateCoordSystem, validateSelection, validateTransform
 
Methods inherited from class harmonic.mz.data.ModelNode
actionPerformed, addAll, addAlphaed, addField, addField, addField, addFields, addNetworkInput, addNode, addNodeListener, addNodeListener, addNodes, addNodes, addToCurrent, addToGlobals, addToNetworkEditor, addToTemps, allFieldsAreFinal, applyDataTransfer, assignFromMetaFields, assignFromXMLAttributes, assignFromXMLString, assignToMetaFields, assignToXMLAttributes, assignToXMLString, at, bind, canSelect, castSelection, checkNetworkInput, childCount, clean, clearAttrib, clearNotified, compare, copyFrom, createControlWidget, createCopy, createXMLElement, deepCopy, defeatNodeEvents, disableEvents, enableEvents, fileRoot, finalize, findFieldElement, findNode, fromXMLNodes, getAttrib, getBound, getCatagory, getControlWidget, getCurrentNames, getDeleted, getDirectInputs, getDirectOutputs, 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, getTransformableParent, getTransient, getTreeName, getTypeURL, getUnfoldedChildren, getUpdateTime, getUserGroup, getValidates, getValue, getXMLNodes, hasDependants, hasExternalRef, hashKey, hasValidationLock, hideControlWidget, indexOf, initControlWidget, insertNode, interpolate_Linear, interpolate_Quadratic, isField, isFinal, isInSubtree, isInTree, isLinked, isNotified, isPurged, isSet, isTemporary, isValid, linkedTo, linksChildren, makeFixed, makePrototype, makeReferenced, makeUnreferenced, makeVisibleInGUI, markNotified, mayValidate, notifyListeners, postAssignFromXMLElement, preAssignToXMLElement, printChildren, printTags, printTree, printTree, pythonString, remove, removeAll, removeAll, removeHandles, removeNetworkInput, removeNetworkOutput, removeNode, removeNode, removeNode, removeNodeListener, replace, 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, setSequenced, setSerialNo, setTentativeSelect, setTransientChildren, setUpdateTime, setUserGroup, setValidates, setValidationLock, setValue, setValueGroup, showControlWidget, showControlWidget, showControlWidget, showHandles, startRename, tag, toString, unlinkListeners, unmarkNotified, untag, updateBindable, valChanged, valChanged, valueString
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

polygon

public harmonic.mz.data.fields.NodeSetField polygon
Polygon to smooth


type

public harmonic.mz.data.fields.ExclusiveIntField type
Smoothing method, one of the enumerations in this class


matchEnd

public harmonic.mz.data.fields.BooleanField matchEnd
Whether to force the smoothed polygon to the control polygons end


splineSubdivision

public harmonic.mz.data.fields.IntField splineSubdivision
The number of points


PBLEND

public static final int PBLEND
See Also:
Constant Field Values

UNIFORM_BSPLINE_3

public static final int UNIFORM_BSPLINE_3
See Also:
Constant Field Values

UNIFORM_BSPLINE_4

public static final int UNIFORM_BSPLINE_4
See Also:
Constant Field Values
Constructor Detail

PolygonSplineShape

public PolygonSplineShape()

PolygonSplineShape

public PolygonSplineShape(harmonic.mz.data.ShapeNode polygon,
                          int type,
                          boolean bMatchEnd,
                          int cmode)
Method Detail

areFieldsValid

public java.lang.String areFieldsValid()
Overrides:
areFieldsValid in class harmonic.mz.data.ModelNode

checkFileRead

public void checkFileRead()
Overrides:
checkFileRead in class harmonic.mz.data.ModelNode

calcGeom

public harmonic.meshGeom.geom.Geom calcGeom()
Overrides:
calcGeom in class CAD_LineShapeNode

getPointSnaps

public void getPointSnaps(java.lang.String type,
                          java.util.Vector points)
Overrides:
getPointSnaps in class harmonic.mz.data.ShapeNode

calcTangentAt

public void calcTangentAt(harmonic.meshGeom.math.Vec3f v,
                          float s)
Overrides:
calcTangentAt in class PolygonShape

calcPointAt

public void calcPointAt(harmonic.meshGeom.math.Pnt3f p,
                        float s)
Overrides:
calcPointAt in class PolygonShape