SCNGeometrySource Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 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
- Héritage
- Attributs
- Implémente
Remarques
Les développeurs qui souhaitent générer par programmation des objets personnalisés SCNGeometry utilisent la méthode M:SceneKit.SCNGeometry.Create(SceneKit.SCNGeometrySource[], SceneKit.SCNGeometryElement[]* . La forme et le SCNGeometrySource nombre des objets varient en fonction de la façon dont le développeur décrit la géométrie (par exemple, si les données de vertex se présentent sous la forme d’une série de triplets décrivant des triangles ou d’une série mobile décrivant une bande de triangles) et si la géométrie sera simplement colorée ou avec une carte de texture.
Le code suivant illustre le code personnalisé pour créer une pyramide à quatre côtés personnalisée. Cet exemple montre l’utilisation de sommets, définissant des triangles, sur lesquels une texture unique est mappée. Notez comment les valeurs locs
d’index spécifiques dans sont utilisées pour définir indices
et comment l’ordre dans locs
affecte normals
et txCoords
. Notez également comment les triplets dans indices
sont liés à 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 });
Constructeurs
SCNGeometrySource() |
Le constructeur par défaut initialise une nouvelle instance de cette classe. |
SCNGeometrySource(IntPtr) |
Constructeur utilisé lors de la création de représentations managées d’objets non managés ; Appelé par le runtime. |
SCNGeometrySource(NSCoder) |
Constructeur qui initialise l’objet à partir des données stockées dans l’objet unarchiver. |
SCNGeometrySource(NSObjectFlag) |
Constructeur pour appeler des classes dérivées pour ignorer l’initialisation et simplement allouer l’objet. |
Propriétés
BytesPerComponent |
Taille, en octets, des données vectorielles sous-jacentes. |
Class |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
ClassHandle |
Handle pour cette classe. |
ComponentsPerVector |
Nombre de composants par élément vecteur dans cette source. |
Data |
Mémoire tampon de données sous-jacente. |
DataOffset |
Distance, en octets, entre le début et Data le premier élément de vertex. |
DataStride |
Nombre d’octets entre les éléments de vertex dans Data. |
DebugDescription |
Description significative de cet objet. (Hérité de NSObject) |
Description |
Description de l’objet, la version Objective-C de ToString. (Hérité de NSObject) |
FloatComponents |
Indique si les données du composant de vertex sont constituées de |
Handle |
Handle (pointeur) vers la représentation d’objet non managée. (Hérité de NSObject) |
IsDirectBinding |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
IsProxy |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
RetainCount |
Retourne le nombre de rétention Objective-C actuel pour l’objet. (Hérité de NSObject) |
Self |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
Semantic |
Correspond à la SCNGeometrySourceSemantic valeur de cette source. |
Superclass |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
SuperHandle |
Handle utilisé pour représenter les méthodes de la classe de base pour ce NSObject. (Hérité de NSObject) |
VectorCount |
Nombre total de vecteurs dans le sous-jacent Data. |
Zone |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
Méthodes
AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr) |
Inscrit un objet pour être observé en externe (à l’aide de NSString keyPath). Les modifications observées sont envoyées à la méthode objet ObserveValue(NSString, NSObject, NSDictionary, IntPtr) de l’observateur. (Hérité de NSObject) |
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr) |
Inscrit un objet pour être observé en externe (à l’aide de la chaîne keyPath). Les modifications observées sont envoyées à la méthode objet ObserveValue(NSString, NSObject, NSDictionary, IntPtr) de l’observateur. (Hérité de NSObject) |
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>) |
Inscrit un objet pour être observé en externe à l’aide d’une méthode arbitraire. (Hérité de NSObject) |
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>) |
Inscrit un objet pour être observé en externe à l’aide d’une méthode arbitraire. (Hérité de NSObject) |
AwakeFromNib() |
Appelé après le chargement de l’objet à partir du fichier nib. Les remplaçants doivent appeler base. AwakeFromNib(). (Hérité de NSObject) |
BeginInvokeOnMainThread(Action) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
BeginInvokeOnMainThread(Selector, NSObject) |
Appelle de manière asynchrone le code spécifié sur le thread d’interface utilisateur principal. (Hérité de NSObject) |
Bind(NSString, NSObject, String, NSDictionary) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
Bind(String, NSObject, String, NSDictionary) |
Obsolète.
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
BindingInfo(String) |
Obsolète.
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
BindingOptionDescriptions(String) |
Obsolète.
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
BindingValueClass(String) |
Obsolète.
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
CommitEditing() |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
CommitEditing(NSObject, Selector, IntPtr) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
ConformsToProtocol(IntPtr) |
Appelé pour déterminer si cet objet implémente le protocole spécifié. (Hérité de NSObject) |
Copy() |
Effectue une copie de l’objet Objective-C sous-jacent. (Hérité de NSObject) |
DangerousAutorelease() |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
DangerousRelease() |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
DangerousRetain() |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
DidChange(NSKeyValueChange, NSIndexSet, NSString) |
Indique qu’une modification s’est produite aux index pour une relation à plusieurs. (Hérité de NSObject) |
DidChange(NSString, NSKeyValueSetMutationKind, NSSet) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
DidChangeValue(String) |
Indique qu’une modification s’est produite sur la clé spécifiée. (Hérité de NSObject) |
Dispose() |
Libère les ressources utilisées par l’objet NSObject. (Hérité de NSObject) |
Dispose(Boolean) |
Libère les ressources utilisées par l’objet NSObject. (Hérité de NSObject) |
DoesNotRecognizeSelector(Selector) |
Indique que cet objet ne reconnaît pas le sélecteur spécifié. (Hérité de NSObject) |
EncodeTo(NSCoder) |
Encode l’état de l’objet sur l’encodeur fourni |
Equals(NSObject) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
Equals(Object) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
ExposedBindings() |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
FromData(NSData, NSString, nint, Boolean, nint, nint, nint, nint) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
FromData(NSData, SCNGeometrySourceSemantics, nint, Boolean, nint, nint, nint, nint) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
FromMetalBuffer(IMTLBuffer, MTLVertexFormat, NSString, nint, nint, nint) |
Méthode de fabrique pour créer un nouveau SCNGeometrySource à partir d’une mémoire tampon de données. |
FromMetalBuffer(IMTLBuffer, MTLVertexFormat, SCNGeometrySourceSemantics, nint, nint, nint) |
Méthode de fabrique pour créer un nouveau SCNGeometrySource à partir d’une mémoire tampon de données. |
FromNormals(SCNVector3[]) |
Méthode de fabrique qui crée une source pour les normales de vertex. |
FromTextureCoordinates(CGPoint[]) |
Méthode de fabrique qui crée une source pour les coordonnées de texture. |
FromVertices(SCNVector3[]) |
Méthode de fabrique pour créer une source pour les données de vertex. |
GetBindingInfo(NSString) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
GetBindingOptionDescriptions(NSString) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
GetBindingValueClass(NSString) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
GetDictionaryOfValuesFromKeys(NSString[]) |
Récupère les valeurs des clés spécifiées. (Hérité de NSObject) |
GetHashCode() |
Génère un code de hachage pour l’instance actuelle. (Hérité de NSObject) |
GetMethodForSelector(Selector) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
GetNativeField(String) |
Obsolète.
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
GetNativeHash() |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
Init() |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
InitializeHandle(IntPtr) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
InitializeHandle(IntPtr, String) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
Invoke(Action, Double) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
Invoke(Action, TimeSpan) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
InvokeOnMainThread(Action) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
InvokeOnMainThread(Selector, NSObject) |
Appelle de manière synchrone le code spécifié sur le thread d’interface utilisateur principal. (Hérité de NSObject) |
IsEqual(NSObject) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
IsKindOfClass(Class) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
IsMemberOfClass(Class) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
MarkDirty() |
Promeut un objet homologue normal (IsDirectBinding a la valeur true) en objet toggleref. (Hérité de NSObject) |
MutableCopy() |
Crée une copie mutable du NSObject spécifié. (Hérité de NSObject) |
ObjectDidEndEditing(NSObject) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
ObserveValue(NSString, NSObject, NSDictionary, IntPtr) |
Indique que la valeur au keyPath spécifié par rapport à cet objet a changé. (Hérité de NSObject) |
PerformSelector(Selector) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
PerformSelector(Selector, NSObject) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
PerformSelector(Selector, NSObject, Double) |
Appelle le sélecteur sur l’instance actuelle et, si le |
PerformSelector(Selector, NSObject, Double, NSString[]) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
PerformSelector(Selector, NSObject, NSObject) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
PerformSelector(Selector, NSThread, NSObject, Boolean) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[]) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
PrepareForInterfaceBuilder() |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
RemoveObserver(NSObject, NSString) |
Empêche l’observateur spécifié de recevoir d’autres notifications de valeurs modifiées pour le keyPath spécifié. (Hérité de NSObject) |
RemoveObserver(NSObject, NSString, IntPtr) |
Empêche l’observateur spécifié de recevoir d’autres notifications de valeurs modifiées pour le keyPath et le contexte spécifiés. (Hérité de NSObject) |
RemoveObserver(NSObject, String) |
Empêche l’observateur spécifié de recevoir d’autres notifications de valeurs modifiées pour le keyPath spécifié. (Hérité de NSObject) |
RemoveObserver(NSObject, String, IntPtr) |
Empêche l’observateur spécifié de recevoir d’autres notifications de valeurs modifiées pour le keyPath et le contexte spécifiés. (Hérité de NSObject) |
RespondsToSelector(Selector) |
Indique si cet objet reconnaît le sélecteur spécifié. (Hérité de NSObject) |
SetNativeField(String, NSObject) |
Obsolète.
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
SetNilValueForKey(NSString) |
Définit la valeur null de la clé spécifiée. (Hérité de NSObject) |
SetValueForKey(NSObject, NSString) |
Définit la valeur de la propriété spécifiée par la clé à la valeur spécifiée. (Hérité de NSObject) |
SetValueForKeyPath(IntPtr, NSString) |
Constructeur utilisé lors de la création de représentations managées d’objets non managés ; Appelé par le runtime. (Hérité de NSObject) |
SetValueForKeyPath(NSObject, NSString) |
Définit la valeur d’une propriété accessible à l’aide d’un chemin de clé. (Hérité de NSObject) |
SetValueForUndefinedKey(NSObject, NSString) |
Indique une tentative d’écriture d’une valeur dans une clé non définie. S’il n’est pas remplacé, déclenche une exception NSUndefinedKeyException. (Hérité de NSObject) |
SetValuesForKeysWithDictionary(NSDictionary) |
Définit les valeurs de ce NSObject sur celles du dictionnaire spécifié. (Hérité de NSObject) |
ToString() |
Retourne une représentation sous forme de chaîne de la valeur de l’instance actuelle. (Hérité de NSObject) |
Unbind(NSString) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
Unbind(String) |
Obsolète.
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
ValueForKey(NSString) |
Retourne la valeur de la propriété associée à la clé spécifiée. (Hérité de NSObject) |
ValueForKeyPath(NSString) |
Retourne la valeur d’une propriété accessible à l’aide d’un chemin de clé. (Hérité de NSObject) |
ValueForUndefinedKey(NSString) |
Indique une tentative de lecture d’une valeur d’une clé non définie. S’il n’est pas remplacé, déclenche une exception NSUndefinedKeyException. (Hérité de NSObject) |
WillChange(NSKeyValueChange, NSIndexSet, NSString) |
Indique que les valeurs des index spécifiés dans la clé spécifiée sont sur le point de changer. (Hérité de NSObject) |
WillChange(NSString, NSKeyValueSetMutationKind, NSSet) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. (Hérité de NSObject) |
WillChangeValue(String) |
Indique que la valeur de la clé spécifiée est sur le point de changer. (Hérité de NSObject) |
Méthodes d’extension
ObjectDidBeginEditing(NSObject, INSEditor) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
ObjectDidEndEditing(NSObject, INSEditor) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
GetValidModes(NSObject, NSFontPanel) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
ValidateToolbarItem(NSObject, NSToolbarItem) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
GetDebugDescription(INSObjectProtocol) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
AcceptsPreviewPanelControl(NSObject, QLPreviewPanel) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
BeginPreviewPanelControl(NSObject, QLPreviewPanel) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
EndPreviewPanelControl(NSObject, QLPreviewPanel) |
Fournit des données de vertex qui, conjointement avec SCNGeometryElements, définissent un objet 3D. |
GetAccessibilityCustomRotors(NSObject) |
Obtient le tableau d’objets UIAccessibilityCustomRotor approprié pour l’objet |
SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[]) |
Définit le tableau d’objets UIAccessibilityCustomRotor approprié pour l’objet |