219 #include "vtkCommonDataModelModule.h"
228 class vtkGraphEdgePoints;
244 class vtk_edge_iterator;
245 class vtk_out_edge_pointer_iterator;
246 class vtk_in_edge_pointer_iterator;
346 void ComputeBounds();
500 virtual void CopyStructure(
vtkGraph* g);
507 virtual bool CheckedShallowCopy(
vtkGraph* g);
514 virtual bool CheckedDeepCopy(
vtkGraph* g);
519 virtual void Squeeze();
551 bool IsSameStructure(
vtkGraph* other);
600 double p[3] = { x, y, z };
601 this->SetEdgePoint(e, i, p);
607 void AddEdgePoint(
vtkIdType e,
const double x[3]);
610 double p[3] = { x, y, z };
611 this->AddEdgePoint(e, p);
619 void ShallowCopyEdgePoints(
vtkGraph* g);
620 void DeepCopyEdgePoints(
vtkGraph* g);
702 void AddEdgeInternal(
716 void RemoveVertexInternal(
vtkIdType v,
bool directed);
722 void RemoveEdgeInternal(
vtkIdType e,
bool directed);
738 virtual bool IsStructureValid(
vtkGraph* g) = 0;
743 virtual void CopyInternal(
vtkGraph* g,
bool deep);
768 void SetEdgePoints(vtkGraphEdgePoints* edgePoints);
774 void ForceOwnership();
787 void BuildEdgeList();
825 static double DefaultPoint[3];
839 void operator=(
const vtkGraph&) =
delete;
helper for the vtkGraph class that allows the graph to be distributed across multiple memory spaces...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkDataObject * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
vtkDataSetAttributes * VertexData
The vertex and edge data.
vtkDataSetAttributes * EdgeData
The vertex and edge data.
void GetBounds(T a, double bds[6])
virtual vtkFieldData * GetAttributesAsFieldData(int type)
Returns the attributes of the data object as a vtkFieldData.
Forward declaration required for Boost serialization.
An array holding vtkVariants.
vtkIdTypeArray * EdgeList
The optional mapping from edge id to source/target ids.
vtkTypeUInt32 vtkMTimeType
Iterates through adjacent vertices in a graph.
bool VTKCOMMONDATAMODEL_EXPORT operator!=(vtkEdgeBase e1, vtkEdgeBase e2)
record modification and/or execution time
Iterates through all edges in a graph.
Representation of a single graph edge.
vtkEdgeBase(vtkIdType id)
virtual void Initialize()
Restore data object to initial state,.
dynamic, self-adjusting array of vtkIdType
std::pair< boost::graph_traits< vtkGraph * >::vertex_iterator, boost::graph_traits< vtkGraph * >::vertex_iterator > vertices(vtkGraph *g)
vtkDistributedGraphHelper * DistributedHelper
The distributed graph helper.
vtkTimeStamp ComputeTime
Time at which bounds were computed.
void GetPoint(const int i, const int j, const int k, double pnt[3])
A atomic type representing the union of many types.
Base class for graph data types.
bool VTKCOMMONDATAMODEL_EXPORT operator==(vtkEdgeBase e1, vtkEdgeBase e2)
a simple class to control print indentation
VTKCOMMONDATAMODEL_EXPORT ostream & operator<<(ostream &out, vtkEdgeBase e)
vtkGraphEdgePoints * EdgePoints
The structure for holding the edge points.
void SetEdgePoint(vtkIdType e, vtkIdType i, double x, double y, double z)
Iterates through all incoming edges to a vertex.
Internal representation of vtkGraph.
represent and manipulate attribute data in a dataset
#define VTK_SIZEHINT(...)
virtual unsigned long GetActualMemorySize()
Return the actual size of the data in kibibytes (1024 bytes).
virtual vtkIdType GetNumberOfElements(int type)
Get the number of elements for a specific attribute type (POINT, CELL, etc.).
vtkPoints * Points
The vertex locations.
object to represent cell connectivity
Iterates all vertices in a graph.
vtkOutEdgeType(vtkIdType t, vtkIdType id)
int GetDataObjectType() override
Return what type of dataset this is.
vtkGraphInternals * Internals
The adjacency list internals of this graph.
Iterates through all outgoing edges from a vertex.
vtkMTimeType GetMTime() override
Data objects are composite objects and need to check each part for MTime.
general representation of visualization data
vtkInEdgeType(vtkIdType s, vtkIdType id)
virtual void DeepCopy(vtkDataObject *src)
Shallow and Deep copy.
vtkEdgeType(vtkIdType s, vtkIdType t, vtkIdType id)
represent and manipulate 3D points
void AddEdgePoint(vtkIdType e, double x, double y, double z)
virtual void ShallowCopy(vtkDataObject *src)
Shallow and Deep copy.
represent and manipulate fields of data
std::pair< boost::graph_traits< vtkGraph * >::edge_iterator, boost::graph_traits< vtkGraph * >::edge_iterator > edges(vtkGraph *g)