Mesh

Mesh class

Ett nät består av många n-sidiga polygoner.

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

Konstruktörer

namnBeskrivning
Mesh()Initierar en ny instans avMesh class.
Mesh(Bitmap)Konstruera ett nät med specificerad höjdkarta, om höjdkartans pixelformat innehåller flera komponenter, kommer den första (vanligtvis den röda) komponenten att användas som höjdvärde(z) Kontrollpunktens x- och y-komponenter är normaliserade pixelkoordinater .
Mesh(string)Initierar en ny instans avMesh class.
Mesh(Bitmap, Matrix4)Konstruera ett nät med specificerad höjdkarta, om höjdkartans pixelformat innehåller flera komponenter, kommer den första (vanligtvis den röda) komponenten att användas som höjdvärde(z) Kontrollpunktens x- och y-komponenter är normaliserade pixelkoordinater .
Mesh(Bitmap, bool, Matrix4)Konstruera ett nät med specificerad höjdkarta, om höjdkartans pixelformat innehåller flera komponenter, kommer den första (vanligtvis den röda) komponenten att användas som höjdvärde(z) Kontrollpunktens x- och y-komponenter är normaliserade pixelkoordinater .

Egenskaper

namnBeskrivning
CastShadows { get; set; }Hämtar eller ställer in om denna geometri kan kasta skugga
ControlPoints { get; }Får alla kontrollpunkter
Deformers { get; }Får alla deformerare associerade med denna geometri.
Edges { get; }Får kanterna på nätet. Edge är valfritt i mesh, så den kan vara tom.
Excluded { get; set; }Hämtar eller ställer in om den här entiteten ska exkluderas under export.
virtual Name { get; set; }Hämtar eller ställer in namnet.
ParentNode { get; set; }Hämtar eller ställer in den första överordnade noden, om den första överordnade noden ställs in, kommer denna enhet att frikopplas från andra överordnade noder.
ParentNodes { get; }Hämtar alla överordnade noder, en enhet kan kopplas till flera överordnade noder för geometriinstansering
PolygonCount { get; }Får antalet polygoner
Polygons { get; }Får polygondefinitionen av nätet
Properties { get; }Hämtar samlingen av alla egenskaper.
ReceiveShadows { get; set; }Hämtar eller ställer in om denna geometri kan ta emot skugga.
Scene { get; }Hämtar scenen som detta objekt tillhör
VertexElements { get; }Hämtar alla vertexelement
Visible { get; set; }Hämtar eller ställer in om geometrin är synlig

Metoder

namnBeskrivning
AddElement(VertexElement)Lägger till ett befintligt vertexelement till aktuell geometri
CreateElement(VertexElementType)Skapar ett vertexelement med angiven typ och lägger till det i geometrin.
CreateElement(VertexElementType, MappingMode, ReferenceMode)Skapar ett vertexelement med angiven typ och lägger till det i geometrin.
CreateElementUV(TextureMapping)Skapar enVertexElementUV med given texturmappningstyp.
CreateElementUV(TextureMapping, MappingMode, ReferenceMode)Skapar enVertexElementUV med given texturmappningstyp.
CreatePolygon(int[])Skapar en ny polygon med alla hörn definierade iindices . För att skapa polygon vertex för vertex, användPolygonBuilder .
CreatePolygon(int, int, int)Skapa en polygon med 3 hörn(triangel)
CreatePolygon(int[], int, int)Skapar en ny polygon med alla hörn definierade iindices . För att skapa polygon vertex för vertex, användPolygonBuilder .
CreatePolygon(int, int, int, int)Skapa en polygon med 4 hörn(quad)
FindProperty(string)Hittar egenskapen. Det kan vara en dynamisk egenskap (Skapad av CreateDynamicProperty/SetProperty) eller inbyggd egenskap (identifierad med dess namn)
GetBoundingBox()Hämtar begränsningsrutan för nuvarande entitet i dess objektrymds koordinatsystem.
GetDeformers<T>()
GetElement(VertexElementType)Får ett vertexelement med specificerad typ
virtual GetEntityRendererKey()Hämtar nyckeln till entitetsrenderaren registrerad i renderaren
GetEnumerator()Hämtar enumerator för varje inre polygon.
GetPolygonSize(int)Hämtar vertexantalet för den angivna polygonen.
GetProperty(string)Få värdet av specificerad egenskap
GetVertexElementOfUV(TextureMapping)Får enVertexElementUV instans med given texturmappning type
RemoveProperty(Property)Tar bort en dynamisk egenskap.
RemoveProperty(string)Ta bort den angivna egenskapen identifierad av name
SetProperty(string, object)Anger värdet för specificerad egenskap
ToMesh()Hämtar Mesh-instansen från nuvarande entitet.

Exempel

För att lägga till en polygon i mesh: Res genom alla polygoner i mesh:

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

Se även