나는 2 차원의 정규화 된 [0,1] 값을 가져야하고 내 경우 "히트 맵"을 나타내는 float 배열을 가지고 있습니다. 각 셀의 값은지도의 중심으로부터 얼마나 멀리 떨어져 있는지에 따라 달라지며 하나의 축 (세로 또는 y) 만 중요합니다 (중심에서 위쪽/아래쪽으로가는 그라디언트처럼 보입니다). 중앙 셀에는 최대 값 (1)이 있어야하고 경계선에는 최소값 (0)이 있어야합니다. 그래서 필요한 것은 각 셀의 값을 계산할 수있는 함수입니다. 여기 배열의 값이 같을 수있는 방법의 일례이다 (붉은 색은 최대 값을 나타내고, 청색 색상 그라데이션을 수행하지 않을 수 있으므로 판단하지 않는 최소값을 나타냄)그래디언트 배열 값 계산
을 그리고 여기에 내가 배열을 초기화에 사용하는 코드가, 내가 필요한 기능이 어딘가에 누워해야한다는 것을 알고
func createBandsForTwoDArray() -> [[Float]] {
let columns = 100
let rows = 100
var twoDArray = Array(repeating: Array(repeating: Float(0), count: columns), count: rows)
for y in 0..<rows {
for x in 0..<columns {
// How to calculate cell value?
let n = magicValueCalculation(x, y)
twoDArray[y][x] = Float(n)
}
}
return twoDArray
}
질문에 대한 세부적인 설명이 부족하며 다소 광범위합니다 ("도움이 필요합니다"). 좁고 구체적인 것을 묻는 상세한 질문은 더 나은 결과를 얻습니다. 또한 질문과 관련된 모든 이미지가 질문에 가장 잘 표시됩니다. 나는 downvote하지 않았지만, 그래서 나는 자주 질문을 downvoted 볼 수 있습니다. – hatchet
* "각 좌표에 그라디언트 값을 추가하는 방법"*의 첫 번째 부분이 * "이 밴드를 추가하는 방법"*과 관련된 이유는 확실하지 않습니다. * - 동기 부여에 대해 자세히 설명 할 수 있습니까? 또한,이 밴드 구조가 실제로 물리적 인 온도 분포가 아님을 확신하십시오. – meowgoesthedog
질문과 관련하여 도움이 필요한 경우 관련 코드를 질문에 넣어야합니다 (코드 그림이 아닌 텍스트). 코드에 필요한 도움이 무엇인지 명확하게 표시하십시오. – rmaddy