public class PointSelection extends Object implements uk.ac.starlink.ttools.plot.PlotData
Modifier and Type | Class and Description |
---|---|
static class |
PointSelection.TableMask
Struct-type class which defines an association of a TopcatModel
and a BitSet.
|
Constructor and Description |
---|
PointSelection(PointSelector[] selectors,
int[][] subsetPointers,
String[] subsetNames)
Constructs a new selection.
|
Modifier and Type | Method and Description |
---|---|
uk.ac.starlink.ttools.plot.PlotData |
createPlotData(Points points)
Returns a PlotData object based on this point selection but with a
given points object.
|
boolean |
equals(Object otherObject)
Equals is implemented efficiently to identify two PointSelection
objects which will behave in the same way.
|
Points |
getEmptyPoints()
Returns a dummy Points object compatible with this selection.
|
int |
getNdim() |
int |
getNerror() |
long |
getPointRow(long ipoint)
Given a point index from this selection, returns the row number
in its table (see
getPointTable(long) that it represents. |
Points |
getPoints() |
uk.ac.starlink.ttools.plot.PointSequence |
getPointSequence() |
long[] |
getPointsForRow(TopcatModel tcModel,
long lrow)
Given a table and a row index into that table, returns the point
indices of any points in this selection which correspond to that row.
|
TopcatModel |
getPointTable(long ipoint)
Given a point index from this selection, returns the table
that it comes from.
|
int |
getSetCount() |
SetId[] |
getSetIds()
Returns the list of set ID labels which identify where each set
comes from.
|
String |
getSetName(int iset) |
uk.ac.starlink.ttools.plot.Style |
getSetStyle(int iset) |
uk.ac.starlink.ttools.plot.Style[] |
getStyles()
Returns a list of styles for subset plotting.
|
RowSubset[] |
getSubsets()
Returns a list of subsets to be plotted.
|
PointSelection.TableMask[] |
getTableMasks(BitSet pointMask)
Given a bit vector which represents a selection of the points
in this object, returns an array of TableMask objects which
represent selections of rows within any of the tables this
object knows about.
|
int |
hashCode() |
boolean |
hasLabels() |
Points |
readPoints(BoundedRangeModel progress)
Reads a data points list for this selection.
|
boolean |
sameAxes(PointSelection other)
Determines if the axes defining this point selection are the same
as those for another one.
|
boolean |
sameData(PointSelection other)
Determines if the data required to plot this point selection
is the same as the data required to plot another one.
|
void |
setPoints(Points points) |
public PointSelection(PointSelector[] selectors, int[][] subsetPointers, String[] subsetNames)
As well as the point selectors themselves which hold almost all
the required state, an additional array, subsetPointers
is given to indicate in what order the subsets should be plotted.
Each element of this array is a two-element int array; the first
element is the index of the point selector, and the second element
the index of the subset within that selector.
selectors
- array of PointSelector objects whose current state
determines the points to be plottedsubsetPointers
- pointers to subsetssubsetNames
- labels to be used for the subsets in
subsetPointers
public Points readPoints(BoundedRangeModel progress) throws IOException, InterruptedException
sameData(uk.ac.starlink.topcat.plot.PointSelection)
). If a progress bar model is supplied it
will be updated as the read progresses.
This method checks for interruption status on its calling thread. If an interruption is made, it will cease calculating and throw an InterruptedException.
progress
- bar model to be updated as read is doneInterruptedException
- if the calling thread is interruptedIOException
public Points getEmptyPoints()
getCount()==0
public RowSubset[] getSubsets()
readPoints(javax.swing.BoundedRangeModel)
.public uk.ac.starlink.ttools.plot.Style[] getStyles()
getSubsets()
.public int getSetCount()
getSetCount
in interface uk.ac.starlink.ttools.plot.PlotData
public String getSetName(int iset)
getSetName
in interface uk.ac.starlink.ttools.plot.PlotData
public uk.ac.starlink.ttools.plot.Style getSetStyle(int iset)
getSetStyle
in interface uk.ac.starlink.ttools.plot.PlotData
public int getNdim()
getNdim
in interface uk.ac.starlink.ttools.plot.PlotData
public int getNerror()
getNerror
in interface uk.ac.starlink.ttools.plot.PlotData
public boolean hasLabels()
hasLabels
in interface uk.ac.starlink.ttools.plot.PlotData
public uk.ac.starlink.ttools.plot.PlotData createPlotData(Points points)
points
- fixed points datapublic uk.ac.starlink.ttools.plot.PointSequence getPointSequence()
getPointSequence
in interface uk.ac.starlink.ttools.plot.PlotData
public void setPoints(Points points)
public Points getPoints()
public SetId[] getSetIds()
getSubsets()
.public TopcatModel getPointTable(long ipoint)
ipoint
- point indexgetPointRow(long)
public long getPointRow(long ipoint)
getPointTable(long)
that it represents.ipoint
- point indexpublic long[] getPointsForRow(TopcatModel tcModel, long lrow)
tcModel
- tablelrow
- row index in tcModel
public PointSelection.TableMask[] getTableMasks(BitSet pointMask)
pointMask
- bit vector reprsenting a subset of the points
in this objectpublic boolean sameAxes(PointSelection other)
sameData(uk.ac.starlink.topcat.plot.PointSelection)
,
except that PointSelections with different error or label information
can be considered to have the same axes.other
- comparison objectpublic boolean sameData(PointSelection other)
readPoints(javax.swing.BoundedRangeModel)
will
return the same result for this object and other
.other
- comparison objectpublic boolean equals(Object otherObject)
Copyright © 2003-2025 CCLRC: Council for the Central Laboratory of the Research Councils. All Rights Reserved.