Package mgui.interfaces.shapes
Class PointSet3DInt
java.lang.Object
mgui.interfaces.AbstractInterfaceObject
mgui.interfaces.shapes.InterfaceShape
mgui.interfaces.shapes.Shape3DInt
mgui.interfaces.shapes.PointSet3DInt
- All Implemented Interfaces:
java.awt.datatransfer.Transferable
,java.lang.Comparable<InterfaceShape>
,AttributeListener
,AttributeObject
,InterfaceObject
,PersistentObject
,VariableObject
,PopupMenuObject
,NamedObject
,InterfaceQueryObject
,InterfaceShapeQueryObject
,VertexDataColumnListener
,InterfaceTransferable
,TreeObject
,CleanableObject
,XMLObject
,IconObject
,org.jogamp.java3d.GeometryUpdater
- Direct Known Subclasses:
Graph3DInt
,Mesh3DInt
public class PointSet3DInt extends Shape3DInt
Shape interface for a set of 3D points.
- Since:
- 1.0
- Version:
- 1.0
- Author:
- Andrew Reid
-
Nested Class Summary
Nested classes/interfaces inherited from class mgui.interfaces.shapes.Shape3DInt
Shape3DInt.VertexShapeTransformer
Nested classes/interfaces inherited from class mgui.interfaces.shapes.InterfaceShape
InterfaceShape.VertexDataSet
Nested classes/interfaces inherited from interface mgui.interfaces.xml.XMLObject
XMLObject.XMLEncoding, XMLObject.XMLType
-
Field Summary
Fields inherited from class mgui.interfaces.shapes.Shape3DInt
boundBox, boundBoxNode, bounds_group, bounds_shape, boundSphere, centerPt, children2D, creatable_scene_node, drawEngine2D, group_node, has_3d_node, hasCameraListener, idStr, nodeListener, parent2D, scene3DObject, sceneNode, selected_vertices_group, shape_group, shape3d, vertex_shape_transformer, vertices_group
Fields inherited from class mgui.interfaces.shapes.InterfaceShape
attributes, constraints, data_columns, icon, ID, is_auxiliary, is_registered, isDrawable, isImageShape, isLight, isOverridden, last_column_added, last_column_changed, last_column_removed, linked_colour_maps, loader_options, notifyListeners, overrideAttr, parent_set, selected_nodes, shapeListeners, vertex_data, writer_options, xml_current_column, xml_current_loader, xml_current_shape, xml_current_shape_options, xml_current_type, xml_current_url, xml_is_vertex_data, xml_root_dir
Fields inherited from class mgui.interfaces.AbstractInterfaceObject
isDestroyed, tree_nodes
-
Constructor Summary
Constructors Constructor Description PointSet3DInt()
PointSet3DInt(PointSet3D set)
PointSet3DInt(PointSet3D set, java.lang.String name)
-
Method Summary
Modifier and Type Method Description void
appendPoints(PointSet3DInt points)
Appendspoints
to this point set.void
appendPoints(PointSet3DInt points, boolean update)
Appendspoints
to this point set.void
attributeUpdated(AttributeEvent e)
Responds to an update in one of this shape's attributes.int[]
getDimensions()
Returns the dimensions of this object as an array of integersShape
getGeometryInstance()
Returns an instance of thisInterfaceShape
's geometry class.protected org.jogamp.java3d.Appearance
getLabelAppearance(java.lang.Integer index)
java.lang.String
getLocalName()
Returns the local name associated with this XML object.PointSet3D
getPointSet()
protected Shape2DInt
getShape2D(Plane3D plane, float above_dist, float below_dist, org.jogamp.vecmath.Matrix4d matrix)
To be overridden by subclasses implementing a 2D representationprotected float
getVertexAlpha(int index)
protected org.jogamp.java3d.Appearance
getVertexAppearance(int index)
Returns the appearance of vertex i.java.awt.Color
getVertexColour(int index)
Returns the colour of vertex i; depends on whether theShowData
attribute istrue
, and this shape has a current vertex data column.protected org.jogamp.java3d.Shape3D
getVerticesAsPoints()
protected org.jogamp.java3d.Node
getVerticesAsSpheres()
java.lang.String
getXML(int tab, XMLObject.XMLType type)
boolean
needsRedraw(Attribute<?> a)
Returnstrue
if a change toattribute
will require a redraw of this shape.protected void
setIcon()
void
setScene3DObject(boolean make_live)
Sets this ShapeInt's Java3D scene node from its current geometry and rendering attributes.java.lang.String
toString()
Methods inherited from class mgui.interfaces.shapes.Shape3DInt
addShape2DChild, clear2DChildren, contains, copyAttributes, crossesPlane, deregisterCameraListener, destroy, draw2D, drawShape2D, drawShape2D, drawShape2D, fireChildren2D, fireChildren2DModified, fireShapeListeners, fireShapeModified, geometryChanged, getAlpha, getBoundBox, getBoundBoxNode, getBoundSphere, getCameraListener, getCenterOfGravity, getClosestVertex, getDTD, getFullName, getGeometricCenter, getGeometry, getIcon, getInheritingAttribute, getLabelColour, getLabelFont, getLabelScale, getLineColour, getLineStyle, getModifiedAttribute, getParent2D, getParentAttribute, getPopupMenu, getPopupMenuLength, getProximity, getScene3DObject, getScene3DObject, getShape, getShape2D, getShape2DInt, getShape2DInt, getShapeSceneNode, getShapeSceneNode, getShortXML, getTransferData, getTransferDataFlavors, getTreeLabel, getVertex, getVertexColour, getVertexCount, getVertexScale, getVertexScale, getVertexSelection, getVertices, handlePopupEvent, hasAlpha, hasAlpha, hasCameraListener, hasParentShape, init, isDataFlavorSupported, isHeritableAttribute, isInheritingAttribute, isLive, issueTreeNode, performTransfer, registerCameraListener, releaseScene3DChildren, removeShape2DChild, setAlpha, setBoundBoxNode, setCreatableSceneNode, setCurrentColumn, setGeometry, setGraphic3DPopupMenu, setLabelColour, setLabelFont, setLabelScale, setLineStyle, setLive, setParent2D, setScene3DObject, setSelectedVertices, setShape, setShapeSceneNode, setShowSelectedVertices, setVertexSelection, showPopupMenu, showVertices, showVertices, updateChildren2D, updateData, updateSelectedVertices, updateShape, updateVertices
Methods inherited from class mgui.interfaces.shapes.InterfaceShape
_init, addDataLink, addShapeListener, addVertexData, addVertexData, addVertexData, addVertexData, addVertexData, addVertexData, addVertexData, addVertexData, addVertexData, cleanTreeNodes, compareTo, finalizeAfterXML, fromVariable, getAllVertexData, getAttribute, getAttributes, getAttributeValue, getByReferenceUrls, getColourMap, getColourMap, getConstraint, getConstraints, getCurrentColumn, getCurrentDataColumn, getCurrentVertexData, getDataLink, getDataMax, getDataMin, getDatumAtVertex, getDatumAtVertex, getDefaultColourMap, getFileLoader, getFileWriter, getID, getInheritedAttribute, getInheritedAttributes, getInheritedAttributeValue, getLastColumnAdded, getLastColumnChanged, getLastColumnRemoved, getLegalName, getLinkedVertexData, getLinkedVertexDatum, getLoaderOptions, getModel, getName, getNameMap, getNameMap, getNonLinkedDataColumns, getObjectIcon, getParentSet, getPopupMenu, getSourceURL, getUnit, getUrlReference, getVariables, getVariableType, getVariableValue, getVariableValues, getVertexData, getVertexData, getVertexDataColumn, getVertexDataColumnCount, getVertexDataColumnNames, getVertexDataColumns, getVertexDataMap, getWriterOptions, getXML, getXML, getXMLSchema, handleXMLElementEnd, handleXMLElementStart, handleXMLString, hasAttribute, hasColumn, hasData, inheritAttributesFromParent, isAuxiliaryShape, isAuxiliaryShape, isDestroyed, isDrawable, isImageShape, isLegalName, isLight, isSelectable, isVisible, newVertexData, queryObject, queryShapeAtVertex, register, removeColourMap, removeDataLink, removeNameMap, removeShapeListener, removeVertexData, renameVertexDataColumn, setAttribute, setAttributes, setColourMap, setColourMap, setConstraint, setCurrentColumn, setDataMax, setDataMax, setDataMax, setDataMin, setDataMin, setDataMin, setDatumAtVertex, setDatumAtVertex, setDatumAtVertex, setDatumAtVertex, setDefaultColourMap, setDefaultColourMap, setFileLoader, setFileLoader, setFileWriter, setID, setLoaderOptions, setName, setNameMap, setOverride, setParentSet, setSelectable, setTreeNode, setUnit, setUrlReference, setVariableValues, setVariableValues, setVertexData, setVertexData, setVertexData, setVertexDataMap, setVisible, setWriterOptions, setXMLRoot, show2D, show2D, show3D, show3D, showData, showData, supportsVariableType, toVariable, unsetOverride, updateDataColumns, vertexDataColumnChanged, vertexDataColumnColourMapChanged, writeXML, writeXML, writeXML
Methods inherited from class mgui.interfaces.AbstractInterfaceObject
clean, updateTreeNodes
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface mgui.interfaces.util.CleanableObject
clean
-
Constructor Details
-
PointSet3DInt
public PointSet3DInt() -
PointSet3DInt
-
PointSet3DInt
-
-
Method Details
-
getVertexAppearance
protected org.jogamp.java3d.Appearance getVertexAppearance(int index)Description copied from class:Shape3DInt
Returns the appearance of vertex i.- Overrides:
getVertexAppearance
in classShape3DInt
- Returns:
-
getVertexColour
public java.awt.Color getVertexColour(int index)Description copied from class:Shape3DInt
Returns the colour of vertex i; depends on whether theShowData
attribute istrue
, and this shape has a current vertex data column.- Overrides:
getVertexColour
in classShape3DInt
- Returns:
-
getVertexAlpha
protected float getVertexAlpha(int index) -
getLabelAppearance
protected org.jogamp.java3d.Appearance getLabelAppearance(java.lang.Integer index) -
getGeometryInstance
Description copied from class:InterfaceShape
Returns an instance of thisInterfaceShape
's geometry class.- Overrides:
getGeometryInstance
in classShape3DInt
- Returns:
-
setIcon
protected void setIcon()- Overrides:
setIcon
in classShape3DInt
-
attributeUpdated
Description copied from class:Shape3DInt
Responds to an update in one of this shape's attributes.Subclasses should override and call this super method AFTER handling the attribute change appropriately. Subclasses should also override needsRedraw() to indicate whether the scene node should be regenerated.
- Specified by:
attributeUpdated
in interfaceAttributeListener
- Overrides:
attributeUpdated
in classShape3DInt
- Parameters:
e
- anAttributeEvent
specifying which attribute has been changed
-
getPointSet
-
setScene3DObject
public void setScene3DObject(boolean make_live)Description copied from class:Shape3DInt
Sets this ShapeInt's Java3D scene node from its current geometry and rendering attributes. This node should be retrieved using theShape3DInt.getShapeSceneNode()
method. A scene node will only created if one of these conditions is met:- The shape is auxiliary (i.e., not a model shape, but a helper shape such as a section polygon)
- The shape is associated with a ShapeModel3D, and this model is live (is associated with at least one Java3D scene graph).
- Overrides:
setScene3DObject
in classShape3DInt
-
getXML
- Overrides:
getXML
in classInterfaceShape
-
getVerticesAsPoints
protected org.jogamp.java3d.Shape3D getVerticesAsPoints() -
getVerticesAsSpheres
protected org.jogamp.java3d.Node getVerticesAsSpheres() -
needsRedraw
Description copied from class:InterfaceShape
Returnstrue
if a change toattribute
will require a redraw of this shape.- Overrides:
needsRedraw
in classShape3DInt
- Returns:
-
getShape2D
protected Shape2DInt getShape2D(Plane3D plane, float above_dist, float below_dist, org.jogamp.vecmath.Matrix4d matrix)Description copied from class:Shape3DInt
To be overridden by subclasses implementing a 2D representation- Overrides:
getShape2D
in classShape3DInt
- Parameters:
plane
- Plane on which to renderabove_dist
- Distance above plane within which to project a shapebelow_dist
- Distance below plane within which to project a shape- Returns:
-
getDimensions
public int[] getDimensions()Description copied from interface:VariableObject
Returns the dimensions of this object as an array of integers- Specified by:
getDimensions
in interfaceVariableObject
- Overrides:
getDimensions
in classShape3DInt
- Returns:
- the dimensions of this object
-
toString
public java.lang.String toString()- Overrides:
toString
in classShape3DInt
-
getLocalName
public java.lang.String getLocalName()Description copied from interface:XMLObject
Returns the local name associated with this XML object.- Specified by:
getLocalName
in interfaceXMLObject
- Overrides:
getLocalName
in classShape3DInt
- Returns:
-
appendPoints
Appendspoints
to this point set. Ifpoints
has vertex data with the same name as this point set, transfers those values. Note that this may result in truncation if the data types do not match (e.g., mappingMguiDouble
toMguiInteger
).- Parameters:
points
-
-
appendPoints
Appendspoints
to this point set. Ifpoints
has vertex data with the same name as this point set, transfers those values. Note that this may result in truncation if the data types do not match (e.g., mappingMguiDouble
toMguiInteger
). Name maps will also be transferred: (1) if they exist already in this shape; and (2) only for indices not already in the current name map.- Parameters:
points
-
-