簡體   English   中英

Canvas arc() - 在前后獲取坐標

[英]Canvas arc() - getting coords before and after

我正在研究一個函數,它可以在開始繪制之前(弧開始的地方)和完成之后(弧結束的地方)解析弧函數的坐標(X 和 Y)。

我試過這個代碼:

export const arcEndCoords = (coordX: number, coordY: number, radius: number, angle: number) => {
    angle = angle * Math.PI / 180;
    return [coordX + Math.cos(angle) * radius, coordY + Math.sin(angle) * radius];
}

但它沒有 startAngle 和 endAngle(沒有 startAngle 這段代碼不會顯示正確的結果)

有人可以編寫函數來獲取畫布中弧函數的起始坐標和結束坐標嗎?

將您的功能修改為

export const arcEndCoords = (coordX: number, coordY: number, radius: number, angle: number, startAngle: number) => {
    const alpha = (angle + startAngle) * Math.PI / 180;
    return [coordX + Math.cos(alpha) * radius, coordY + Math.sin(alpha) * radius];
}

否則,正如已經指出的那樣,這是不可解決的(例如對於給定的中心、半徑和角度,有無數的解決方案)。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM