Compartir a través de


MDLVoxelArray Constructores

Definición

Sobrecargas

MDLVoxelArray(NSObjectFlag)

Constructor para llamar a en clases derivadas para omitir la inicialización y simplemente asignar el objeto.

MDLVoxelArray(IntPtr)

Constructor utilizado al crear representaciones administradas de objetos no administrados; Lo llama el tiempo de ejecución.

MDLVoxelArray(NSData, MDLAxisAlignedBoundingBox, Single)

Crea una nueva MDLVoxelArray a partir de los datos de vóxel proporcionados, el rectángulo de límite y la extensión de vóxel.

MDLVoxelArray(MDLAsset, Int32, Single)
MDLVoxelArray(MDLAsset, Int32, Int32, Int32, Single)

Los desarrolladores no deben usar este constructor en desuso. Los desarrolladores deben usar "new MDLVoxelArray (MDLAsset, int, float)".

MDLVoxelArray(MDLAsset, Int32, Single, Single, Single)

Crea un nuevo MDLVoxelArray a partir del recurso proporcionado, con el número especificado de divisiones y los números especificados de shells interiores y exteriores concéntricos de vóxeles.

MDLVoxelArray(NSObjectFlag)

Constructor para llamar a en clases derivadas para omitir la inicialización y simplemente asignar el objeto.

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

Parámetros

t
NSObjectFlag

Valor centinela sin usar, pase NSObjectFlag.Empty.

Comentarios

Las clases derivadas deben llamar a este constructor cuando construyen completamente el objeto en código administrado y simplemente quieren que el tiempo de ejecución asigne e inicialice el objeto NSObject. Esto es necesario para implementar el proceso de inicialización en dos pasos que usa Objective-C, el primer paso es realizar la asignación de objetos; el segundo paso es inicializar el objeto. Cuando los desarrolladores invocan al constructor que toma NSObjectFlag.Empty, aprovechan una ruta de acceso directa que va hasta NSObject para asignar simplemente la memoria del objeto y enlazar los objetos Objective-C y C# juntos. La inicialización real del objeto es hasta el desarrollador.

Normalmente, el generador de enlaces usa este constructor para asignar el objeto, pero impide que se produzca la inicialización real. Una vez realizada la asignación, el constructor tiene que inicializar el objeto . Con los constructores generados por el generador de enlaces, esto significa que invoca manualmente uno de los métodos "init" para inicializar el objeto.

Es responsabilidad del desarrollador inicializar completamente el objeto si se encadenan mediante la ruta de acceso NSObjectFlag.Empty.

En general, si el constructor del desarrollador invoca la implementación base NSObjectFlag.Empty, debe llamar a un método init de Objective-C. Si este no es el caso, los desarrolladores deben encadenar al constructor adecuado en su clase.

El valor del argumento se omite y simplemente garantiza que el único código que se ejecuta es la fase de construcción es la asignación básica de NSObject y el registro del tipo en tiempo de ejecución. Normalmente, el encadenamiento tendría el siguiente aspecto:

//
// 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);
}

Se aplica a

MDLVoxelArray(IntPtr)

Constructor utilizado al crear representaciones administradas de objetos no administrados; Lo llama el tiempo de ejecución.

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

Parámetros

handle
IntPtr

nativeint

Puntero (identificador) al objeto no administrado.

Comentarios

La infraestructura en tiempo de ejecución (GetNSObject(IntPtr)) invoca este constructor para crear una nueva representación administrada para un puntero a un objeto Objective-C no administrado. Los desarrolladores no deben invocar este método directamente, sino que deben llamar al método GetNSObject, ya que impedirá que dos instancias de un objeto administrado apunten al mismo objeto nativo.

Se aplica a

MDLVoxelArray(NSData, MDLAxisAlignedBoundingBox, Single)

Crea una nueva MDLVoxelArray a partir de los datos de vóxel proporcionados, el rectángulo de límite y la extensión de vóxel.

[Foundation.Export("initWithData:boundingBox:voxelExtent:")]
public MDLVoxelArray (Foundation.NSData voxelData, ModelIO.MDLAxisAlignedBoundingBox boundingBox, float voxelExtent);
new ModelIO.MDLVoxelArray : Foundation.NSData * ModelIO.MDLAxisAlignedBoundingBox * single -> ModelIO.MDLVoxelArray

Parámetros

voxelData
NSData
voxelExtent
Single
Atributos

Se aplica a

MDLVoxelArray(MDLAsset, Int32, Single)

[Foundation.Export("initWithAsset:divisions:patchRadius:")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 10, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 12, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.TvOS, 10, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public MDLVoxelArray (ModelIO.MDLAsset asset, int divisions, float patchRadius);
new ModelIO.MDLVoxelArray : ModelIO.MDLAsset * int * single -> ModelIO.MDLVoxelArray

Parámetros

asset
MDLAsset
divisions
Int32
patchRadius
Single
Atributos

Se aplica a

MDLVoxelArray(MDLAsset, Int32, Int32, Int32, Single)

Los desarrolladores no deben usar este constructor en desuso. Los desarrolladores deben usar "new MDLVoxelArray (MDLAsset, int, float)".

[Foundation.Export("initWithAsset:divisions:interiorShells:exteriorShells:patchRadius:")]
[ObjCRuntime.Deprecated(ObjCRuntime.PlatformName.MacOSX, 10, 12, ObjCRuntime.PlatformArchitecture.None, "Use 'new MDLVoxelArray (MDLAsset, int, float)'.")]
public MDLVoxelArray (ModelIO.MDLAsset asset, int divisions, int interiorShells, int exteriorShells, float patchRadius);
new ModelIO.MDLVoxelArray : ModelIO.MDLAsset * int * int * int * single -> ModelIO.MDLVoxelArray

Parámetros

asset
MDLAsset
divisions
Int32
interiorShells
Int32
exteriorShells
Int32
patchRadius
Single
Atributos

Se aplica a

MDLVoxelArray(MDLAsset, Int32, Single, Single, Single)

Crea un nuevo MDLVoxelArray a partir del recurso proporcionado, con el número especificado de divisiones y los números especificados de shells interiores y exteriores concéntricos de vóxeles.

[Foundation.Export("initWithAsset:divisions:interiorNBWidth:exteriorNBWidth:patchRadius:")]
[ObjCRuntime.Deprecated(ObjCRuntime.PlatformName.MacOSX, 10, 12, ObjCRuntime.PlatformArchitecture.None, "Use 'new MDLVoxelArray (MDLAsset, int, float)'.")]
[ObjCRuntime.Obsoleted(ObjCRuntime.PlatformName.iOS, 10, 0, ObjCRuntime.PlatformArchitecture.None, "Use new MDLVoxelArray (MDLAsset, int, float)")]
public MDLVoxelArray (ModelIO.MDLAsset asset, int divisions, float interiorNBWidth, float exteriorNBWidth, float patchRadius);
new ModelIO.MDLVoxelArray : ModelIO.MDLAsset * int * single * single * single -> ModelIO.MDLVoxelArray

Parámetros

asset
MDLAsset
divisions
Int32
interiorNBWidth
Single
exteriorNBWidth
Single
patchRadius
Single
Atributos

Se aplica a