This file is indexed.

/usr/include/qwtplot3d-qt4/qwt3d_axis.h is in libqwtplot3d-qt4-dev 0.2.7+svn191-5ubuntu2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
#ifndef __AXIS_H__
#define __AXIS_H__

#include "qwt3d_autoptr.h"
#include "qwt3d_label.h"
#include "qwt3d_scale.h"
#include "qwt3d_autoscaler.h"

namespace Qwt3D
{

//! Autoscalable axis with caption. 
/*!
  Axes are highly customizable especially in terms
  of labeling and scaling.
*/
class QWT3D_EXPORT Axis : public Drawable
{

public:

	Axis(); //!< Constructs standard axis
	Axis(Qwt3D::Triple beg, Qwt3D::Triple end); //!< Constructs a new axis with specified limits
	virtual ~Axis(); // dtor
	
	virtual void draw(); //!< Draws axis

	void setPosition(const Qwt3D::Triple& beg, const Qwt3D::Triple& end); //!< Positionate axis
	void position(Qwt3D::Triple& beg, Qwt3D::Triple& end) const {beg = beg_; end = end_;} //!< Returns axis' position
  Qwt3D::Triple begin() const { return beg_; } //!< Returns axis' beginning position
  Qwt3D::Triple end() const { return end_; } //!< Returns axis' ending position 
  double length() const { return (end_-beg_).length(); } //!< Returns axis' length

	void setTicLength(double majorl, double minorl); //!< Sets tics lengths in world coordinates
	//! Returns tics lengths
  void ticLength(double& majorl, double& minorl) const {majorl = lmaj_; minorl = lmin_;}
	void setTicOrientation(double tx, double ty, double tz); //!< Sets tic orientation
	void setTicOrientation(const Qwt3D::Triple& val); //!< Same function as above
  Qwt3D::Triple ticOrientation() const { return orientation_;} //!< Returns tic orientation
  void setSymmetricTics( bool b) { symtics_ = b;} //!< Sets two-sided tics (default is false) 
	
  //! Sets font for axis label
	void setLabelFont(QString const& family, int pointSize, int weight = QFont::Normal, bool italic = false);
	void setLabelFont(QFont const& font); //!< Sets font for axis label
  QFont const& labelFont() const {return labelfont_;} //!< Returns current label font 
  
  void setLabelString(QString const& name);   //!< Sets label content
	void setLabelPosition(const Qwt3D::Triple& pos, Qwt3D::ANCHOR);
	void setLabelColor(Qwt3D::RGBA col);
  void setLabel(bool d) {drawLabel_ = d;} //!< Turns label drawing on or off
	void adjustLabel(int val) {labelgap_ = val;} //!< Shifts label in device coordinates dependent on anchor;

	void setScaling(bool d) {drawTics_ = d;} //!< Turns scale drawing on or off
	bool scaling() const {return drawTics_;} //!< Returns, if scale drawing is on or off
  void setScale(Qwt3D::SCALETYPE);
  void setScale(Scale* item);
	void setNumbers(bool d) {drawNumbers_ = d;} //!< Turns number drawing on or off
	bool numbers() const {return drawNumbers_;} //!< Returns, if number drawing is on or off
	void setNumberColor(Qwt3D::RGBA col); //!< Sets the color for axes numbers
	Qwt3D::RGBA numberColor() const {return numbercolor_;} //!< Returns the color for axes numbers
	//! Sets font for numbering
	void setNumberFont(QString const& family, int pointSize, int weight = QFont::Normal, bool italic = false);
	void setNumberFont(QFont const&); //!< Overloaded member, works like the above function
  QFont const& numberFont() const {return numberfont_;} //!< Returns current numbering font
  void setNumberAnchor(Qwt3D::ANCHOR a) { scaleNumberAnchor_ = a;} //!< Sets anchor position for numbers
	void adjustNumbers(int val) {numbergap_ = val;} //!< Shifts axis numbers in device coordinates dependent on anchor;

	void setAutoScale(bool val = true) {autoscale_ = val;} //!< Turns Autoscaling on or off
	bool autoScale() const { return autoscale_;} //!< actual Autoscaling mode

	void setMajors(int val); //!< Requests major intervals (maybe changed, if autoscaling is present)
	void setMinors(int val); //!< Requests minor intervals
	int majors() const { return majorintervals_; } //!< Returns number of major intervals
	int minors() const { return minorintervals_; } //!< Returns number of minor intervals
	Qwt3D::TripleField const& majorPositions() const {return majorpos_;} //!< Returns positions for actual major tics (also if invisible)
	Qwt3D::TripleField const& minorPositions() const {return minorpos_;} //!< Returns positions for actual minor tics (also if invisible)
	
	//! Sets line width for axis components
	void setLineWidth(double val, double majfac = 0.9, double minfac = 0.5);
	double lineWidth() const { return lineWidth_;} //!< Returns line width for axis body
	double majLineWidth() const { return majLineWidth_;} //!< Returns Line width for major tics
	double minLineWidth() const { return minLineWidth_;} //!< Returns Line width for minor tics

	void setLimits(double start, double stop) {start_=start; stop_=stop;} //!< Sets interval
	void limits(double& start, double& stop) const {start = start_; stop = stop_;} //!< Returns axis interval
  void recalculateTics(); //!< Enforces recalculation of ticmark positions


private:

	void init();
	void drawBase();
	void drawTics();
	void drawTicLabel(Qwt3D::Triple Pos, int mtic);
	Qwt3D::Triple drawTic(Qwt3D::Triple nadir, double length);
	void drawLabel();
  bool prepTicCalculation(Triple& startpoint);

	Qwt3D::Triple biggestNumberString();
	
	
	Qwt3D::ANCHOR scaleNumberAnchor_;
	Qwt3D::Label label_;
	std::vector<Qwt3D::Label> markerLabel_;

	Qwt3D::Triple beg_, end_;
	Qwt3D::TripleField majorpos_, minorpos_; //! vectors, holding major resp. minor tic positions;

	Qwt3D::Triple ncube_beg_, ncube_end_; //!< enclosing parallelepiped for axis numbering

	double start_, stop_, autostart_, autostop_;
	double lmaj_, lmin_;
	Qwt3D::Triple orientation_;

	int majorintervals_, minorintervals_;

	double lineWidth_, majLineWidth_, minLineWidth_;
	bool symtics_;
	bool drawNumbers_, drawTics_, drawLabel_;
	bool autoscale_;
	QFont numberfont_, labelfont_;
	Qwt3D::RGBA  numbercolor_;

	int numbergap_, labelgap_; 

  Qwt3D::qwt3d_ptr<Qwt3D::Scale> scale_;
};

} // ns 

#endif