aboutsummaryrefslogtreecommitdiff
path: root/pkg/messages/types/svcFixAngle.go
blob: d5e7b0f390aaa91016e2194bb505121b03939e98 (plain) (blame)
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
package messages

import (
	"github.com/pektezol/bitreader"
	"github.com/pektezol/sdp.go/pkg/writer"
)

type SvcFixAngle struct {
	Relative bool
	Angle    fixAngles
}

type fixAngles struct {
	X float32
	Y float32
	Z float32
}

func ParseSvcFixAngle(reader *bitreader.Reader) SvcFixAngle {
	svcFixAngle := SvcFixAngle{
		Relative: reader.TryReadBool(),
		Angle: fixAngles{
			X: float32(reader.TryReadBits(16)),
			Y: float32(reader.TryReadBits(16)),
			Z: float32(reader.TryReadBits(16)),
		},
	}
	writer.TempAppendLine("\t\tRelative: %t", svcFixAngle.Relative)
	writer.TempAppendLine("\t\tX: %f", svcFixAngle.Angle.X)
	writer.TempAppendLine("\t\tY: %f", svcFixAngle.Angle.Y)
	writer.TempAppendLine("\t\tZ: %f", svcFixAngle.Angle.Z)
	return svcFixAngle
}