mirror of
https://github.com/ClusterCockpit/cc-metric-store.git
synced 2024-11-14 23:17:25 +01:00
26 lines
539 B
Go
26 lines
539 B
Go
|
package resampler
|
||
|
|
||
|
import (
|
||
|
"math"
|
||
|
|
||
|
"github.com/ClusterCockpit/cc-metric-store/internal/util"
|
||
|
)
|
||
|
|
||
|
func calculateTriangleArea(paX, paY, pbX, pbY, pcX, pcY util.Float) float64 {
|
||
|
area := ((paX-pcX)*(pbY-paY) - (paX-pbX)*(pcY-paY)) * 0.5
|
||
|
return math.Abs(float64(area))
|
||
|
}
|
||
|
|
||
|
func calculateAverageDataPoint(points []util.Float, xStart int64) (avgX util.Float, avgY util.Float) {
|
||
|
|
||
|
for _, point := range points {
|
||
|
avgX += util.Float(xStart)
|
||
|
avgY += point
|
||
|
xStart++
|
||
|
}
|
||
|
l := util.Float(len(points))
|
||
|
avgX /= l
|
||
|
avgY /= l
|
||
|
return avgX, avgY
|
||
|
}
|