- All Implemented Interfaces:
Transformation
,Pickable
,Raytraceable
,Renderable
,Manageable
,PersistenceCapable
,Shareable
,UserFields
,XObject
,Map
,Serializable
A box with a parameterizable (sinus-)waves on the top side.
Function: a*sin(b*x)
- Author:
- MH
- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class de.grogra.graph.impl.Node
Node.AccessorBridge, Node.FieldAttributeAccessor, Node.NType
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Node.NType
protected float
static final Node.NType.Field
protected float
static final Node.NType.Field
protected float
static final Node.NType.Field
static final int
static final Node.NType.Field
static final int
protected float
static final Node.NType.Field
Fields inherited from class de.grogra.imp3d.objects.Axis
endPosition, endPosition$FIELD, length, length$FIELD, startPosition, startPosition$FIELD
Fields inherited from class de.grogra.imp3d.objects.AxisBase
SCALE_V_MASK, scaleV$FIELD
Fields inherited from class de.grogra.imp3d.objects.ShadedNull
INFINITE_MASK, interior, interior$FIELD, renderAsWireframe, renderAsWireframe$FIELD, shader, shader$FIELD, treatedAsInfinite$FIELD
Fields inherited from class de.grogra.imp3d.objects.Null
transform, transform$FIELD, TRANSFORMING_MASK, transforming$FIELD
Fields inherited from class de.grogra.graph.impl.Node
ADDITIONAL_FIELDS, bits, DELETED, EXTENT_BIT, EXTENT_MASK, extentIndex$FIELD, extentTail$FIELD, HAS_OBSERVERS, IS_INTERPRETIVE, isInterpretive$FIELD, LAST_EXTENT_INDEX, layer$FIELD, MARK, mark$FIELD, MAX_RESOLUTION, MIME_TYPE, MIN_RESOLUTION, MIN_UNUSED_SPECIAL_OF_SOURCE, MIN_UNUSED_SPECIAL_OF_TARGET, name$FIELD, RESOLUTION_BIT, RESOLUTION_MASK, resolution$FIELD
Fields inherited from interface de.grogra.util.Map
DEFAULT_VALUE, EMPTY_MAP
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateRaytracerLeaf
(Object object, boolean asNode, long pathId, GraphState gs) void
draw
(Object object, boolean asNode, RenderState rs) float
getA()
float
getB()
float
protected Node.NType
This method returns theNode.NType
which describes the managed fields of the class of this node.protected float
getPivotShift
(Object object, boolean asNode, GraphState gs) double
Approximation of the surface area of an object (approximated by a box).double
Approximation of the volume (approximated by a box).float
getWidth()
boolean
protected Node
This method returns a new instance of the class of this node.static void
void
Computes intersections of a given ray with this shape.void
setA
(float value) void
setB
(float value) void
setFunctionParameters
(float a, float b) void
setHeight
(float value) void
setShiftPivot
(boolean v) void
setWidth
(float value) Methods inherited from class de.grogra.imp3d.objects.Axis
getEndPosition, getLength, getStartPosition, postTransform, preTransform, setEndPoints, setEndPoints, setEndPoints, setEndPosition, setLength, setStartPosition
Methods inherited from class de.grogra.imp3d.objects.ShadedNull
getInterior, getShader, getSymbolColor, isRenderAsWireframe, isTreatedAsInfinite, setBackShader, setColor, setColor, setFrontShader, setInterior, setMaterial, setRenderAsWireframe, setShader, setShaders, setTreatedAsInfinite
Methods inherited from class de.grogra.imp3d.objects.Null
getLocalTransformation, getTransform, getTranslation, isTransforming, setRotation, setScale, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransforming, setTranslation
Methods inherited from class de.grogra.graph.impl.Node
addEdgeBitsTo, addReference, appendBranchNode, appendBranchNode, appendReferencesTo, clone, clone, cloneGraph, dump, dumpTree, dup, dupFrom, dupnew, dupUnmanagedFields, edgeChanged, fieldModified, findAdjacent, findRefinementType, get, getAccessor, getAccessor, getAttributes, getAxisParent, getBoolean, getBranch, getBranchLength, getBranchNode, getBranchTail, getByte, getChar, getCommonAncestor, getCurrentGraphState, getDirectChildCount, getDouble, getEdgeAttributeAccessor, getEdgeAttributes, getEdgeBitsTo, getEdgeTo, getExtentIndex, getFirst, getFirstEdge, getFloat, getGraph, getId, getIgnored, getIndex, getInstantiator, getInt, getLayer, getLong, getManageableType, getName, getNeighbor, getNext, getNType, getObject, getOrCreateEdgeTo, getOrNull, getPersistenceManager, getPredecessor, getProvider, getResolution, getShort, getSource, getStamp, getSuccessor, getSymbol, getTarget, getTransaction, getUserField, getUserFieldCount, getXClass, getXData, hasName, initProvider, initXClass, insertBranchNode, insertBranchNode, instantiateGraph, isAncestorOf, isDirection, isEncoarseOf, isManagingInstance, isMarked, isRoot, isSource, isTarget, manageableReadResolve, manageableWriteReplace, paramString, removeAll, removeEdgeBitsTo, removeFromChain, removeFromChain, removeReference, setBranch, setBranch, setExtentIndex, setGraphForDeserialization, setIgnored, setLayer, setMark, setName, setResolution, setSuccessor, setSuccessor, specialEdgeAdded, specialEdgeRefModified, specialEdgeRemoved, toString, writeReplace
Methods inherited from class de.grogra.graph.impl.Edge
addEdgeBits, getBitMark, getEdgeBits, getEdgeKeys, getObjectMark, getSpecialEdgeDescriptor, parseEdgeKeys, remove, removeEdgeBits, setBitMark, setEdgeBits, setObjectMark, testEdgeBits
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface de.grogra.persistence.PersistenceCapable
getBitMark, getObjectMark, setBitMark, setObjectMark
-
Field Details
-
SHIFT_PIVOT_MASK
public static final int SHIFT_PIVOT_MASK- See Also:
-
USED_BITS
public static final int USED_BITS- See Also:
-
width
protected float width -
height
protected float height -
a
protected float a -
b
protected float b -
$TYPE
-
width$FIELD
-
height$FIELD
-
shiftPivot$FIELD
-
a$FIELD
-
b$FIELD
-
-
Constructor Details
-
Lamella
public Lamella() -
Lamella
public Lamella(float length, float a, float b) -
Lamella
public Lamella(float length, float a, float b, boolean shiftPivot) -
Lamella
public Lamella(float length, float width, float height, float a, float b)
-
-
Method Details
-
setFunctionParameters
public void setFunctionParameters(float a, float b) -
getPivotShift
- Overrides:
getPivotShift
in classAxis
-
pick
-
pick
public void pick(Object object, boolean asNode, Point3d origin, Vector3d direction, Matrix4d t, PickList list) Description copied from interface:Pickable
Computes intersections of a given ray with this shape.- Specified by:
pick
in interfacePickable
- Parameters:
object
- the object of which this shape is an attributeasNode
-true
iff object is a nodeorigin
- the origin of the ray, in local coordinatesdirection
- the direction of the ray, in local coordinatest
- the transformation from local coordinates to world coordinateslist
- the list to which intersections have to be added
-
draw
- Specified by:
draw
in interfaceRenderable
-
createRaytracerLeaf
- Specified by:
createRaytracerLeaf
in interfaceRaytraceable
-
getNTypeImpl
Description copied from class:Node
This method returns theNode.NType
which describes the managed fields of the class of this node. This method has to be implemented in every concrete subclass.- Overrides:
getNTypeImpl
in classShadedNull
- Returns:
- type describing the managed fields of the class of this node
-
newInstance
Description copied from class:Node
This method returns a new instance of the class of this node. This method has to be implemented in every concrete subclass.- Overrides:
newInstance
in classShadedNull
- Returns:
- new instance of class of this node
-
getWidth
public float getWidth() -
setWidth
public void setWidth(float value) -
getHeight
public float getHeight() -
setHeight
public void setHeight(float value) -
getA
public float getA() -
setA
public void setA(float value) -
getB
public float getB() -
setB
public void setB(float value) -
isShiftPivot
public boolean isShiftPivot() -
setShiftPivot
public void setShiftPivot(boolean v) -
getSurfaceArea
public double getSurfaceArea()Approximation of the surface area of an object (approximated by a box). Intersection with other object are not considered.The total area will be calculated. A=2*(a*b + a*c + b*c)- Overrides:
getSurfaceArea
in classShadedNull
- Returns:
- area
-
getVolume
public double getVolume()Approximation of the volume (approximated by a box). Intersection with other object are not considered.The total volume will be calculated. V=a*b*c- Overrides:
getVolume
in classShadedNull
- Returns:
- volume
-