Compartilhar via


MDLVoxelArray Construtores

Definição

Sobrecargas

MDLVoxelArray(NSObjectFlag)

Construtor para chamar em classes derivadas para ignorar a inicialização e simplesmente alocar o objeto.

MDLVoxelArray(IntPtr)

Um construtor usado ao criar representações gerenciadas de objetos não gerenciados; Chamado pelo runtime.

MDLVoxelArray(NSData, MDLAxisAlignedBoundingBox, Single)

Cria um novo MDLVoxelArray com base nos dados voxel fornecidos, na caixa delimitadora e na extensão voxel.

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

Os desenvolvedores não devem usar esse construtor preterido. Os desenvolvedores devem usar 'novo MDLVoxelArray (MDLAsset, int, float)'.

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

Cria um novo MDLVoxelArray do ativo fornecido, com o número especificado de divisões e os números especificados de shells internos concêntricos e externos de voxels.

MDLVoxelArray(NSObjectFlag)

Construtor para chamar em classes derivadas para ignorar a inicialização e simplesmente alocar o objeto.

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

Parâmetros

t
NSObjectFlag

Valor sentinela não utilizado, passe NSObjectFlag.Empty.

Comentários

Esse construtor deve ser chamado por classes derivadas quando eles constroem completamente o objeto no código gerenciado e apenas querem que o runtime aloque e inicialize o NSObject. Isso é necessário para implementar o processo de inicialização em duas etapas que Objective-C usa, a primeira etapa é executar a alocação de objeto, a segunda etapa é inicializar o objeto. Quando os desenvolvedores invocam o construtor que usa o NSObjectFlag.Empty, eles aproveitam um caminho direto que vai até NSObject para simplesmente alocar a memória do objeto e associar os objetos Objective-C e C#. A inicialização real do objeto cabe ao desenvolvedor.

Esse construtor normalmente é usado pelo gerador de associação para alocar o objeto, mas impede que a inicialização real ocorra. Depois que a alocação tiver ocorrido, o construtor precisará inicializar o objeto . Com construtores gerados pelo gerador de associação, isso significa que ele invoca manualmente um dos métodos "init" para inicializar o objeto.

É responsabilidade do desenvolvedor inicializar completamente o objeto se ele se encadear usando o caminho NSObjectFlag.Empty.

Em geral, se o construtor do desenvolvedor invocar a implementação base NSObjectFlag.Empty, ele deverá chamar um método objective-C init. Se esse não for o caso, os desenvolvedores deverão encadear o construtor adequado em sua classe.

O valor do argumento é ignorado e apenas garante que o único código executado seja a fase de construção é a alocação básica de NSObject e o registro de tipo de runtime. Normalmente, o encadeamento teria esta aparência:

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

Aplica-se a

MDLVoxelArray(IntPtr)

Um construtor usado ao criar representações gerenciadas de objetos não gerenciados; Chamado pelo runtime.

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

Parâmetros

handle
IntPtr

nativeint

Ponteiro (identificador) para o objeto não gerenciado.

Comentários

Esse construtor é invocado pela infraestrutura de runtime (GetNSObject(IntPtr)) para criar uma nova representação gerenciada para um ponteiro para um objeto Objective-C não gerenciado. Os desenvolvedores não devem invocar esse método diretamente, em vez disso, devem chamar o método GetNSObject, pois ele impedirá que duas instâncias de um objeto gerenciado apontem para o mesmo objeto nativo.

Aplica-se a

MDLVoxelArray(NSData, MDLAxisAlignedBoundingBox, Single)

Cria um novo MDLVoxelArray com base nos dados voxel fornecidos, na caixa delimitadora e na extensão voxel.

[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

Aplica-se 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

Aplica-se a

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

Os desenvolvedores não devem usar esse construtor preterido. Os desenvolvedores devem usar 'novo 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

Aplica-se a

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

Cria um novo MDLVoxelArray do ativo fornecido, com o número especificado de divisões e os números especificados de shells internos concêntricos e externos de voxels.

[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

Aplica-se a