Partager via


MDLSubmesh Constructeurs

Définition

Surcharges

MDLSubmesh()

Constructeur par défaut, initialise une nouvelle instance de cette classe.

MDLSubmesh(NSObjectFlag)

Constructeur pour appeler sur des classes dérivées pour ignorer l’initialisation et allouer simplement l’objet.

MDLSubmesh(IntPtr)

Constructeur utilisé lors de la création de représentations managées d’objets non managés ; Appelé par le runtime.

MDLSubmesh(MDLSubmesh, MDLIndexBitDepth, MDLGeometryType)

Crée un MDLSubmesh avec les paramètres spécifiés.

MDLSubmesh(IMDLMeshBuffer, nuint, MDLIndexBitDepth, MDLGeometryType, MDLMaterial)
MDLSubmesh(String, IMDLMeshBuffer, nuint, MDLIndexBitDepth, MDLGeometryType, MDLMaterial)
MDLSubmesh(String, IMDLMeshBuffer, nuint, MDLIndexBitDepth, MDLGeometryType, MDLMaterial, MDLSubmeshTopology)

MDLSubmesh()

Constructeur par défaut, initialise une nouvelle instance de cette classe.

[Foundation.Export("init")]
public MDLSubmesh ();
Attributs

S’applique à

MDLSubmesh(NSObjectFlag)

Constructeur pour appeler sur des classes dérivées pour ignorer l’initialisation et allouer simplement l’objet.

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

Paramètres

t
NSObjectFlag

Valeur sentinel inutilisée, transmettez NSObjectFlag.Empty.

Remarques

Ce constructeur doit être appelé par les classes dérivées lorsqu’elles construisent complètement l’objet en code managé et veulent simplement que le runtime alloue et initialise le NSObject. Cela est nécessaire pour implémenter le processus d’initialisation en deux étapes utilisé par Objective-C, la première étape consiste à effectuer l’allocation d’objets, la deuxième étape consiste à initialiser l’objet. Lorsque les développeurs appellent le constructeur qui utilise NSObjectFlag.Empty, ils tirent parti d’un chemin d’accès direct qui va jusqu’à NSObject pour allouer simplement la mémoire de l’objet et lier les objets Objective-C et C#. L’initialisation réelle de l’objet appartient au développeur.

Ce constructeur est généralement utilisé par le générateur de liaisons pour allouer l’objet, mais empêche l’initialisation réelle de se produire. Une fois l’allocation effectuée, le constructeur doit initialiser l’objet . Avec les constructeurs générés par le générateur de liaisons, cela signifie qu’il appelle manuellement l’une des méthodes « init » pour initialiser l’objet.

Il incombe au développeur d’initialiser complètement l’objet s’il est enchaîné à l’aide du chemin NSObjectFlag.Empty.

En général, si le constructeur du développeur appelle l’implémentation de base NSObjectFlag.Empty, il doit appeler une méthode d’init Objective-C. Si ce n’est pas le cas, les développeurs doivent plutôt chaîner au constructeur approprié dans leur classe.

La valeur de l’argument est ignorée et garantit simplement que le seul code exécuté est la phase de construction est l’allocation NSObject de base et l’inscription du type d’exécution. En règle générale, le chaînage ressemble à ceci :

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

S’applique à

MDLSubmesh(IntPtr)

Constructeur utilisé lors de la création de représentations managées d’objets non managés ; Appelé par le runtime.

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

Paramètres

handle
IntPtr

nativeint

Pointeur (handle) vers l’objet non managé.

Remarques

Ce constructeur est appelé par l’infrastructure d’exécution (GetNSObject(IntPtr)) pour créer une représentation managée pour un pointeur vers un objet Objective-C non managé. Les développeurs ne doivent pas appeler cette méthode directement, mais ils doivent appeler la méthode GetNSObject, car elle empêchera deux instances d’un objet managé de pointer vers le même objet natif.

S’applique à

MDLSubmesh(MDLSubmesh, MDLIndexBitDepth, MDLGeometryType)

Crée un MDLSubmesh avec les paramètres spécifiés.

