Bagikan melalui


SCNGeometrySource Kelas

Definisi

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

[Foundation.Register("SCNGeometrySource", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.WatchOS, 3, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 8, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public class SCNGeometrySource : Foundation.NSObject, Foundation.INSSecureCoding, IDisposable
[Foundation.Register("SCNGeometrySource", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.WatchOS, 3, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 8, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 8, ObjCRuntime.PlatformArchitecture.All, null)]
public class SCNGeometrySource : Foundation.NSObject, Foundation.INSSecureCoding, IDisposable
type SCNGeometrySource = class
    inherit NSObject
    interface INSCoding
    interface INativeObject
    interface IDisposable
    interface INSSecureCoding
Warisan
SCNGeometrySource
Atribut
Penerapan

Keterangan

Pengembang yang ingin secara terprogram menghasilkan objek kustom SCNGeometry menggunakan M:SceneKit.SCNGeometry.Create(SceneKit.SCNGeometrySource[], metode SceneKit.SCNGeometryElement[]* . Bentuk dan jumlah SCNGeometrySource objek bervariasi berdasarkan cara pengembang menjelaskan geometri (misalnya, apakah data verteks muncul sebagai serangkaian kembar tiga yang menggambarkan segitiga atau seri bergerak yang menggambarkan garis segitiga) dan apakah geometri hanya akan berwarna atau memiliki peta tekstur.

Kode berikut menunjukkan kode kustom untuk membuat piramida empat sisi kustom. Contoh ini menunjukkan penggunaan simpul, menentukan segitiga, di mana satu tekstur dipetakan. Perhatikan bagaimana nilai indeks tertentu di dalam locs digunakan untuk menentukan indices dan bagaimana pengurutan di dalam locs mempengaruhi normals dan txCoords. Selain itu, perhatikan bagaimana kembung di ditautkan indices ke SCNGeometryPrimitiveType.Triangles.

//Lower-left
var a = new SCNVector3(-1, -1, 0);
//Upper-right
var b = new SCNVector3(1, 1, 0);

var halfX = (c.X + a.X) / 2;
var halfY = (c.Y + a.Y) / 2;
var halfZ = (c.Z + a.Z) / 2;

var b = new SCNVector3(a.X, c.Y, halfZ);
var d = new SCNVector3(c.X, a.Y, halfZ);
//Elevate the midpoint so that it's clearly a pyramid
var midPoint = new SCNVector3(halfX, halfY, halfZ + 1.0);

//The vertices of the geometry
var locs = new [] {
	a, b, c, d, midPoint
};
var locSource = SCNGeometrySource.FromVertices(locs);

//Note that this relies on the ordering of locs above
//and it defines triangles (could be triangle strips, etc.)
var indices = new [] {
	//Triangles are defined counter-clockwise!
	4, 1, 0,
	1, 4, 2,
	2, 4, 3,
	3, 4, 0
};


var idxArray = new byte[indices.Length][];
for(int i = 0; i < idxArray.Length; i++)
{
	idxArray[i] = BitConverter.GetBytes(indices[i]);
}
var idxData = NSData.FromArray(idxArray.SelectMany(id => id).ToArray());

//Note that this relies on indices defining triangles
var element = SCNGeometryElement.FromData(idxData, SCNGeometryPrimitiveType.Triangles, indices.Length / 3, sizeof(int));

//Normals are relative to geometry
var normals = new [] {
	new SCNVector3(0, 0, 1),
	new SCNVector3(0, 0, 1),
	new SCNVector3(0, 0, 1),
	new SCNVector3(0, 0, 1),
	new SCNVector3(0, 0, 1),
};;
var normSource = SCNGeometrySource.FromNormals(normals);

//These texture coords will cause the texture to wrap 
var txCoords = new [] {
	new CGPoint(0, 0),
	new CGPoint(0, 1),
	new CGPoint(1, 1),
	new CGPoint(1, 0),
  new CGPoint(0.5, 0.5)
};

var txCoordsSource = SCNGeometrySource.FromTextureCoordinates(txCoords);

var geometry = SCNGeometry.Create(new [] { locSource, normSource, txCoordsSource }, new [] { element });

Konstruktor

SCNGeometrySource()

Konstruktor default, menginisialisasi instans baru kelas ini.

SCNGeometrySource(IntPtr)

Konstruktor yang digunakan saat membuat representasi terkelola dari objek yang tidak dikelola; Dipanggil oleh runtime.

SCNGeometrySource(NSCoder)

Konstruktor yang menginisialisasi objek dari data yang disimpan dalam objek unarchiver.

SCNGeometrySource(NSObjectFlag)

Konstruktor untuk memanggil kelas turunan untuk melewati inisialisasi dan hanya mengalokasikan objek .

Properti

BytesPerComponent

Ukuran, dalam byte, dari data vektor yang mendasar.

Class

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
ClassHandle

Handel untuk kelas ini.

ComponentsPerVector

Jumlah komponen per elemen vektor dalam sumber ini.

Data

Buffer data yang mendasar.

DataOffset

Jarak, dalam byte, dari awal Data hingga elemen puncak pertama.

DataStride

Jumlah byte antara elemen vertex di Data.

DebugDescription

Deskripsi objek ini yang bermakna pengembang.

(Diperoleh dari NSObject)
Description

Deskripsi objek , versi Objective-C dari ToString.

(Diperoleh dari NSObject)
FloatComponents

Apakah data komponen puncak terbuat dari nfloat nilai.

Handle

Tangani (penunjuk) ke representasi objek yang tidak dikelola.

(Diperoleh dari NSObject)
IsDirectBinding

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
IsProxy

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
RetainCount

Mengembalikan jumlah penyimpanan Objective-C saat ini untuk objek.

(Diperoleh dari NSObject)
Self

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
Semantic

SCNGeometrySourceSemantic Sesuai dengan nilai untuk sumber ini.

Superclass

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
SuperHandle

Handel digunakan untuk mewakili metode di kelas dasar untuk NSObject ini.

(Diperoleh dari NSObject)
VectorCount

Jumlah total vektor dalam yang mendasar Data.

Zone

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)

Metode

AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr)

Mendaftarkan objek untuk diamati secara eksternal (menggunakan NSString keyPath).   Perubahan yang diamati dikirim ke metode objek ObserveValue(NSString, NSObject, NSDictionary, IntPtr) pengamat.

(Diperoleh dari NSObject)
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr)

