Package uk.ac.starlink.ttools.plot2.geom
Class PlaneSurfaceFactory.Profile
java.lang.Object
uk.ac.starlink.ttools.plot2.geom.PlaneSurfaceFactory.Profile
- Enclosing class:
PlaneSurfaceFactory
Profile class which defines fixed configuration items for
a PlaneSurface.
Instances of this class are normally obtained from the
createProfile
method.-
Constructor Summary
ConstructorsConstructorDescriptionProfile
(boolean xlog, boolean ylog, boolean xflip, boolean yflip, String xlabel, String ylabel, DoubleUnaryOperator x2func, DoubleUnaryOperator y2func, String x2label, String y2label, Captioner captioner, SideFlags annotateflags, double xyfactor, double xcrowd, double ycrowd, boolean minor, boolean shadow, Color gridcolor, Color axlabelcolor) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionfixAnnotation
(SideFlags annotateFlags, boolean addSecondary) Returns a new profile instance the same as this one, except that the flags for which sides to annotate are replaced.boolean[]
Returns a 2-element array giving X and Y log flags.
-
Constructor Details
-
Profile
public Profile(boolean xlog, boolean ylog, boolean xflip, boolean yflip, String xlabel, String ylabel, DoubleUnaryOperator x2func, DoubleUnaryOperator y2func, String x2label, String y2label, Captioner captioner, SideFlags annotateflags, double xyfactor, double xcrowd, double ycrowd, boolean minor, boolean shadow, Color gridcolor, Color axlabelcolor) Constructor.- Parameters:
xlog
- whether to use logarithmic scaling on X axisylog
- whether to use logarithmic scaling on Y axisxflip
- whether to invert direction of X axisyflip
- whether to invert direction of Y axisxlabel
- text for labelling X axisylabel
- text for labelling Y axisx2func
- function mapping primary to secondary X data coords, or null for no secondary X axisy2func
- function mapping primary to secondary Y data coords, or null for no secondary Y axisx2label
- text for labelling secondary X axisy2label
- text for labelling secondary Y axiscaptioner
- text renderer for axis labels etcannotateflags
- which sides to annotatexyfactor
- ratio (X axis unit length)/(Y axis unit length), or NaN to use whatever bounds shape and axis limits give youxcrowd
- crowding factor for tick marks on X axis; 1 is normalycrowd
- crowding factor for tick marks on Y axis; 1 is normalminor
- whether to paint minor tick marks on axesshadow
- whether to paint shadow ticks on opposite axes if no secondary axisgridcolor
- colour of grid lines, or null for noneaxlabelcolor
- colour of axis labels
-
-
Method Details
-
getLogFlags
public boolean[] getLogFlags()Returns a 2-element array giving X and Y log flags.- Returns:
- (xlog, ylog) array
-
fixAnnotation
Returns a new profile instance the same as this one, except that the flags for which sides to annotate are replaced.- Parameters:
annotateFlags
- which sides to annotateaddSecondary
- if true, secondary axis annotations duplicating the primary axis ones will be added- Returns:
- adjusted profile
-