Freigeben über


MDLSkyCubeTexture Konstruktoren

Definition

Überlädt

MDLSkyCubeTexture(NSObjectFlag)

Konstruktor, um abgeleitete Klassen aufzurufen, um die Initialisierung zu überspringen und das Objekt nur zuzuweisen.

MDLSkyCubeTexture(IntPtr)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen nicht verwalteter Objekte verwendet wird; Wird von der Runtime aufgerufen.

MDLSkyCubeTexture(String, MDLTextureChannelEncoding, Vector2i, Single, Single, Single, Single)
MDLSkyCubeTexture(NSData, Boolean, String, Vector2i, nint, nuint, MDLTextureChannelEncoding, Boolean)
MDLSkyCubeTexture(String, MDLTextureChannelEncoding, Vector2i, Single, Single, Single, Single, Single)

MDLSkyCubeTexture(NSObjectFlag)

Konstruktor, um abgeleitete Klassen aufzurufen, um die Initialisierung zu überspringen und das Objekt nur zuzuweisen.

protected MDLSkyCubeTexture (Foundation.NSObjectFlag t);
new ModelIO.MDLSkyCubeTexture : Foundation.NSObjectFlag -> ModelIO.MDLSkyCubeTexture

Parameter

t
NSObjectFlag

Nicht verwendeter Sentinelwert übergeben Sie NSObjectFlag.Empty.

Hinweise

Dieser Konstruktor sollte von abgeleiteten Klassen aufgerufen werden, wenn sie das Objekt vollständig in verwaltetem Code erstellen und lediglich das NSObject von der Runtime zuordnen und initialisieren möchten. Dies ist erforderlich, um den zweistufigen Initialisierungsprozess zu implementieren, den Objective-C verwendet. Der erste Schritt besteht darin, die Objektzuordnung durchzuführen, der zweite Schritt besteht darin, das Objekt zu initialisieren. Wenn Entwickler den Konstruktor aufrufen, der NSObjectFlag.Empty verwendet, nutzen sie einen direkten Pfad, der bis zu NSObject führt, um nur den Arbeitsspeicher des Objekts zuzuweisen und die Objective-C- und C#-Objekte miteinander zu binden. Die tatsächliche Initialisierung des Objekts liegt beim Entwickler.

Dieser Konstruktor wird in der Regel vom Bindungsgenerator verwendet, um das Objekt zuzuordnen, aber verhindert, dass die tatsächliche Initialisierung stattfindet. Nachdem die Zuordnung erfolgt ist, muss der Konstruktor das Objekt initialisieren. Bei vom Bindungsgenerator generierten Konstruktoren bedeutet dies, dass eine der "init"-Methoden manuell aufgerufen wird, um das Objekt zu initialisieren.

Es liegt in der Verantwortung des Entwicklers, das Objekt vollständig zu initialisieren, wenn es mithilfe des Pfads NSObjectFlag.Empty verkettet wird.

Wenn der Konstruktor des Entwicklers im Allgemeinen die Basisimplementierung NSObjectFlag.Empty aufruft, sollte er eine Objective-C-Init-Methode aufrufen. Wenn dies nicht der Fall ist, sollten Entwickler stattdessen mit dem richtigen Konstruktor in ihrer Klasse verketten.

Der Argumentwert wird ignoriert und stellt lediglich sicher, dass der einzige ausgeführte Code die Konstruktionsphase ist die grundlegende NSObject-Zuordnung und Laufzeittypregistrierung. In der Regel sieht die Verkettung wie folgt aus:

//
// The NSObjectFlag merely allocates the object and registers the
// C# class with the Objective-C runtime if necessary, but no actual
// initXxx method is invoked, that is done later in the constructor
//
// This is taken from Xamarin.iOS's source code:
//
[Export ("initWithFrame:")]
public UIView (System.Drawing.RectangleF frame) : base (NSObjectFlag.Empty)
{
// Invoke the init method now.
	var initWithFrame = new Selector ("initWithFrame:").Handle;
	if (IsDirectBinding)
		Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSend_CGRect (this.Handle, initWithFrame, frame);
	else
		Handle = ObjCRuntime.Messaging.IntPtr_objc_msgSendSuper_CGRect (this.SuperHandle, initWithFrame, frame);
}

Gilt für:

MDLSkyCubeTexture(IntPtr)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen nicht verwalteter Objekte verwendet wird; Wird von der Runtime aufgerufen.

