Mesh

Mesh class

Una mesh è composta da molti poligoni a n lati.

public class Mesh : Geometry, IEnumerable<int[]>, IMeshConvertible

Costruttori

NomeDescrizione
Mesh()Inizializza una nuova istanza diMesh classe.
Mesh(Bitmap)Costruisci una mesh utilizzando la mappa dell’altezza specificata, se il formato pixel della mappa dell’altezza contiene più componenti, il primo componente (di solito il rosso) verrà utilizzato come valore dell’altezza (z) I componenti x e y del punto di controllo sono coordinate pixel normalizzate .
Mesh(string)Inizializza una nuova istanza diMesh classe.
Mesh(Bitmap, Matrix4)Costruisci una mesh utilizzando la mappa dell’altezza specificata, se il formato pixel della mappa dell’altezza contiene più componenti, il primo componente (di solito il rosso) verrà utilizzato come valore dell’altezza (z) I componenti x e y del punto di controllo sono coordinate pixel normalizzate .
Mesh(Bitmap, bool, Matrix4)Costruisci una mesh utilizzando la mappa dell’altezza specificata, se il formato pixel della mappa dell’altezza contiene più componenti, il primo componente (di solito il rosso) verrà utilizzato come valore dell’altezza (z) I componenti x e y del punto di controllo sono coordinate pixel normalizzate .

Proprietà

NomeDescrizione
CastShadows { get; set; }Ottiene o imposta se questa geometria può proiettare ombra
ControlPoints { get; }Ottiene tutti i punti di controllo
Deformers { get; }Ottiene tutti i deformatori associati a questa geometria.
Edges { get; }Ottiene i bordi della mesh. Il bordo è opzionale in mesh, quindi può essere vuoto.
Excluded { get; set; }Ottiene o imposta se escludere questa entità durante l’esportazione.
virtual Name { get; set; }Ottiene o imposta il nome.
ParentNode { get; set; }Ottiene o imposta il primo nodo padre, se è impostato il primo nodo padre, questa entità verrà scollegata dagli altri nodi padre.
ParentNodes { get; }Ottiene tutti i nodi principali, un’entità può essere collegata a più nodi principali per l’istanza geometrica
PolygonCount { get; }Ottiene il conteggio dei poligoni
Polygons { get; }Ottiene la definizione dei poligoni della mesh
Properties { get; }Ottiene la raccolta di tutte le proprietà.
ReceiveShadows { get; set; }Ottiene o imposta se questa geometria può ricevere ombra.
Scene { get; }Ottiene la scena a cui appartiene questo oggetto
VertexElements { get; }Ottiene tutti gli elementi del vertice
Visible { get; set; }Ottiene o imposta se la geometria è visibile

Metodi

NomeDescrizione
AddElement(VertexElement)Aggiunge un elemento vertice esistente alla geometria corrente
CreateElement(VertexElementType)Crea un elemento vertice con il tipo specificato e lo aggiunge alla geometria.
CreateElement(VertexElementType, MappingMode, ReferenceMode)Crea un elemento vertice con il tipo specificato e lo aggiunge alla geometria.
CreateElementUV(TextureMapping)Crea aVertexElementUV con un dato tipo di mappatura delle texture.
CreateElementUV(TextureMapping, MappingMode, ReferenceMode)Crea aVertexElementUV con un dato tipo di mappatura delle texture.
CreatePolygon(int[])Crea un nuovo poligono con tutti i vertici definiti inindices . Per creare un poligono vertice per vertice, utilizzarePolygonBuilder .
CreatePolygon(int, int, int)Crea un poligono con 3 vertici(triangolo)
CreatePolygon(int[], int, int)Crea un nuovo poligono con tutti i vertici definiti inindices . Per creare un poligono vertice per vertice, utilizzarePolygonBuilder .
CreatePolygon(int, int, int, int)Crea un poligono con 4 vertici(quad)
FindProperty(string)Trova la proprietà. Può essere una proprietà dinamica (creata da CreateDynamicProperty/SetProperty) o una proprietà nativa (identificata dal nome)
GetBoundingBox()Ottiene il riquadro di delimitazione dell’entità corrente nel suo sistema di coordinate dello spazio oggetti.
GetDeformers<T>()
GetElement(VertexElementType)Ottiene un elemento vertice con il tipo specificato
virtual GetEntityRendererKey()Ottiene la chiave del renderer di entità registrato nel renderer
GetEnumerator()Ottiene l’enumeratore per ogni poligono interno.
GetPolygonSize(int)Ottiene il conteggio dei vertici del poligono specificato.
GetProperty(string)Ottieni il valore della proprietà specificata
GetVertexElementOfUV(TextureMapping)Ottiene aVertexElementUV istanza con una data mappatura delle texture type
RemoveProperty(Property)Rimuove una proprietà dinamica.
RemoveProperty(string)Rimuove la proprietà specificata identificata da nome
SetProperty(string, object)Imposta il valore della proprietà specificata
ToMesh()Ottiene l’istanza Mesh dall’entità corrente.

Esempi

Per aggiungere un poligono nella mesh: Viaggia attraverso tutti i poligoni nella mesh:

int[] indices = new int[] {0, 1, 2};
mesh.CreatePolygon(indices);
foreach(int[] polygon in mesh)
{
    //si occupa del poligono
}

Guarda anche