Events : Différence entre versions

De Wiki
Aller à : navigation, rechercher
Ligne 4 : Ligne 4 :
  
 
Some basic event widgets are:
 
Some basic event widgets are:
* GPAltitudeDetector,
+
* <font color=#4169E1>GPAltitudeDetector</font>,
* GPDateDetector,
+
* <font color=#4169E1>GPDateDetector</font>,
* GPRelativeDateDetector,
+
* <font color=#4169E1>GPRelativeDateDetector</font>,
 
And the following events are specific as they have the possibility to define an occurrence for triggering them.
 
And the following events are specific as they have the possibility to define an occurrence for triggering them.
* GPAOLDetector,
+
* <font color=#4169E1>GPAOLDetector</font>,
* GPApsideDetector,
+
* <font color=#4169E1>GPApsideDetector</font>,
* GPEclipseDetector,
+
* <font color=#4169E1>GPEclipseDetector</font>,
* GPLocalTimeDetector,
+
* <font color=#4169E1>GPLocalTimeDetector</font>,
* GPNodeDetector,
+
* <font color=#4169E1>GPNodeDetector</font>,
* GPVisibilityFromStationDetector
+
* <font color=#4169E1>GPVisibilityFromStationDetector</font>
  
 
It is very simple to call them:
 
It is very simple to call them:
Ligne 63 : Ligne 63 :
 
[[File:GPAOLDetector.png]]
 
[[File:GPAOLDetector.png]]
  
At last, here is the display when using GPEventSelector widget:
+
At last, here is the display when using <font color=#4169E1>GPEventSelector</font> widget:
  
 
[[File:GPEventSelector.png]]
 
[[File:GPEventSelector.png]]
Ligne 69 : Ligne 69 :
 
== How to use it ==
 
== How to use it ==
  
To get a [[https://logiciels.cnes.fr/en/node/62?type=desc PATRIUS]] <font color=#4169E1>xxx</font> object, we will just have to call for the <font color=#4169E1>getPatriusObject()</font> method as below:
+
To get the corresponding <font color=#556B2F>'''GENOPUS'''</font> objects, we will just have to call for the <font color=#4169E1>getPatriusObject()</font> method as below:
  
 
<syntaxhighlight lang="java">
 
<syntaxhighlight lang="java">
 +
CustomDateDetector dateDetector = date.getPatriusObject();
 +
</syntaxhighlight>
  
 +
… or, when using <font color=#4169E1>GPEventSelector</font>:
 +
 +
<syntaxhighlight lang="java">
 +
CustomDateDetector dateDetector = eventSelector.getPatriusObject()
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
== How it is stored ==
 
== How it is stored ==
  
Here is the <font color=#FF8C00 title="Extensible Markup Language">XML</font> format for such a configuration:
+
Here is an example of <font color=#FF8C00 title="Extensible Markup Language">XML</font> format for <font color=#4169E1>GPDateDetector</font>:
  
 
<syntaxhighlight lang="XML">
 
<syntaxhighlight lang="XML">
 
+
  <DateDetector name="Absolute_date_event">
 +
    <AbsoluteDate name="eventDate">
 +
      <String name="date">01/01/2010 00h00m00s</String>
 +
      <String name="scale">UTC</String>
 +
    </AbsoluteDate>
 +
    <String name="actionData">STOP</String>
 +
    <Real name="maxCheck" unit="s">1.0E10</Real>
 +
    <Real name="threshold" unit="s">1.0E-9</Real>
 +
  </DateDetector>
 
</syntaxhighlight>
 
</syntaxhighlight>

Version du 29 juillet 2017 à 13:34

Some widgets are corresponding to the most used orbital events as defined with [PATRIUS]. The following list Is not exhaustive but will present the use of a part of them. Moreover such events are also internally used in attitude or maneuver sequences.

How to call it

Some basic event widgets are:

  • GPAltitudeDetector,
  • GPDateDetector,
  • GPRelativeDateDetector,

And the following events are specific as they have the possibility to define an occurrence for triggering them.

  • GPAOLDetector,
  • GPApsideDetector,
  • GPEclipseDetector,
  • GPLocalTimeDetector,
  • GPNodeDetector,
  • GPVisibilityFromStationDetector

It is very simple to call them:

  • Using a constructor with a single label:
date = new GPDateDetector("Absolute date event");
  • … or with an initial event for initialization:
final AbsoluteDate date0 = new AbsoluteDate(2010, 1, 1, TimeScalesFactory.getUTC());
final CustomDateDetector dateDetector = new CustomDateDetector(date0);
date = new GPDateDetector("Absolute date eve nt", dateDetector);

Note: we do not use directly [PATRIUS] detectors but GENOPUS ones as some getter methods, necessary for the widgets, do not exist. There is also the possibility to freeze the action associated for such events (for example, if the event is associated to a maneuver, it must be set to STOP and there must have no possibility to change the action:

date.blockAction(Action.STOP);

Moreover, it exists a global GPEvent widget proposing a menu to select an event through a redefined list. In the example below, we will propose only an apside and a node event …

eventSelector =
  new GPEventSelector("Events:", GPEventsEnum.APSIDE, GPEventsEnum.NODE);

Display

The display just below corresponds to GPAltitudeDetector:

Fichier:GPAltitudeDetector.png

We see that the display is composed of an GPAbsoluteDate widget followed by fields corresponding to the event definition with the type of action (see [PATRIUS] documentation for more information):

EventAction.png

… and eventually expert settings including the checking interval and the convergence threshold (see [PATRIUS] documentation for more information):

EventExpertSettings.png

On the following example (GPAOLDetector), we see another event detector but with a trigger information (i.e. the occurrence of the event):

GPAOLDetector.png

At last, here is the display when using GPEventSelector widget:

GPEventSelector.png

How to use it

To get the corresponding GENOPUS objects, we will just have to call for the getPatriusObject() method as below:

CustomDateDetector dateDetector = date.getPatriusObject();

… or, when using GPEventSelector:

CustomDateDetector dateDetector = eventSelector.getPatriusObject()

How it is stored

Here is an example of XML format for GPDateDetector:

  <DateDetector name="Absolute_date_event">
    <AbsoluteDate name="eventDate">
      <String name="date">01/01/2010 00h00m00s</String>
      <String name="scale">UTC</String>
    </AbsoluteDate>
    <String name="actionData">STOP</String>
    <Real name="maxCheck" unit="s">1.0E10</Real>
    <Real name="threshold" unit="s">1.0E-9</Real>
  </DateDetector>