protected internal MDLSkyCubeTexture (IntPtr handle);
new ModelIO.MDLSkyCubeTexture : nativeint -> ModelIO.MDLSkyCubeTexture

Parameter

handle
IntPtr

nativeint

Zeiger (Handle) auf das nicht verwaltete Objekt.

Hinweise

Dieser Konstruktor wird von der Laufzeitinfrastruktur (GetNSObject(IntPtr)) aufgerufen, um eine neue verwaltete Darstellung für einen Zeiger auf ein nicht verwaltetes Objective-C-Objekt zu erstellen. Entwickler sollten diese Methode nicht direkt aufrufen, sondern die GetNSObject-Methode aufrufen, da sie verhindert, dass zwei Instanzen eines verwalteten Objekts auf dasselbe systemeigene Objekt zeigen.

Gilt für:

MDLSkyCubeTexture(String, MDLTextureChannelEncoding, Vector2i, Single, Single, Single, Single)

[Foundation.Export("initWithName:channelEncoding:textureDimensions:turbidity:sunElevation:upperAtmosphereScattering:groundAlbedo:")]
public MDLSkyCubeTexture (string name, ModelIO.MDLTextureChannelEncoding channelEncoding, OpenTK.Vector2i textureDimensions, float turbidity, float sunElevation, float upperAtmosphereScattering, float groundAlbedo);
new ModelIO.MDLSkyCubeTexture : string * ModelIO.MDLTextureChannelEncoding * OpenTK.Vector2i * single * single * single * single -> ModelIO.MDLSkyCubeTexture

Parameter

name
String

Muss hinzugefügt werden.

Dieser Parameter kann null sein.

channelEncoding
MDLTextureChannelEncoding
textureDimensions
Vector2i
turbidity
Single
sunElevation
Single
upperAtmosphereScattering
Single
groundAlbedo
Single
Attribute

Gilt für:

MDLSkyCubeTexture(NSData, Boolean, String, Vector2i, nint, nuint, MDLTextureChannelEncoding, Boolean)

[Foundation.Export("initWithData:topLeftOrigin:name:dimensions:rowStride:channelCount:channelEncoding:isCube:")]
public MDLSkyCubeTexture (Foundation.NSData pixelData, bool topLeftOrigin, string name, OpenTK.Vector2i dimensions, nint rowStride, nuint channelCount, ModelIO.MDLTextureChannelEncoding channelEncoding, bool isCube);
new ModelIO.MDLSkyCubeTexture : Foundation.NSData * bool * string * OpenTK.Vector2i * nint * nuint * ModelIO.MDLTextureChannelEncoding * bool -> ModelIO.MDLSkyCubeTexture

Parameter

pixelData
NSData

Muss hinzugefügt werden.

Dieser Parameter kann null sein.

topLeftOrigin
Boolean
name
String

Muss hinzugefügt werden.

Dieser Parameter kann null sein.

dimensions
Vector2i
rowStride
System.System.IntPtr System.nativeint
channelCount
System.System.UIntPtr System.unativeint
channelEncoding
MDLTextureChannelEncoding
isCube
Boolean
Attribute

Gilt für:

MDLSkyCubeTexture(String, MDLTextureChannelEncoding, Vector2i, Single, Single, Single, Single, Single)

[Foundation.Export("initWithName:channelEncoding:textureDimensions:turbidity:sunElevation:sunAzimuth:upperAtmosphereScattering:groundAlbedo:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.TvOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 13, ObjCRuntime.PlatformArchitecture.Arch64, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public MDLSkyCubeTexture (string name, ModelIO.MDLTextureChannelEncoding channelEncoding, OpenTK.Vector2i textureDimensions, float turbidity, float sunElevation, float sunAzimuth, float upperAtmosphereScattering, float groundAlbedo);
new ModelIO.MDLSkyCubeTexture : string * ModelIO.MDLTextureChannelEncoding * OpenTK.Vector2i * single * single * single * single * single -> ModelIO.MDLSkyCubeTexture

Parameter

name
String

Muss hinzugefügt werden.

Dieser Parameter kann null sein.

channelEncoding
MDLTextureChannelEncoding
textureDimensions
Vector2i
turbidity
Single
sunElevation
Single
sunAzimuth
Single
upperAtmosphereScattering
Single
groundAlbedo
Single
Attribute

Gilt für: