Stellarium  25.1
Data Structures
ArchaeoLines Plug-in

Data Structures

class  ArchaeoLinesDialog
 Main window of the ArchaeoLines plug-in. More...
 
class  ArchaeoLinesDialogLocations
 Auxiliary window of the ArchaeoLines plug-in. More...
 
class  ArchaeoLine
 Class which manages a line (small circle) to display around the sky like the solstices line. More...
 

Detailed Description

A tool for archaeo-/ethnoastronomical alignment studies.

The ArchaeoLines plugin displays any combination of declination arcs most relevant to archaeo- or ethnoastronomical studies. Of course, principles used in this context are derived from natural observations, and many of these declinations are still important in everyday astronomy.

  1. Declinations of equinoxes (i.e. equator) and the solstices
  2. Declinations of the crossquarter days (days right between solstices and equinoxes)
  3. Declinations of the Major Lunar Standstills
  4. Declinations of the Minor Lunar Standstills
  5. Declination of the Zenith passage
  6. Declination of the Nadir passage
  7. Declination of the currently selected object
  8. Current declination of the sun
  9. Current declination of the moon
  10. Current declination of a naked-eye planet
  11. Azimuth of currently selected object
  12. Hour Angle of currently selected object

Some religions, most notably Islam, adhere to a practice of observing a prayer direction towards a particular location. Azimuth lines (vertical semicircles from zenith to nadir) for two locations can be shown. Default locations are Mecca (Kaaba) and Jerusalem. The directions are computed based on spherical trigonometry on a spherical Earth. In addition, up to 2 custom azimuth lines, and up to 2 custom declination lines can be drawn, also with customized labels.

The lunar lines include horizon parallax effects. There are two lines each drawn, for maximum and minimum distance of the moon. Note that declination of the moon at the major standstill can exceed the indicated limits if it is high in the sky due to parallax effects.

It may be very instructive to let the time run quite fast and observe the line of "current moon" swinging between its north and south limits each month. These limits grow and shrink between the Major and Minor Standstills.

The sun likewise swings between the solstices. Over centuries, the solstice declinations very slightly move as well.


Data Structure Documentation

◆ ArchaeoLinesDialog

class ArchaeoLinesDialog

Main window of the ArchaeoLines plug-in.

Public Slots

void retranslate () override
 
- Public Slots inherited from StelDialog
virtual void styleChanged (const QString &style)
 Apply application style change.
 
virtual void retranslate ()=0
 Retranslate the content of the dialog. More...
 
virtual void setVisible (bool)
 On the first call with "true" populates the window contents.
 
virtual void close ()
 Closes the window (the window widget is not deleted, just not visible).
 
void handleMovedTo (QPoint newPos)
 Adds dialog location to config.ini; should be connected in createDialogContent()
 
virtual void handleDialogSizeChanged (QSizeF size)
 Stores dialog sizes into config.ini; should be connected from the proxy. More...
 

Protected Member Functions

void createDialogContent () override
 Initialize the dialog widgets and connect the signals/slots.
 

Additional Inherited Members

- Signals inherited from StelDialog
void visibleChanged (bool)
 
- Public Member Functions inherited from StelDialog
 StelDialog (const QString &dialogName=QString("Default"), QObject *parent=nullptr)
 
bool visible () const
 Returns true if the dialog contents have been constructed and are currently shown.
 
QString getDialogName () const
 
- Protected Slots inherited from StelDialog
bool askConfirmation (const QString &message=q_("Are you sure? This will delete your customized data."))
 
void messageBox (const QString &title, const QString &message)
 
void enableKineticScrolling (bool b)
 enable kinetic scrolling. This should be connected to StelApp's StelGui signal flagUseKineticScrollingChanged.
 
void handleFontChanged ()
 connect from StelApp to handle font and font size changes.
 
void handleColorSchemeChanged ()
 connect from StelApp to handle CSS style changes
 
virtual void updateNightModeProperty (bool n)
 
- Static Protected Member Functions inherited from StelDialog
static void connectCheckBox (QAbstractButton *checkBox, const QString &actionName)
 Helper function to connect a checkbox to the StelAction with the specified name.
 
static void connectCheckBox (QAbstractButton *checkBox, StelAction *action)
 Helper function to connect a checkbox to the given StelAction.
 
static void connectIntProperty (QLineEdit *lineEdit, const QString &propName)
 Helper function to connect a QLineEdit to an integer StelProperty. More...
 
