HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – SceneKit如何绘制一个球体显示网状表面而不是光滑?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_404_2@
我在Scene Kit中画了一个球体,一切正常.我是这样画的:

...
   let g = SCNSphere(radius: radius)
   geometria.firstMaterial?.diffuse.contents = myColor
   let node = SCNNode(geometry: g)
   node.position = SCNVector3(x: x,y: y,z: z)
   scene.rootNode.addChildNode(nodE)

这将球体绘制成光滑的表面(见图).
我会

我想要完成的是让球体不像照片中那样呈现“平滑”,但我希望能够拥有它以便显示骨架…所以可能会控制它用于绘制表面的三角形球体,但三角形需要是空的,所以我只看到三角形的边…

有什么建议吗?

所以这是一个zI试图使球体看起来像的图像:

解决方法

>你的愿望#1:“不光滑”的球体
>你的愿望#2:线框

过去进入Xcode游乐场:

import Cocoa
import SceneKit
import QuartzCore
import XCPlayground

// create a scene
var sceneView = SCNView(frame: CGRect(x: 0,y: 0,width: 300,height: 300))
var scene = SCNScene()
sceneView.scene = scene
XCPShowView("The Scene View",sceneView)
sceneView.autoenablesDefaultLighTing = false

// create sphere
let g = SCNSphere(radius: 100)
g.firstMaterial?.diffuse.contents = NSColor.greenColor()

// WISH #1    
g.segmentCount = 12

let node = SCNNode(geometry: g)
node.position = SCNVector3(x: 10,y: 10,z: 10)
scene.rootNode.addChildNode(nodE)

// WISH #2
glPolygonMode(GLenum(GL_FRONT),GLenum(GL_LINE));
glPolygonMode(GLenum(GL_BACK),GLenum(GL_LINE));

// animate
var spin = CABasicAnimation(keyPath: "rotation")
spin.toValue = NSValue(SCNVector4: SCNVector4(x: 1,y: 1,z: 0,w: CGFloat(2.0*M_PI)))
spin.duration = 3
spin.repeatCount = HUGE // for infinity
node.addAnimation(spin,forKey: "spin around")
@H_404_2@

大佬总结

以上是大佬教程为你收集整理的ios – SceneKit如何绘制一个球体显示网状表面而不是光滑?全部内容,希望文章能够帮你解决ios – SceneKit如何绘制一个球体显示网状表面而不是光滑?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。