Initial commit
This commit is contained in:
commit
b7d90b9afe
16245 files changed
+3396666
No files matched your search
@@ -0,0 +1,62 @@
|
||||
package participanthandler
|
||||
|
||||
import (
|
||||
"log"
|
||||
"math"
|
||||
"time"
|
||||
)
|
||||
|
||||
// degreesToRadians konvertiert Grad in Radiant.
|
||||
// degrees: Der Winkel in Grad.
|
||||
// Rückgabewert: Der Winkel in Radiant.
|
||||
func degreesToRadians(degrees float64) float64 {
|
||||
return degrees * (math.Pi / 180)
|
||||
}
|
||||
|
||||
// ChangePosition ändert die Position eines Geräts.
|
||||
// equipmentNumber: Die Nummer des Geräts, dessen Position geändert werden soll.
|
||||
// geoPosition: Die neue geografische Position des Geräts.
|
||||
// Rückgabewert: Gibt einen Fehler zurück, falls die Änderung fehlschlägt.
|
||||
func (c *ParticipantHandler) ChangePosition(equipmentNumber int, geoPosition *GeoPosition) error {
|
||||
log.Println(equipmentNumber, geoPosition)
|
||||
|
||||
// Erstellen einer Anfrage zur Änderung der Position
|
||||
req := PositionChangeRequest{
|
||||
Data: struct {
|
||||
Header struct {
|
||||
EquipmentNumber int `json:"equipmentNumber"`
|
||||
TimeStamp int `json:"timeStamp"`
|
||||
} `json:"header"`
|
||||
GeoPosition struct {
|
||||
Lon float64 `json:"lon"`
|
||||
Lat float64 `json:"lat"`
|
||||
Z float64 `json:"z"`
|
||||
} `json:"geoPosition"`
|
||||
}{
|
||||
Header: struct {
|
||||
EquipmentNumber int `json:"equipmentNumber"`
|
||||
TimeStamp int `json:"timeStamp"`
|
||||
}{
|
||||
EquipmentNumber: equipmentNumber,
|
||||
TimeStamp: int(time.Now().UnixMilli()),
|
||||
},
|
||||
GeoPosition: struct {
|
||||
Lon float64 `json:"lon"`
|
||||
Lat float64 `json:"lat"`
|
||||
Z float64 `json:"z"`
|
||||
}{
|
||||
Lon: degreesToRadians(geoPosition.Lng),
|
||||
Lat: degreesToRadians(geoPosition.Lat),
|
||||
Z: 0.0,
|
||||
},
|
||||
},
|
||||
TypeID: 21,
|
||||
}
|
||||
|
||||
// Senden der Anfrage über den MariusSocket
|
||||
if err := c.MariusSocket.WriteJSON(req); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in new issue
Block a user