SCNGeometry Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Classe base per oggetti geometry SceneKit
[Foundation.Register("SCNGeometry", true)]
public class SCNGeometry : Foundation.NSObject, Foundation.INSCopying, Foundation.INSSecureCoding, IDisposable, SceneKit.ISCNAnimatable, SceneKit.ISCNBoundingVolume, SceneKit.ISCNShadable
[<Foundation.Register("SCNGeometry", true)>]
type SCNGeometry = class
inherit NSObject
interface INSCoding
interface INativeObject
interface IDisposable
interface INSCopying
interface INSSecureCoding
interface ISCNAnimatable
interface ISCNBoundingVolume
interface ISCNShadable
- Ereditarietà
- Derivato
- Attributi
- Implementazioni
Commenti
Tutte le geometrie in SceneKit sono descritte dalle sottoclassi di SCNGeometry:
| SCNCapsule | Una capsula a forma di pillola con estremità regolabili | |
| SCNCone | Cono il cui top può essere troncato | |
| SCNBox | Una scatola rettangolare. | |
| SCNCylinder | Un cilindro. | |
| SCNFloor | Un piano infinito con la possibilità di riflettere la geometria sopra di essa. | |
| SCNPlane | Rettangolo a un lato. | |
| SCNPyramid | Un tetraedro. | |
| SCNShape | Forma 2D che è stata estrusa nella terza dimensione. | |
| SCNSphere | Una sfera. | |
| SCNText | Testo estruso. | |
| SCNTorus | Forma ad anello. | |
| SCNTube | Cilindro non compresso. | |
Le sottoclassi vengono in genere create con un metodo factory statico Create anziché con un costruttore.
SceneKit può anche caricare intere scene da . File DAE con il FromFile(String) metodo .
Gli sviluppatori possono creare geometria da una mesh ModelIO usando FromMesh(MDLMesh).
Infine, gli sviluppatori possono creare geometrie personalizzate usando il Create(SCNGeometrySource[], SCNGeometryElement[]) metodo con matrici di oggetti e SCNGeometryElement appropriatiSCNGeometrySource. Di seguito viene illustrata la creazione di una piramide personalizzata:
//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(-1, -1),
new CGPoint(-1, 1),
new CGPoint(1, 1),
new CGPoint(1, -1)
};
var txCoordsSource = SCNGeometrySource.FromTextureCoordinates(txCoords);
var geometry = SCNGeometry.Create(new [] { locSource, normSource, txCoordsSource }, new [] { element });