static void connectIntProperty (QSpinBox *spinBox, const QString &propName)
 Helper function to connect a QSpinBox to an integer StelProperty. More...
 
static void connectIntProperty (QComboBox *comboBox, const QString &propName)
 Helper function to connect a QComboBox to an integer StelProperty. More...
 
static void connectIntProperty (QSlider *slider, const QString &propName, int minValue, int maxValue)
 Helper function to connect a QSlider to an double or float StelProperty. More...
 
static void connectDoubleProperty (QDoubleSpinBox *spinBox, const QString &propName)
 Helper function to connect a QDoubleSpinBox to an double or float StelProperty. More...
 
static void connectDoubleProperty (AngleSpinBox *spinBox, const QString &propName)
 Helper function to connect an AngleSpinBox to a double or float StelProperty representing decimal degrees. More...
 
static void connectDoubleProperty (QSlider *slider, const QString &propName, double minValue, double maxValue)
 Helper function to connect a QSlider to an double or float StelProperty. More...
 
static void connectStringProperty (QComboBox *comboBox, const QString &propName)
 Helper function to connect a QComboBox to a QString StelProperty. More...
 
static void connectStringProperty (QLineEdit *lineEdit, const QString &propName)
 Helper function to connect a QLineEdit to a QString StelProperty. More...
 
static void connectBoolProperty (QAbstractButton *checkBox, const QString &propName)
 Helper function to connect a checkbox to a bool StelProperty. More...
 
static void connectBoolProperty (QGroupBox *checkBox, const QString &propName)
 Helper function to connect a groupbox to a bool StelProperty. More...
 
- Protected Attributes inherited from StelDialog
QWidget * dialog
 The main dialog.
 
class CustomProxyproxy
 
QString dialogName
 The name should be set in derived classes' constructors and can be used to store and retrieve the panel locations.
 
QList< QWidget * > kineticScrollingList
 A list of widgets where kinetic scrolling can be activated or deactivated The list must be filled once, in the constructor or init() of fillDialog() etc. More...
 
- Properties inherited from StelDialog
bool visible
 

◆ ArchaeoLinesDialogLocations

class ArchaeoLinesDialogLocations

Auxiliary window of the ArchaeoLines plug-in.

Most of this has been borrowed from the LocationDialog.

Public Slots

void retranslate () override
 
void setModalContext (int context)
 call with context 1 or 2 to prepare selection of location 1 or 2.
 
- Public Slots inherited from StelDialog
virtual void styleChanged (const QString &style)
 Apply application style change.
 
virtual void retranslate ()=0
 Retranslate the content of the dialog. More...
 
virtual void setVisible (bool)
 On the first call with "true" populates the window contents.
 
virtual void close ()
 Closes the window (the window widget is not deleted, just not visible).
 
void handleMovedTo (QPoint newPos)
 Adds dialog location to config.ini; should be connected in createDialogContent()
 
virtual void handleDialogSizeChanged (QSizeF size)
 Stores dialog sizes into config.ini; should be connected from the proxy. More...
 

Protected Member Functions

void createDialogContent () override
 Initialize the dialog widgets and connect the signals/slots.
 

Additional Inherited Members

- Signals inherited from StelDialog
void visibleChanged (bool)
 
- Public Member Functions inherited from StelDialog
 StelDialog (const QString &dialogName=QString("Default"), QObject *parent=nullptr)
 
bool visible () const
 Returns true if the dialog contents have been constructed and are currently shown.
 
QString getDialogName () const
 
- Protected Slots inherited from StelDialog
bool askConfirmation (const QString &message=q_("Are you sure? This will delete your customized data."))
 
void messageBox (const QString &title, const QString &message)
 
void enableKineticScrolling (bool b)
 enable kinetic scrolling. This should be connected to StelApp's StelGui signal flagUseKineticScrollingChanged.
 
void handleFontChanged ()
 connect from StelApp to handle font and font size changes.
 
void handleColorSchemeChanged ()
 connect from StelApp to handle CSS style changes
 
virtual void updateNightModeProperty (bool n)
 
- Static Protected Member Functions inherited from StelDialog
static void connectCheckBox (QAbstractButton *checkBox, const QString &actionName)
 Helper function to connect a checkbox to the StelAction with the specified name.
 
static void connectCheckBox (QAbstractButton *checkBox, StelAction *action)
 Helper function to connect a checkbox to the given StelAction.
 
