Я пытаюсь построить цилиндр с помощью функции Swiftui surfaceplot, и вот мой код, который должен построить верхнюю и нижнюю половину Cynlinder, но он также представляет 2 поверхности, которые переходят в бесконечность на краю. < /p>
import SwiftUI
import Foundation
import Charts
import Spatial
struct ContentView: View {
@State private var pose = Chart3DPose(azimuth: .degrees(-20), inclination: .degrees(10))
var body: some View {
GeometryReader{ metrics in
Chart3D {
SurfacePlot(x: "x", y: "y", z: "z") { x, z in
(-pow(z, 2) + 0.01).squareRoot()
}
SurfacePlot(x: "x", y: "y", z: "z") { x, z in
-(-pow(z, 2) + 0.01).squareRoot()
}
}
.chart3DPose($pose)
.frame(width: metrics.size.width, height: metrics.size.width)
.chartXScale(domain: [-1,1])
.chartYScale(domain: [-1,1])
.chartZScale(domain: [-1,1])
.chartXAxis {
AxisMarks(stroke: StrokeStyle(lineWidth: 0))
}
.chartYAxis {
AxisMarks(stroke: StrokeStyle(lineWidth: 0))
}
.chartZAxis {
AxisMarks(stroke: StrokeStyle(lineWidth: 0))
}
}
}
}
< /code>
Полученный график кода < /p>
пытался отправить отзыв о помощнике обратной связи, но никогда не получил ответа. Согласно своей документации, Funciton должен вернуть NIL, когда он за пределами домена Funciton, поэтому я ожидаю получить только Cynlinder, когда за пределами домена он ничего не должен застроить. Может ли кто -нибудь помочь решить это или есть другой пакет для создания интерактивных 3D -графиков в Swiftui? Заранее спасибо.
Подробнее здесь: https://stackoverflow.com/questions/797 ... wise-funct