package ruleserver
|
|
import (
|
"basic.com/valib/logger.git"
|
"encoding/json"
|
"fmt"
|
"ruleprocess/structure"
|
|
"testing"
|
)
|
|
func TestPgsInterPercent(t *testing.T) {
|
areaPoints := json2points("[{\"x\":582,\"y\":11},{\"x\":582,\"y\":525},{\"x\":943,\"y\":525},{\"x\":943,\"y\":11}]")
|
widthScale := float64(2688) / 960
|
heigthScale := float64(1520) / 540
|
rec := structure.Rect{1333, 594,204,274}
|
per := PgsInterPercent(areaPoints,rec,widthScale,heigthScale)
|
fmt.Println(widthScale,heigthScale,per)
|
}
|
|
// 将字符串格式的坐标序列化为Point格式
|
func json2points(areaPoints string) []Point {
|
var pts []Point
|
if areaPoints == "[]" || areaPoints == "" {
|
logger.Error("=====================此区域为全部区域")
|
pts = append(pts, Point{0, 0})
|
pts = append(pts, Point{0, 540})
|
pts = append(pts, Point{960, 540})
|
pts = append(pts, Point{960, 0})
|
} else {
|
err := json.Unmarshal([]byte(areaPoints), &pts)
|
if err != nil {
|
logger.Error("json.Unmarshal错误", err)
|
panic("序列化坐标异常,程序退出")
|
}
|
}
|
return pts
|
}
|