static void connectIntProperty (QLineEdit *lineEdit, const QString &propName)
 Helper function to connect a QLineEdit to an integer StelProperty. More...
 
static void connectIntProperty (QSpinBox *spinBox, const QString &propName)
 Helper function to connect a QSpinBox to an integer StelProperty. More...
 
static void connectIntProperty (QComboBox *comboBox, const QString &propName)
 Helper function to connect a QComboBox to an integer StelProperty. More...
 
static void connectIntProperty (QSlider *slider, const QString &propName, int minValue, int maxValue)
 Helper function to connect a QSlider to an double or float StelProperty. More...
 
static void connectDoubleProperty (QDoubleSpinBox *spinBox, const QString &propName)
 Helper function to connect a QDoubleSpinBox to an double or float StelProperty. More...
 
static void connectDoubleProperty (AngleSpinBox *spinBox, const QString &propName)
 Helper function to connect an AngleSpinBox to a double or float StelProperty representing decimal degrees. More...
 
static void connectDoubleProperty (QSlider *slider, const QString &propName, double minValue, double maxValue)
 Helper function to connect a QSlider to an double or float StelProperty. More...
 
static void connectStringProperty (QComboBox *comboBox, const QString &propName)
 Helper function to connect a QComboBox to a QString StelProperty. More...
 
static void connectStringProperty (QLineEdit *lineEdit, const QString &propName)
 Helper function to connect a QLineEdit to a QString StelProperty. More...
 
static void connectBoolProperty (QAbstractButton *checkBox, const QString &propName)
 Helper function to connect a checkbox to a bool StelProperty. More...
 
static void connectBoolProperty (QGroupBox *checkBox, const QString &propName)
 Helper function to connect a groupbox to a bool StelProperty. More...
 
- Protected Attributes inherited from StelDialog
QWidget * dialog
 The main dialog.
 
class CustomProxyproxy
 
QString dialogName
 The name should be set in derived classes' constructors and can be used to store and retrieve the panel locations.
 
QList< QWidget * > kineticScrollingList
 A list of widgets where kinetic scrolling can be activated or deactivated The list must be filled once, in the constructor or init() of fillDialog() etc. More...
 
- Properties inherited from StelDialog
bool visible
 

◆ ArchaeoLine

class ArchaeoLine

Class which manages a line (small circle) to display around the sky like the solstices line.

Modelled after SkyLine found in GridLinesMgr.cpp at V0.13.2, but with small-circle drawing.

Author
Georg Zotti

Public Types

enum  Line {
  CurrentPlanetNone , CurrentPlanetMercury , CurrentPlanetVenus , CurrentPlanetMars ,
  CurrentPlanetJupiter , CurrentPlanetSaturn , Equinox , Solstices ,
  Crossquarters , MajorStandstill , MinorStandstill , PolarCircles ,
  ZenithPassage , NadirPassage , SelectedObject , CurrentSun ,
  CurrentMoon , CustomDeclination1 , CustomDeclination2 , SelectedObjectHourAngle ,
  SelectedObjectAzimuth , GeographicLocation1 , GeographicLocation2 , CustomAzimuth1 ,
  CustomAzimuth2 , CustomAltitude1 , CustomAltitude2
}
 

Public Slots

void setColor (const Vec3f &c)
 
void update (const double deltaTime)
 
void setFadeDuration (const float duration)
 
void setDisplayed (const bool displayed)
 
void setFontSize (const int newSize)
 
void setFontSizeFromApp (const int newSize)
 To be connected to StelApp font size. newSize will be enlarged by 1.
 
void setDefiningAngle (const double angle)
 reset declination/azimuth angle (degrees) of this arc. Any azimuth angles MUST be given counted from north.
 
double getDefiningAngle (void) const
 
void updateLabel ()
 Re-translates the label.
 
void setLabelVisible (const bool b)
 
bool isLabelVisible () const
 
void setLineType (const ArchaeoLine::Line line)
 
void setLabel (const QString &newLabel)
 change label. Used only for selected-object line - the other labels should not be changed!
 
QString getLabel () const
 

Signals

void colorChanged (Vec3f c)
 
void flagLabelChanged (bool on)
 
void definingAngleChanged (double angle)
 

Public Member Functions

 ArchaeoLine (ArchaeoLine::Line lineType, double definingAngle)
 
void draw (StelCore *core, float intensity=1.0f) const
 
const Vec3fgetColor () const
 
bool isDisplayed (void) const
 

Properties

Vec3f color
 
bool flagLabel
 
double definingAngle