Costruttori
| Nome | Descrizione |
|---|---|
| SCNGeometry(NativeHandle) |
Costruttore utilizzato durante la creazione di rappresentazioni gestite di oggetti non gestiti. Chiamato dal runtime. |
| SCNGeometry(NSCoder) |
Costruttore che inizializza l'oggetto dai dati archiviati nell'oggetto unarchiver. |
| SCNGeometry(NSObjectFlag) |
Costruttore da chiamare sulle classi derivate per ignorare l'inizializzazione e semplicemente allocare l'oggetto. |
Proprietà
| Nome | Descrizione |
|---|---|
| AccessibilityAttributedUserInputLabels |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| AccessibilityRespondsToUserInteraction |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| AccessibilityTextualContext |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| AccessibilityUserInputLabels |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| Class |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ClassHandle |
Handle della classe Objective-C per questa classe. |
| DebugDescription |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| Description |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| EdgeCreasesElement |
Classe base per oggetti geometry SceneKit |
| EdgeCreasesSource |
Classe base per oggetti geometry SceneKit |
| ExposedBindings |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| FirstMaterial |
Classe base per oggetti geometry SceneKit |
| GeometryElementCount |
Classe base per oggetti geometry SceneKit |
| GeometryElements |
Classe base per oggetti geometry SceneKit |
| GeometrySourceChannels |
Classe base per oggetti geometry SceneKit |
| GeometrySources |
Classe base per oggetti geometry SceneKit |
| Handle |
Handle (puntatore) alla rappresentazione dell'oggetto non gestito. (Ereditato da NSObject) |
| IsDirectBinding |
Ottiene o imposta un valore che indica se questa istanza utilizza l'associazione diretta Objective-C. (Ereditato da NSObject) |
| IsProxy |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| LevelsOfDetail |
Classe base per oggetti geometry SceneKit |
| Materials |
Classe base per oggetti geometry SceneKit |
| MinimumLanguageVersion |
Classe base per oggetti geometry SceneKit |
| Name |
Classe base per oggetti geometry SceneKit |
| Program |
Classe base per oggetti geometry SceneKit |
| RetainCount |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| Self |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ShaderModifiers |
Classe base per oggetti geometry SceneKit |
| SubdivisionLevel |
Classe base per oggetti geometry SceneKit |
| Superclass |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| SuperHandle |
Handle utilizzato per rappresentare i metodi nella classe di base per questo NSObjectoggetto . (Ereditato da NSObject) |
| Tessellator |
Classe base per oggetti geometry SceneKit |
| WantsAdaptiveSubdivision |
Classe base per oggetti geometry SceneKit |
| WeakShaderModifiers |
Classe base per oggetti geometry SceneKit |
| Zone |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
Metodi
| Nome | Descrizione |
|---|---|
| AddAnimation(ISCNAnimationProtocol, String) |
Aggiunge |
| AddAnimation(SCNAnimationPlayer, NSString) |
Classe base per oggetti geometry SceneKit |
| AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>) |
Registra un oggetto per essere osservato esternamente usando un metodo arbitrario. (Ereditato da NSObject) |
| AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>) |
Registra un oggetto per essere osservato esternamente usando un metodo arbitrario. (Ereditato da NSObject) |
| AwakeFromNib() |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| BeginInvokeOnMainThread(Action) |
Richiama l'azione specificata in modo asincrono nel thread principale dell'interfaccia utente. (Ereditato da NSObject) |
| BeginInvokeOnMainThread(Selector, NSObject) |
Richiama in modo asincrono il codice specificato nel thread principale dell'interfaccia utente. (Ereditato da NSObject) |
| Bind(NSString, NSObject, String, NSBindingOptions) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| Bind(NSString, NSObject, String, NSDictionary) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| CommitEditing() |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| CommitEditing(NSObject, Selector, IntPtr) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ConformsToProtocol(NativeHandle) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| Copy() |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| Copy(NSZone) |
Esegue una copia dell'oggetto Objective-C sottostante. |
| Create() |
Classe base per oggetti geometry SceneKit |
| Create(SCNGeometrySource[], SCNGeometryElement[], Int32[]) |
Classe base per oggetti geometry SceneKit |
| Create(SCNGeometrySource[], SCNGeometryElement[]) |
Classe base per oggetti geometry SceneKit |
| DangerousAutorelease() |
Chiama il selettore 'autorelease' su questo oggetto. (Ereditato da NSObject) |
| DangerousRelease() |
Chiama il selettore 'release' su questo oggetto. (Ereditato da NSObject) |
| DangerousRetain() |
Chiama il selettore 'retain' su questo oggetto. (Ereditato da NSObject) |
| DidChange(NSKeyValueChange, NSIndexSet, NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| DidChange(NSString, NSKeyValueSetMutationKind, NSSet) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| DidChangeValue(String) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| Dispose() |
Rilascia le risorse utilizzate dall'oggetto NSObject . (Ereditato da NSObject) |
| Dispose(Boolean) |
Rilascia le risorse usate da questo oggetto. (Ereditato da NSObject) |
| DoesNotRecognizeSelector(Selector) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| EncodeTo(NSCoder) |
Codifica lo stato dell'oggetto usando il codificatore fornito. |
| Equals(NSObject) |
Determina se l'oggetto specificato NSObject è uguale all'oggetto corrente NSObject. (Ereditato da NSObject) |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente NSObject. (Ereditato da NSObject) |
| FromMesh(MDLMesh) |
Classe base per oggetti geometry SceneKit |
| GetAnimation(NSString) |
Gli sviluppatori non devono usare questo metodo deprecato. Gli sviluppatori devono usare invece 'GetAnimationPlayer'. |
| GetAnimationKeys() |
Classe base per oggetti geometry SceneKit |
| GetAnimationPlayer(NSString) |
Classe base per oggetti geometry SceneKit |
| GetBindingInfo(NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| GetBindingOptionDescriptions(NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| GetBindingValueClass(NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| GetBoundingBox(SCNVector3, SCNVector3) |
Classe base per oggetti geometry SceneKit |
| GetBoundingSphere(SCNVector3, NFloat) |
Restituisce |
| GetDictionaryOfValuesFromKeys(NSString[]) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| GetGeometryElement(IntPtr) |
Ottiene l'elemento in corrispondenza |
| GetGeometrySourcesForSemantic(String) |
Classe base per oggetti geometry SceneKit |
| GetHashCode() |
Genera un codice hash per l'istanza corrente. (Ereditato da NSObject) |
| GetMaterial(String) |
Classe base per oggetti geometry SceneKit |
| GetMethodForSelector(Selector) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| GetNativeHash() |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| HandleBinding(String, SCNBindingHandler) |
Classe base per oggetti geometry SceneKit |
| HandleUnbinding(String, SCNBindingHandler) |
Classe base per oggetti geometry SceneKit |
| Init() |
Inizializza l'oggetto chiamando il metodo Objective-C |
| InitializeHandle(NativeHandle, String) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| InitializeHandle(NativeHandle) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| InsertMaterial(SCNMaterial, IntPtr) |
Inserisce l'oggetto specificato |
| Invoke(Action, Double) |
Richiama l'azione specificata dopo il ritardo specificato. (Ereditato da NSObject) |
| Invoke(Action, TimeSpan) |
Richiama l'azione specificata dopo il ritardo specificato. (Ereditato da NSObject) |
| InvokeOnMainThread(Action) |
Richiama l'azione specificata in modo sincrono nel thread principale dell'interfaccia utente. (Ereditato da NSObject) |
| InvokeOnMainThread(Selector, NSObject) |
Richiama in modo sincrono il codice specificato nel thread principale dell'interfaccia utente. (Ereditato da NSObject) |
| IsAnimationPaused(NSString) |
Classe base per oggetti geometry SceneKit |
| IsEqual(NSObject) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| IsKindOfClass(Class) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| IsMemberOfClass(Class) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| MarkDirty() |
Promuove un normale oggetto peer (IsDirectBinding è true) in un oggetto toggleref. (Ereditato da NSObject) |
| MutableCopy() |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ObjectDidEndEditing(NSObject) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ObserveValue(NSString, NSObject, NSDictionary, IntPtr) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| PauseAnimation(NSString) |
Classe base per oggetti geometry SceneKit |
| PerformSelector(Selector, NSObject, Double, NSString[]) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| PerformSelector(Selector, NSObject, Double) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| PerformSelector(Selector, NSObject, NSObject) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| PerformSelector(Selector, NSObject) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[]) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| PerformSelector(Selector, NSThread, NSObject, Boolean) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| PerformSelector(Selector) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| PrepareForInterfaceBuilder() |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| RemoveAllAnimations() |
Classe base per oggetti geometry SceneKit |
| RemoveAllAnimationsWithBlendOutDuration(NFloat) |
Classe base per oggetti geometry SceneKit |
| RemoveAnimation(NSString, NFloat) |
Deprecated. Gli sviluppatori devono usare RemoveAnimationUsingBlendOutDuration(NSString, NFloat). |
| RemoveAnimation(NSString) |
Classe base per oggetti geometry SceneKit |
| RemoveAnimationUsingBlendOutDuration(NSString, NFloat) |
Rimuove l'animazione specificata, fondendola nella durata specificata. |
| RemoveMaterial(IntPtr) |
Rimuove il materiale in corrispondenza dell'indice specificato. |
| RemoveObserver(NSObject, NSString, IntPtr) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| RemoveObserver(NSObject, NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| RemoveObserver(NSObject, String, IntPtr) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| RemoveObserver(NSObject, String) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ReplaceMaterial(IntPtr, SCNMaterial) |
Classe base per oggetti geometry SceneKit |
| RespondsToSelector(Selector) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ResumeAnimation(NSString) |
Classe base per oggetti geometry SceneKit |
| SetBoundingBox(SCNVector3, SCNVector3) |
Classe base per oggetti geometry SceneKit |
| SetNilValueForKey(NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| SetSpeed(NFloat, NSString) |
Deprecated. Gli sviluppatori devono invece usare Speed, |
| SetValueForKey(NSObject, NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| SetValueForKeyPath(NativeHandle, NSString) |
Imposta il valore per la proprietà identificata da un determinato percorso di chiave su un determinato valore. (Ereditato da NSObject) |
| SetValueForKeyPath(NSObject, NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| SetValueForUndefinedKey(NSObject, NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| SetValuesForKeysWithDictionary(NSDictionary) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ToString() |
Restituisce una rappresentazione di stringa del valore dell'istanza corrente. (Ereditato da NSObject) |
| Unbind(NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ValueForKey(NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ValueForKeyPath(NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| ValueForUndefinedKey(NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| WillChange(NSKeyValueChange, NSIndexSet, NSString) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| WillChange(NSString, NSKeyValueSetMutationKind, NSSet) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |
| WillChangeValue(String) |
Classe base per oggetti geometry SceneKit (Ereditato da NSObject) |