[Foundation.Export("initWithMDLSubmesh:indexType:geometryType:")]
public MDLSubmesh (ModelIO.MDLSubmesh indexBuffer, ModelIO.MDLIndexBitDepth indexType, ModelIO.MDLGeometryType geometryType);
new ModelIO.MDLSubmesh : ModelIO.MDLSubmesh * ModelIO.MDLIndexBitDepth * ModelIO.MDLGeometryType -> ModelIO.MDLSubmesh

Paramètres

indexBuffer
MDLSubmesh
indexType
MDLIndexBitDepth
geometryType
MDLGeometryType
Attributs

Remarques

indexType Si ou geometryType ne correspondent pas au type de données dans indexBuffer, une nouvelle mémoire tampon est créée et remplie avec des données converties.

S’applique à

MDLSubmesh(IMDLMeshBuffer, nuint, MDLIndexBitDepth, MDLGeometryType, MDLMaterial)

[Foundation.Export("initWithIndexBuffer:indexCount:indexType:geometryType:material:")]
public MDLSubmesh (ModelIO.IMDLMeshBuffer indexBuffer, nuint indexCount, ModelIO.MDLIndexBitDepth indexType, ModelIO.MDLGeometryType geometryType, ModelIO.MDLMaterial material);
new ModelIO.MDLSubmesh : ModelIO.IMDLMeshBuffer * nuint * ModelIO.MDLIndexBitDepth * ModelIO.MDLGeometryType * ModelIO.MDLMaterial -> ModelIO.MDLSubmesh

Paramètres

indexBuffer
IMDLMeshBuffer
indexCount
System.System.UIntPtr System.unativeint
indexType
MDLIndexBitDepth
geometryType
MDLGeometryType
material
MDLMaterial

À ajouter.

Ce paramètre peut être null.

Attributs

S’applique à

MDLSubmesh(String, IMDLMeshBuffer, nuint, MDLIndexBitDepth, MDLGeometryType, MDLMaterial)

[Foundation.Export("initWithName:indexBuffer:indexCount:indexType:geometryType:material:")]
public MDLSubmesh (string name, ModelIO.IMDLMeshBuffer indexBuffer, nuint indexCount, ModelIO.MDLIndexBitDepth indexType, ModelIO.MDLGeometryType geometryType, ModelIO.MDLMaterial material);
new ModelIO.MDLSubmesh : string * ModelIO.IMDLMeshBuffer * nuint * ModelIO.MDLIndexBitDepth * ModelIO.MDLGeometryType * ModelIO.MDLMaterial -> ModelIO.MDLSubmesh

Paramètres

name
String
indexBuffer
IMDLMeshBuffer
indexCount
System.System.UIntPtr System.unativeint
indexType
MDLIndexBitDepth
geometryType
MDLGeometryType
material
MDLMaterial

À ajouter.

Ce paramètre peut être null.

Attributs

S’applique à

MDLSubmesh(String, IMDLMeshBuffer, nuint, MDLIndexBitDepth, MDLGeometryType, MDLMaterial, MDLSubmeshTopology)

[Foundation.Export("initWithName:indexBuffer:indexCount:indexType:geometryType:material:topology:")]
public MDLSubmesh (string name, ModelIO.IMDLMeshBuffer indexBuffer, nuint indexCount, ModelIO.MDLIndexBitDepth indexType, ModelIO.MDLGeometryType geometryType, ModelIO.MDLMaterial material, ModelIO.MDLSubmeshTopology topology);
new ModelIO.MDLSubmesh : string * ModelIO.IMDLMeshBuffer * nuint * ModelIO.MDLIndexBitDepth * ModelIO.MDLGeometryType * ModelIO.MDLMaterial * ModelIO.MDLSubmeshTopology -> ModelIO.MDLSubmesh

Paramètres

name
String
indexBuffer
IMDLMeshBuffer
indexCount
System.System.UIntPtr System.unativeint
indexType
MDLIndexBitDepth
geometryType
MDLGeometryType
material
MDLMaterial

À ajouter.

Ce paramètre peut être null.

topology
MDLSubmeshTopology

À ajouter.

Ce paramètre peut être null.

Attributs

S’applique à