SCNGeometry

2020-08-25  本文已影响0人  AntKing
class SCNGeometry : NSObject
可以在场景中显示的三维形状(也称为模型或网格),带有定义其外观的附加材料。

在SceneKit中,附加到SCNNode对象的几何构成了场景的可见元素,而附加到几何的SCNMaterial对象确定了它的外观。

convenience init(sources: [SCNGeometrySource], elements: [SCNGeometryElement]?)
Creates a new geometry built from the specified geometry sources and elements.
根据指定的几何图形源和元素创建一个新的几何图形。

sources
SCNGeometrySource对象的数组,描述几何中的顶点及其属性。
elements
SCNGeometryElement对象的数组,描述如何连接几何图形的顶点。

var name: String? { get set }
几何体的名字
var materials: [SCNMaterial] { get set }
SCNMaterial对象的数组,可确定渲染时几何的外观。
var firstMaterial: SCNMaterial? { get set }
连接到几何体上的第一个材质
func material(named name: String) -> SCNMaterial?
Returns the first material attached to the geometry with the specified name.
根据指定名字,返回第一个链接到几何体的材质
func insertMaterial(_ material: SCNMaterial, at index: Int)
将材料附加到指定索引处的几何体。
func removeMaterial(at index: Int)
删除指定索的材质
func replaceMaterial(at index: Int, with material: SCNMaterial)
替换指定索引的材质
var elements: [SCNGeometryElement] { get }
An array of geometry elements that describe the geometry’s shape.

一个元素数组,用于描述几何体的外观
每个SCNGeometryElement对象都描述了如何将来自几何图形源的顶点组合为多边形以创建几何图形的形状。 可见的几何形状至少包含一个元素。

对于具有多个元素的几何,可以使用material属性将不同的材质附加到每个元素。

var sources: [SCNGeometrySource] { get }
An array of geometry sources that provide vertex data for the geometry.
一个数组, 为几何图形提供顶点数据
每个SCNGeometrySource对象都描述了由源的语义属性标识的几何图形中所有顶点的属性(例如顶点位置,表面法线向量,颜色或纹理映射坐标)。 几何图形始终至少具有一个源(用于顶点语义),通常具有用于照明和着色的其他源,并且可能具有用于骨骼动画或曲面细分信息的其他源。
var elementCount: Int { get }
The number of geometry elements in the geometry.
几何图形中几何图形元素的数量

func element(at elementIndex: Int) -> SCNGeometryElement
Returns the geometry element at a specified index.
返回指定索引位置的几何元素

func sources(for semantic: SCNGeometrySource.Semantic) -> [SCNGeometrySource]
Returns the geometry sources for a specified semantic.

返回指定语义的SCNGeometrySource

var levelsOfDetail: [SCNLevelOfDetail]? { get set }
SCNLevelOfDetail对象数组,用于管理从远处查看时几何图形的外观。
由于渲染复杂的几何会增加性能成本,因此可以使用细节级对象在距视点相机的距离增加(或外观尺寸减小)时替换较简单的几何。 有关详细信息,请参见SCNLevelOfDetail。
var subdivisionLevel: Int { get set }
The number of subdivisions SceneKit uses to smooth the geometry’s surface at render time.
再分割的数量,用于将几何表面更平滑

var edgeCreasesElement: SCNGeometryElement? { get set }
The geometry element identifying which edges of the geometry’s surface should remain sharp after subdivision.
细分后,用于标识几何表面的哪些边缘应保持清晰的几何元素。
var edgeCreasesSource: SCNGeometrySource? { get set }
The geometry source specifying the smoothness or sharpness of edges after surface subdivision.
指定曲面细分后边缘的平滑度或清晰度的几何源。
上一篇下一篇

猜你喜欢

热点阅读