3d ARKit绘制带圆角的三维纸平面

3d ARKit绘制带圆角的三维纸平面,3d,augmented-reality,scenekit,arkit,uibezierpath,3d,Augmented Reality,Scenekit,Arkit,Uibezierpath,我试图在ARKit中绘制带有圆角的3D纸平面,但我做不到 我用bazier path做的: // create bezeir path let path = UIBezierPath() // A bezier path path.move(to: CGPoint(x: 0, y: 0.025)) path.addLine(to: CGPoint(x: 0.02, y: -0.005)) path.addLine(to: CGPoint(

我试图在ARKit中绘制带有圆角的3D纸平面,但我做不到

我用bazier path做的:

    // create bezeir path
    let path  = UIBezierPath()
   
    // A bezier path
    path.move(to: CGPoint(x: 0, y: 0.025))
    path.addLine(to: CGPoint(x: 0.02, y: -0.005))
    path.addLine(to: CGPoint(x: 0, y: 0))
    path.addLine(to: CGPoint(x: -0.02, y: -0.005))
    path.close()
     
    // create arrow shape
    let arrowShape = SCNShape(path: path, extrusionDepth: 0.001)
    arrowShape.chamferRadius = 50
  
    // create new node
    arrownode = SCNNode(geometry: arrowShape);
       
    // set arrow color
    arrownode!.geometry?.firstMaterial?.diffuse.contents = UIColor.yellow 
结果是:


我需要像这样精确,但具有圆角。

实例属性
chamferRadius
为拉伸zDepth而不是XY路径创建倒角

let arrowShape = SCNShape(path: path, extrusionDepth: 0.005)
arrowShape.chamferRadius = 20

如果要创建圆角,请对路径使用以下方法:

path.addQuadCurve(to: CGPoint, controlPoint: CGPoint)

path.addCurve(to: CGPoint, controlPoint1: CGPoint, controlPoint2: CGPoint)