Mendaftarkan objek untuk diamati secara eksternal (menggunakan keyPath string).   Perubahan yang diamati dikirim ke metode objek ObserveValue(NSString, NSObject, NSDictionary, IntPtr) pengamat.

(Diperoleh dari NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

Mendaftarkan objek untuk diamati secara eksternal menggunakan metode arbitrer.

(Diperoleh dari NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

Mendaftarkan objek untuk diamati secara eksternal menggunakan metode arbitrer.

(Diperoleh dari NSObject)
AwakeFromNib()

Dipanggil setelah objek dimuat dari file nib. Penimpa harus memanggil basis. AwakeFromNib().

(Diperoleh dari NSObject)
BeginInvokeOnMainThread(Action)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

Memanggil secara asinkron kode yang ditentukan pada utas UI utama.

(Diperoleh dari NSObject)
Bind(NSString, NSObject, String, NSDictionary)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
Bind(String, NSObject, String, NSDictionary)
Kedaluwarsa.

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
BindingInfo(String)
Kedaluwarsa.

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
BindingOptionDescriptions(String)
Kedaluwarsa.

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
BindingValueClass(String)
Kedaluwarsa.

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
CommitEditing()

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
CommitEditing(NSObject, Selector, IntPtr)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
ConformsToProtocol(IntPtr)

Dipanggil untuk menentukan apakah objek ini menerapkan protokol yang ditentukan.

(Diperoleh dari NSObject)
Copy()

Melakukan salinan objek Objective-C yang mendasar.

(Diperoleh dari NSObject)
DangerousAutorelease()

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
DangerousRelease()

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
DangerousRetain()

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
DidChange(NSKeyValueChange, NSIndexSet, NSString)

Menunjukkan perubahan yang terjadi pada indeks untuk hubungan ke banyak.

(Diperoleh dari NSObject)
DidChange(NSString, NSKeyValueSetMutationKind, NSSet)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
DidChangeValue(String)

Menunjukkan bahwa perubahan terjadi pada kunci yang ditentukan.

(Diperoleh dari NSObject)
Dispose()

Merilis sumber daya yang digunakan oleh objek NSObject.

(Diperoleh dari NSObject)
Dispose(Boolean)

Merilis sumber daya yang digunakan oleh objek NSObject.

(Diperoleh dari NSObject)
DoesNotRecognizeSelector(Selector)

Menunjukkan bahwa objek ini tidak mengenali pemilih yang ditentukan.

(Diperoleh dari NSObject)
EncodeTo(NSCoder)

Mengodekan status objek pada encoder yang disediakan

Equals(NSObject)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
Equals(Object)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
ExposedBindings()

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
FromData(NSData, NSString, nint, Boolean, nint, nint, nint, nint)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

FromData(NSData, SCNGeometrySourceSemantics, nint, Boolean, nint, nint, nint, nint)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

FromMetalBuffer(IMTLBuffer, MTLVertexFormat, NSString, nint, nint, nint)

Metode pabrik untuk membuat baru SCNGeometrySource dari buffer data.

FromMetalBuffer(IMTLBuffer, MTLVertexFormat, SCNGeometrySourceSemantics, nint, nint, nint)

Metode pabrik untuk membuat baru SCNGeometrySource dari buffer data.

FromNormals(SCNVector3[])

Metode pabrik yang membuat sumber untuk vertex normal.

FromTextureCoordinates(CGPoint[])

Metode pabrik yang membuat sumber untuk koordinat tekstur.

FromVertices(SCNVector3[])

Metode pabrik untuk membuat sumber untuk data puncak.

GetBindingInfo(NSString)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
GetBindingOptionDescriptions(NSString)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
GetBindingValueClass(NSString)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
GetDictionaryOfValuesFromKeys(NSString[])

Mengambil nilai kunci yang ditentukan.

(Diperoleh dari NSObject)
GetHashCode()

Menghasilkan kode hash untuk instans saat ini.

(Diperoleh dari NSObject)
GetMethodForSelector(Selector)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
GetNativeField(String)
Kedaluwarsa.

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
GetNativeHash()

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
Init()

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
InitializeHandle(IntPtr)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
InitializeHandle(IntPtr, String)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
Invoke(Action, Double)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
Invoke(Action, TimeSpan)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
InvokeOnMainThread(Action)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
InvokeOnMainThread(Selector, NSObject)

Memanggil kode yang ditentukan secara sinkron pada utas UI utama.

(Diperoleh dari NSObject)
IsEqual(NSObject)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
IsKindOfClass(Class)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
IsMemberOfClass(Class)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
MarkDirty()

Mempromosikan objek peer reguler (IsDirectBinding adalah true) ke dalam objek toggleref.

(Diperoleh dari NSObject)
MutableCopy()

Membuat salinan yang dapat diubah dari NSObject yang ditentukan.

(Diperoleh dari NSObject)
ObjectDidEndEditing(NSObject)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
ObserveValue(NSString, NSObject, NSDictionary, IntPtr)

Menunjukkan bahwa nilai pada keyPath yang ditentukan relatif terhadap objek ini telah berubah.

(Diperoleh dari NSObject)
PerformSelector(Selector)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
PerformSelector(Selector, NSObject)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
PerformSelector(Selector, NSObject, Double)

Memanggil pemilih pada instans saat ini dan jika obj bukan null, pemilih meneruskan ini sebagai parameter tunggalnya.

(Diperoleh dari NSObject)
PerformSelector(Selector, NSObject, Double, NSString[])

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
PerformSelector(Selector, NSObject, NSObject)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[])

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
PrepareForInterfaceBuilder()

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
RemoveObserver(NSObject, NSString)

Menghentikan pengamat yang ditentukan menerima pemberitahuan lebih lanjut tentang nilai yang diubah untuk keyPath yang ditentukan.

(Diperoleh dari NSObject)
RemoveObserver(NSObject, NSString, IntPtr)

Menghentikan pengamat yang ditentukan menerima pemberitahuan lebih lanjut tentang nilai yang diubah untuk keyPath dan konteks yang ditentukan.

(Diperoleh dari NSObject)
RemoveObserver(NSObject, String)

Menghentikan pengamat yang ditentukan menerima pemberitahuan lebih lanjut tentang nilai yang diubah untuk keyPath yang ditentukan.

(Diperoleh dari NSObject)
RemoveObserver(NSObject, String, IntPtr)

Menghentikan pengamat yang ditentukan menerima pemberitahuan lebih lanjut tentang nilai yang diubah untuk keyPath dan konteks yang ditentukan.

(Diperoleh dari NSObject)
RespondsToSelector(Selector)

Apakah objek ini mengenali pemilih yang ditentukan.

(Diperoleh dari NSObject)
SetNativeField(String, NSObject)
Kedaluwarsa.

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
SetNilValueForKey(NSString)

Mengatur nilai kunci yang ditentukan ke null.

(Diperoleh dari NSObject)
SetValueForKey(NSObject, NSString)

Mengatur nilai properti yang ditentukan oleh kunci ke nilai yang ditentukan.

(Diperoleh dari NSObject)
SetValueForKeyPath(IntPtr, NSString)

Konstruktor yang digunakan saat membuat representasi terkelola dari objek yang tidak dikelola; Dipanggil oleh runtime.

(Diperoleh dari NSObject)
SetValueForKeyPath(NSObject, NSString)

Mengatur nilai properti yang dapat dicapai menggunakan keypath.

(Diperoleh dari NSObject)
SetValueForUndefinedKey(NSObject, NSString)

Menunjukkan upaya untuk menulis nilai ke kunci yang tidak terdefinisi. Jika tidak ditimpa, meningkatkan NSUndefinedKeyException.

(Diperoleh dari NSObject)
SetValuesForKeysWithDictionary(NSDictionary)

Mengatur nilai NSObject ini ke nilai dalam kamus yang ditentukan.

(Diperoleh dari NSObject)
ToString()

Mengembalikan representasi string dari nilai instans saat ini.

(Diperoleh dari NSObject)
Unbind(NSString)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
Unbind(String)
Kedaluwarsa.

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
ValueForKey(NSString)

Mengembalikan nilai properti yang terkait dengan kunci yang ditentukan.

(Diperoleh dari NSObject)
ValueForKeyPath(NSString)

Mengembalikan nilai properti yang dapat dicapai menggunakan keypath.

(Diperoleh dari NSObject)
ValueForUndefinedKey(NSString)

Menunjukkan upaya untuk membaca nilai kunci yang tidak terdefinisi. Jika tidak ditimpa, meningkatkan NSUndefinedKeyException.

(Diperoleh dari NSObject)
WillChange(NSKeyValueChange, NSIndexSet, NSString)

Menunjukkan bahwa nilai indeks yang ditentukan dalam kunci yang ditentukan akan berubah.

(Diperoleh dari NSObject)
WillChange(NSString, NSKeyValueSetMutationKind, NSSet)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

(Diperoleh dari NSObject)
WillChangeValue(String)

Menunjukkan bahwa nilai kunci yang ditentukan akan berubah.

(Diperoleh dari NSObject)

Metode Ekstensi

ObjectDidBeginEditing(NSObject, INSEditor)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

ObjectDidEndEditing(NSObject, INSEditor)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

GetValidModes(NSObject, NSFontPanel)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

ValidateToolbarItem(NSObject, NSToolbarItem)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

GetDebugDescription(INSObjectProtocol)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

AcceptsPreviewPanelControl(NSObject, QLPreviewPanel)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

BeginPreviewPanelControl(NSObject, QLPreviewPanel)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

EndPreviewPanelControl(NSObject, QLPreviewPanel)

Menyediakan data puncak yang, bersama dengan SCNGeometryElements, menentukan objek 3D.

GetAccessibilityCustomRotors(NSObject)

Mendapatkan array UIAccessibilityCustomRotor objek yang sesuai untuk this objek.

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

Mengatur array UIAccessibilityCustomRotor objek yang sesuai untuk this objek.

Berlaku untuk

Lihat juga