지붕덮개 계산식 수정

This commit is contained in:
Jaeyoung Lee 2025-06-17 10:39:22 +09:00
parent f45862568f
commit c869d6c44d

View File

@ -7250,11 +7250,12 @@ const drawHipLine = (points, canvas, roof, textMode, currentRoof, prevDegree, cu
const baseX = Big(points[0]).minus(Big(points[2])).abs()
const baseY = Big(points[1]).minus(Big(points[3])).abs()
if (baseX.gt(1) && baseY.gt(1)) {
const base = calcLinePlaneSize({ x1: points[0], y1: points[1], x2: points[2], y2: points[3] }) / 10
const heightX = baseX.times(Math.tan((currentDegree * Math.PI) / 180)).round()
const heightY = baseY.times(Math.tan((prevDegree * Math.PI) / 180)).round()
const degreeX = Math.atan(heightX.div(base).toNumber()) / (Math.PI / 180)
const degreeY = Math.atan(heightY.div(base).toNumber()) / (Math.PI / 180)
const hypotenuse = calcLinePlaneSize({ x1: points[0], y1: points[1], x2: points[2], y2: points[3] })
const base = getAdjacent(hypotenuse)
const heightX = base * Math.tan((currentDegree * Math.PI) / 180)
const heightY = base * Math.tan((prevDegree * Math.PI) / 180)
const degreeX = Math.atan2(heightX, hypotenuse) * (180 / Math.PI)
const degreeY = Math.atan2(heightY, hypotenuse) * (180 / Math.PI)
if (Math.abs(degreeX - degreeY) < 1) {
currentDegree = degreeX
prevDegree = degreeY