TriMesh
Inheritance: java.lang.Object, com.aspose.threed.A3DObject, com.aspose.threed.SceneObject, com.aspose.threed.Entity
All Implemented Interfaces: java.lang.Iterable
public class TriMesh extends Entity implements Iterable<Vertex>
Een TriMesh bevat ruwe gegevens die direct door de GPU kunnen worden gebruikt. Deze klasse is een hulpprogramma om een mesh te construeren die alleen per‑vertex‑gegevens bevat. Example: De volgende code toont hoe je een TriMesh met een aangepaste geheugenindeling maakt en deze naar een bestand exporteert.
//Define a vertex declaration as {FVector3 Position; FVector3 Normal; FVector2 UV}
VertexDeclaration vd = new VertexDeclaration();
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.POSITION);
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.NORMAL);
vd.addField(VertexFieldDataType.F_VECTOR2, VertexFieldSemantic.UV);
//convert a mesh to tri-mesh using specified memory layout
var mesh = (new Sphere()).toMesh();
var triMesh = TriMesh.fromMesh(vd, mesh);
//save it to a stream, 115 vertices * 32bytes per vertex
try(var s = new FileOutputStream("output.bin")) {
triMesh.writeVerticesTo(s);
//save indices as ushort to stream, 504 indices * 2 bytes per index
triMesh.write16bIndicesTo(s);
}
Constructors
| Constructor | Beschrijving |
|---|---|
| TriMesh(String name, VertexDeclaration declaration) | Initialiseer een instantie van TriMesh |
Methoden
| Methode | Beschrijving |
|---|---|
| addTriangle(int a, int b, int c) | Voeg een nieuwe driehoek toe |
| beginVertex() | Begin met het toevoegen van een vertex |
| copyFrom(TriMesh input, VertexDeclaration vd) | Kopieer de TriMesh van de invoer met een nieuwe vertex‑indeling. |
| endVertex() | Beëindig het toevoegen van een vertex |
| equals(Object arg0) | |
| findProperty(String propertyName) | Zoekt de eigenschap. |
| fromMesh(Mesh mesh) | Maak een TriMesh van een gegeven mesh‑object, de vertex‑declaratie is gebaseerd op de structuur van de invoer‑mesh. |
| fromMesh(Mesh mesh, boolean useFloat) | Maak een TriMesh van een gegeven mesh‑object, de vertex‑declaratie is gebaseerd op de structuur van de invoer‑mesh. |
| fromMesh(VertexDeclaration declaration, Mesh mesh) | Maak een TriMesh van een gegeven mesh‑object met een opgegeven vertex‑indeling. |
| fromRawData(VertexDeclaration vd, byte[] vertices, int[] indices, boolean generateVertexMapping) | Maak TriMesh van ruwe gegevens |
| getBoundingBox() | Haalt de omsluitende doos op van de huidige entiteit in zijn objectruimte‑coördinatensysteem. |
| getCapacity() | De capaciteit van vooraf toegewezen vertices. |
| getClass() | |
| getEntityRendererKey() | Haalt de sleutel op van de entiteit‑renderer die is geregistreerd in de renderer. |
| getExcluded() | Haalt op of deze entiteit moet worden uitgesloten tijdens het exporteren. |
| getIndicesCount() | Het aantal indexen in deze TriMesh |
| getIntIndices() | Converteer de indexen naar een 32‑bit geheelgetallen‑array |
| getName() | Haalt de naam op. |
| getParentNode() | Haalt de eerste bovenliggende knoop op; als de eerste bovenliggende knoop wordt ingesteld, wordt deze entiteit losgekoppeld van andere bovenliggende knopen. |
| getParentNodes() | Haalt alle bovenliggende knopen op; een entiteit kan aan meerdere bovenliggende knopen worden gekoppeld voor geometrie‑instantiatie. |
| getProperties() | Haalt de verzameling van alle eigenschappen op. |
| getProperty(String property) | Haalt de waarde op van de opgegeven eigenschap |
| getScene() | Haalt de scène op waartoe dit object behoort |
| getShortIndices() | Converteer de indexen naar een 16‑bit geheelgetallen‑array |
| getUnmergedVerticesCount() | Het aantal niet‑samengevoegde vertices die zijn doorgegeven via beginVertex en endVertex. |
| getVertexDeclaration() | De vertex‑indeling van de TriMesh. |
| getVerticesCount() | Het aantal vertices in deze TriMesh |
| getVerticesSizeInBytes() | De totale grootte van alle vertices in bytes |
| hashCode() | |
| indicesToArray(int[][] result) | Converteer de indexen naar een 32‑bit geheelgetallen‑array |
| indicesToArray(short[][] result) | Converteer de indexen naar een 16‑bit geheelgetallen‑array |
| iterator() | Haal de enumerator op om Vertex te enumereren |
| loadVerticesFromBytes(byte[] verticesInBytes) | Laad vertices vanuit bytes, de lengte van de bytes moet een geheel veelvoud zijn van de vertex‑grootte. |
| notify() | |
| notifyAll() | |
| readDouble(int idx, VertexField field) | Lees het double‑veld |
| readFVector2(int idx, VertexField field) | Lees het vector2‑veld |
| readFVector3(int idx, VertexField field) | Lees het vector3‑veld |
| readFVector4(int idx, VertexField field) | Lees het vector4-veld |
| readFloat(int idx, VertexField field) | Lees het float-veld |
| readVector2(int idx, VertexField field) | Lees het vector2‑veld |
| readVector3(int idx, VertexField field) | Lees het vector3‑veld |
| readVector4(int idx, VertexField field) | Lees het vector4-veld |
| removeProperty(Property property) | Verwijdert een dynamische eigenschap. |
| removeProperty(String property) | Verwijder de opgegeven eigenschap geïdentificeerd op naam |
| setExcluded(boolean value) | Stelt in of deze entiteit moet worden uitgesloten tijdens het exporteren. |
| setName(String value) | Stelt de naam in. |
| setParentNode(Node value) | Stelt de eerste bovenliggende knoop in; als de eerste bovenliggende knoop wordt ingesteld, wordt deze entiteit losgekoppeld van andere bovenliggende knopen. |
| setProperty(String property, Object value) | Stelt de waarde in van de opgegeven eigenschap |
| toString() | Haalt de tekenreeksrepresentatie op van TriMesh |
| verticesToArray() | Converteer de vertexgegevens naar een byte-array |
| wait() | |
| wait(long arg0) | |
| wait(long arg0, int arg1) | |
| write16bIndicesTo(Stream stream) | Schrijf de indexgegevens als 16‑bit integer naar de stream Example: |
| write16bIndicesTo(OutputStream stream) | Schrijf de indexgegevens als 16‑bit integer naar de stream |
| write32bIndicesTo(Stream stream) | Schrijf de indexgegevens als 32‑bit integer naar de stream Example: |
| write32bIndicesTo(OutputStream stream) | Schrijf de indexgegevens als 32‑bit integer naar de stream |
| writeVerticesTo(Stream stream) | Schrijf vertexgegevens naar de opgegeven stream |
| writeVerticesTo(OutputStream stream) | Schrijf vertexgegevens naar de opgegeven stream |
TriMesh(String name, VertexDeclaration declaration)
public TriMesh(String name, VertexDeclaration declaration)
Initialiseer een instantie van TriMesh
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| naam | java.lang.String | De naam van deze TriMesh |
| declaration | VertexDeclaration | De declaratie van de vertex |
addTriangle(int a, int b, int c)
public void addTriangle(int a, int b, int c)
Voeg een nieuwe driehoek toe
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| a | int | De index van de eerste vertex |
| b | int | De index van de tweede vertex |
| c | int | De index van de derde vertex |
beginVertex()
public Vertex beginVertex()
Begin met het toevoegen van een vertex
Returns: Vertex - The reference of internal vertex object in type Vertex
copyFrom(TriMesh input, VertexDeclaration vd)
public static TriMesh copyFrom(TriMesh input, VertexDeclaration vd)
Kopieer de TriMesh van de invoer met een nieuwe vertex‑indeling.
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| input | TriMesh | De invoer‑TriMesh voor kopiëren |
| vd | VertexDeclaration | De nieuwe vertexdeclaratie van de uitvoer‑TriMesh |
Returns: TriMesh - A new TriMesh instance with new vertex declaration. Example:
//Define a vertex declaration as {FVector3 Position; FVector3 Normal; FVector2 UV}
VertexDeclaration vd = new VertexDeclaration();
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.POSITION);
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.NORMAL);
vd.addField(VertexFieldDataType.F_VECTOR2, VertexFieldSemantic.UV);
//convert a mesh to TriMesh, the layout is automatically inferred from input mesh
var oldTriMesh = TriMesh.fromMesh((new Sphere()).toMesh());
//now create a new TriMesh from old TriMesh, using explicit memory layout defined by vd
var newTriMesh = TriMesh.copyFrom(oldTriMesh, vd);
endVertex()
public int endVertex()
Beëindig het toevoegen van een vertex
Returns: int
equals(Object arg0)
public boolean equals(Object arg0)
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| arg0 | java.lang.Object |
Returns: boolean
findProperty(String propertyName)
public Property findProperty(String propertyName)
Zoekt de eigenschap. Het kan een dynamische eigenschap zijn (gemaakt door CreateDynamicProperty/SetProperty) of een native eigenschap (geïdentificeerd op naam).
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| propertyName | java.lang.String | Eigenschapnaam. |
Returns: Property - The property.
fromMesh(Mesh mesh)
public static TriMesh fromMesh(Mesh mesh)
Maak een TriMesh van een gegeven mesh‑object, de vertex‑declaratie is gebaseerd op de structuur van de invoer‑mesh.
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| mesh | Mesh |
Returns: TriMesh - The TriMesh generated from given Mesh Example: The following code shows how to create a TriMesh with custom memory layout, and export it to file.
//Define a vertex declaration as {FVector3 Position; FVector3 Normal; FVector2 UV}
VertexDeclaration vd = new VertexDeclaration();
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.POSITION);
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.NORMAL);
vd.addField(VertexFieldDataType.F_VECTOR2, VertexFieldSemantic.UV);
//convert a mesh to tri-mesh using specified memory layout
var mesh = (new Sphere()).toMesh();
var triMesh = TriMesh.fromMesh(vd, mesh);
//save it to a stream, 115 vertices * 32bytes per vertex
try(var s = new FileOutputStream("output.bin")) {
triMesh.writeVerticesTo(s);
//save indices as ushort to stream, 504 indices * 2 bytes per index
triMesh.write16bIndicesTo(s);
}
fromMesh(Mesh mesh, boolean useFloat)
public static TriMesh fromMesh(Mesh mesh, boolean useFloat)
Maak een TriMesh van een gegeven mesh‑object, de vertex‑declaratie is gebaseerd op de structuur van de invoer‑mesh.
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| mesh | Mesh | |
| useFloat | boolean | Gebruik het float-type in plaats van het double-type voor elk vertex‑elementcomponent. |
Returns: TriMesh - The TriMesh generated from given Mesh Example: The following code shows how to create a TriMesh with custom memory layout, and export it to file.
//Define a vertex declaration as {FVector3 Position; FVector3 Normal; FVector2 UV}
VertexDeclaration vd = new VertexDeclaration();
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.POSITION);
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.NORMAL);
vd.addField(VertexFieldDataType.F_VECTOR2, VertexFieldSemantic.UV);
//convert a mesh to tri-mesh using specified memory layout
var mesh = (new Sphere()).toMesh();
var triMesh = TriMesh.fromMesh(vd, mesh);
//save it to a stream, 115 vertices * 32bytes per vertex
try(var s = new FileOutputStream("output.bin")) {
triMesh.writeVerticesTo(s);
//save indices as ushort to stream, 504 indices * 2 bytes per index
triMesh.write16bIndicesTo(s);
}
fromMesh(VertexDeclaration declaration, Mesh mesh)
public static TriMesh fromMesh(VertexDeclaration declaration, Mesh mesh)
Maak een TriMesh van een gegeven mesh‑object met een opgegeven vertex‑indeling.
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| declaration | VertexDeclaration | Type‑definitie van de vertex, of geheugenindeling |
| mesh | Mesh | Bron‑mesh |
Returns: TriMesh - Instance of TriMesh converted from input mesh with specified vertex’s memory layout Example: The following code shows how to create a TriMesh with custom memory layout, and export it to file.
//Define a vertex declaration as {FVector3 Position; FVector3 Normal; FVector2 UV}
VertexDeclaration vd = new VertexDeclaration();
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.POSITION);
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.NORMAL);
vd.addField(VertexFieldDataType.F_VECTOR2, VertexFieldSemantic.UV);
//convert a mesh to tri-mesh using specified memory layout
var mesh = (new Sphere()).toMesh();
var triMesh = TriMesh.fromMesh(vd, mesh);
//save it to a stream, 115 vertices * 32bytes per vertex
try(var s = new FileOutputStream("output.bin")) {
triMesh.writeVerticesTo(s);
//save indices as ushort to stream, 504 indices * 2 bytes per index
triMesh.write16bIndicesTo(s);
}
fromRawData(VertexDeclaration vd, byte[] vertices, int[] indices, boolean generateVertexMapping)
public static TriMesh fromRawData(VertexDeclaration vd, byte[] vertices, int[] indices, boolean generateVertexMapping)
Maak TriMesh van ruwe gegevens
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| vd | VertexDeclaration | Vertexdeclaratie, moet minstens één veld bevatten. |
| vertices | byte[] | De invoergegevens van de vertices, de minimale lengte van de vertices moet groter of gelijk zijn aan de grootte van de vertexdeclaratie |
| indices | int[] | De driehoekindices |
| generateVertexMapping | boolean | Genereer Vertex voor elke vertex, wat niet nodig is alleen voor serialisatie/deserialisatie. |
Returns: TriMesh - The TriMesh instance that encapsulated the input byte array. Remarks: The returned TriMesh will not copy the input byte array for performance, external changes on the array will be reflected to this instance. Example: The following code shows how to construct a TriMesh from raw bytes, this is useful when build your own 3D format
var indices = new int[] { 0, 1, 2 };
var vertices = new byte[]{
0, 0, 0, 191,
0, 0, 0, 0,
0, 0, 0, 191,
0, 0, 0, 191,
0, 0, 0, 0,
0, 0, 0, 63,
0, 0, 0, 63,
0, 0, 0, 0The string representation,
0, 0, 0, 63
};
VertexDeclaration vd = new VertexDeclaration();
vd.AddField(VertexFieldDataType.FVector3, VertexFieldSemantic.Position);
var triMesh = TriMesh.FromRawData(vd, vertices, indices, true);
getBoundingBox()
public BoundingBox getBoundingBox()
Haalt de omsluitende doos op van de huidige entiteit in zijn objectruimte‑coördinatensysteem.
Returns: BoundingBox - the bounding box of current entity in its object space coordinate system. Example: The following code shows how to calculate the bounding box of a shape
Entity entity = new Sphere();
entity.setRadius(10);
var bbox = entity.getBoundingBox();
System.out.printf("The bounding box of the entity is %s ~ %s", bbox.getMinimum(), bbox.getMaximum());
getCapacity()
public int getCapacity()
De capaciteit van vooraf toegewezen vertices.
Returns: int - De capaciteit van vooraf toegewezen vertices.
getClass()
public final native Class<?> getClass()
Returns: java.lang.Class
getEntityRendererKey()
public EntityRendererKey getEntityRendererKey()
Haalt de sleutel op van de entiteit‑renderer die is geregistreerd in de renderer.
Returns: EntityRendererKey - the key of the entity renderer registered in the renderer
getExcluded()
public boolean getExcluded()
Haalt op of deze entiteit moet worden uitgesloten tijdens het exporteren.
Returns: boolean - of deze entiteit moet worden uitgesloten tijdens het exporteren.
getIndicesCount()
public int getIndicesCount()
Het aantal indexen in deze TriMesh
Returns: int - Het aantal indices in deze TriMesh
getIntIndices()
public int[] getIntIndices()
Converteer de indexen naar een 32‑bit geheelgetallen‑array
Returns: int[]
getName()
public String getName()
Haalt de naam op.
Returns: java.lang.String - de naam.
getParentNode()
public Node getParentNode()
Haalt de eerste bovenliggende knoop op; als de eerste bovenliggende knoop wordt ingesteld, wordt deze entiteit losgekoppeld van andere bovenliggende knopen.
Returns: Node - the first parent node, if set the first parent node, this entity will be detached from other parent nodes.
getParentNodes()
public ArrayList<Node> getParentNodes()
Haalt alle bovenliggende knopen op; een entiteit kan aan meerdere bovenliggende knopen worden gekoppeld voor geometrie‑instantiatie.
Returns: java.util.ArrayList<com.aspose.threed.Node> - alle bovenliggende knooppunten, een entiteit kan aan meerdere bovenliggende knooppunten worden gekoppeld voor geometrie‑instantiatie
getProperties()
public PropertyCollection getProperties()
Haalt de verzameling van alle eigenschappen op.
Returns: PropertyCollection - the collection of all properties.
getProperty(String property)
public Object getProperty(String property)
Haalt de waarde op van de opgegeven eigenschap
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| eigenschap | java.lang.String | Naam van eigenschap |
Returns: java.lang.Object - De waarde van de gevonden eigenschap
getScene()
public Scene getScene()
Haalt de scène op waartoe dit object behoort
Returns: Scene - the scene that this object belongs to
getShortIndices()
public short[] getShortIndices()
Converteer de indexen naar een 16‑bit geheelgetallen‑array
Returns: short[]
getUnmergedVerticesCount()
public int getUnmergedVerticesCount()
Het aantal niet‑samengevoegde vertices die zijn doorgegeven via beginVertex en endVertex.
Returns: int - Het aantal niet-geharmoniseerde vertices die zijn doorgegeven door beginVertex en endVertex.
getVertexDeclaration()
public VertexDeclaration getVertexDeclaration()
De vertex‑indeling van de TriMesh.
Returns: VertexDeclaration - The vertex layout of the TriMesh.
getVerticesCount()
public int getVerticesCount()
Het aantal vertices in deze TriMesh
Returns: int - Het aantal vertices in deze TriMesh
getVerticesSizeInBytes()
public int getVerticesSizeInBytes()
De totale grootte van alle vertices in bytes
Returns: int - De totale grootte van alle vertices in bytes
hashCode()
public native int hashCode()
Returns: int
indicesToArray(int[][] result)
public void indicesToArray(int[][] result)
Converteer de indexen naar een 32‑bit geheelgetallen‑array
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| result | int[][] |
indicesToArray(short[][] result)
public void indicesToArray(short[][] result)
Converteer de indexen naar een 16‑bit geheelgetallen‑array
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| result | short[][] |
iterator()
public Iterator<Vertex> iterator()
Haal de enumerator op om Vertex te enumereren
Returns: java.util.Iterator<com.aspose.threed.Vertex>
loadVerticesFromBytes(byte[] verticesInBytes)
public void loadVerticesFromBytes(byte[] verticesInBytes)
Laad vertices vanuit bytes, de lengte van de bytes moet een geheel veelvoud zijn van de vertexgrootte. Voorbeeld: De volgende code toont hoe een lege TriMesh te maken en handmatig vertices te laden vanuit ruwe bytes.
var indices = new int[] { 0, 1, 2 };
var vertices = new byte[]{
0, 0, 0, 191,
0, 0, 0, 0,
0, 0, 0, 191,
0, 0, 0, 191,
0, 0, 0, 0,
0, 0, 0, 63,
0, 0, 0, 63,
0, 0, 0, 0,
0, 0, 0, 63
};
VertexDeclaration vd = new VertexDeclaration();
vd.AddField(VertexFieldDataType.FVector3, VertexFieldSemantic.Position);
//create an empty TriMesh with specified vertex declaration
var triMesh = new TriMesh("", vd);
//load vertices directly from bytes
triMesh.LoadVerticesFromBytes(vertices);
triMesh.AddTriangle(0, 1, 2);
int[] indices = new int[] { 0, 1, 2 };
byte[] vertices = new byte[]{
0, 0, 0, 191,
0, 0, 0, 0,
0, 0, 0, 191,
0, 0, 0, 191,
0, 0, 0, 0,
0, 0, 0, 63,
0, 0, 0, 63,
0, 0, 0, 0,
0, 0, 0, 63
};
VertexDeclaration vd = new VertexDeclaration();
vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.POSITION);
//create an empty TriMesh with specified vertex declaration
var triMesh = new TriMesh("", vd);
//load vertices directly from bytes
triMesh.loadVerticesFromBytes(vertices);
triMesh.addTriangle(0, 1, 2);
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| verticesInBytes | byte[] |
notify()
public final native void notify()
notifyAll()
public final native void notifyAll()
readDouble(int idx, VertexField field)
public double readDouble(int idx, VertexField field)
Lees het double‑veld
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| idx | int | De index van de vertex om te lezen |
| field | VertexField | Het veld met een float/double compatibel gegevenstype |
Returns: double - Dubbele waarde van het veld van de opgegeven vertex
readFVector2(int idx, VertexField field)
public FVector2 readFVector2(int idx, VertexField field)
Lees het vector2‑veld
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| idx | int | De index van de vertex om te lezen |
| field | VertexField | Het veld met een Vector2/FVector2 gegevenstype |
Returns: FVector2 - FVector2 of specified vertex’s field
readFVector3(int idx, VertexField field)
public FVector3 readFVector3(int idx, VertexField field)
Lees het vector3‑veld
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| idx | int | De index van de vertex om te lezen |
| field | VertexField | Het veld met een Vector3/FVector3 gegevenstype |
Returns: FVector3
readFVector4(int idx, VertexField field)
public FVector4 readFVector4(int idx, VertexField field)
Lees het vector4-veld
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| idx | int | De index van de vertex om te lezen |
| field | VertexField | Het veld met een Vector4/FVector4 gegevenstype |
Returns: FVector4
readFloat(int idx, VertexField field)
public float readFloat(int idx, VertexField field)
Lees het float-veld
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| idx | int | De index van de vertex om te lezen |
| field | VertexField | Het veld met een float/double compatibel gegevenstype |
Returns: float - Floatwaarde van het veld van de opgegeven vertex
readVector2(int idx, VertexField field)
public Vector2 readVector2(int idx, VertexField field)
Lees het vector2‑veld
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| idx | int | De index van de vertex om te lezen |
| field | VertexField | Het veld met een Vector2/FVector2 gegevenstype |
Returns: Vector2 - Vector2 of specified vertex’s field
readVector3(int idx, VertexField field)
public Vector3 readVector3(int idx, VertexField field)
Lees het vector3‑veld
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| idx | int | De index van de vertex om te lezen |
| field | VertexField | Het veld met een Vector3/FVector3 gegevenstype |
Returns: Vector3
readVector4(int idx, VertexField field)
public Vector4 readVector4(int idx, VertexField field)
Lees het vector4-veld
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| idx | int | De index van de vertex om te lezen |
| field | VertexField | Het veld met een Vector4/FVector4 gegevenstype |
Returns: Vector4
removeProperty(Property property)
public boolean removeProperty(Property property)
Verwijdert een dynamische eigenschap.
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| property | Property | Welke eigenschap moet worden verwijderd |
Returns: boolean - true als de eigenschap succesvol is verwijderd
removeProperty(String property)
public boolean removeProperty(String property)
Verwijder de opgegeven eigenschap geïdentificeerd op naam
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| eigenschap | java.lang.String | Welke eigenschap moet worden verwijderd |
Returns: boolean - true als de eigenschap succesvol is verwijderd
setExcluded(boolean value)
public void setExcluded(boolean value)
Stelt in of deze entiteit moet worden uitgesloten tijdens het exporteren.
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| waarde | boolean | Nieuwe waarde |
setName(String value)
public void setName(String value)
Stelt de naam in.
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| waarde | java.lang.String | Nieuwe waarde |
setParentNode(Node value)
public void setParentNode(Node value)
Stelt de eerste bovenliggende knoop in; als de eerste bovenliggende knoop wordt ingesteld, wordt deze entiteit losgekoppeld van andere bovenliggende knopen.
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| value | Node | Nieuwe waarde |
setProperty(String property, Object value)
public void setProperty(String property, Object value)
Stelt de waarde in van de opgegeven eigenschap
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| eigenschap | java.lang.String | Naam van eigenschap |
| waarde | java.lang.Object | De waarde van de eigenschap |
toString()
public String toString()
Haalt de tekenreeksrepresentatie op van TriMesh
Returns: java.lang.String - De stringrepresentatie
verticesToArray()
public byte[] verticesToArray()
Converteer de vertexgegevens naar een byte-array
Returns: byte[]
wait()
public final void wait()
wait(long arg0)
public final void wait(long arg0)
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| arg0 | long |
wait(long arg0, int arg1)
public final void wait(long arg0, int arg1)
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| arg0 | long | |
| arg1 | int |
write16bIndicesTo(Stream stream)
public void write16bIndicesTo(Stream stream)
Schrijf de indexgegevens als 16‑bit integer naar de stream Example:
//convert a mesh to TriMesh, the layout is automatically inferred from input mesh
var mesh = (new Sphere()).toMesh();
var triMesh = TriMesh.fromMesh(mesh);
//save it to a stream, 115 vertices * 32bytes per vertex
var stream = new ByteArrayOutputStream();
try(var s = Stream.wrap(stream)) {
triMesh.writeVerticesTo(s);
//save indices as ushort to stream, 504 indices * 2 bytes per index
triMesh.write16bIndicesTo(s);
}
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| stream | Stream |
write16bIndicesTo(OutputStream stream)
public void write16bIndicesTo(OutputStream stream)
Schrijf de indexgegevens als 16‑bit integer naar de stream
Parameters:
| Parameter | Type | Beschrijving |
|---|---|---|
| stream | java.io.OutputStream |
//convert a mesh to TriMesh, the layout is automatically inferred from input mesh
var mesh = (new Sphere()).toMesh();
var triMesh = TriMesh.fromMesh(mesh);
//save it to a stream, 115 vertices * 32bytes per vertex
var stream = new ByteArrayOutputStream();
triMesh.writeVerticesTo(stream);
//save indices as ushort to stream, 504 indices * 2 bytes per index
triMesh.write16bIndicesTo(stream);
``` |
### write32bIndicesTo(Stream stream) {#write32bIndicesTo-com.aspose.threed.Stream-}
public void write32bIndicesTo(Stream stream)
Schrijf de indexgegevens als 32‑bit integer naar de stream **Example:**
//convert a mesh to TriMesh, the layout is automatically inferred from input mesh var mesh = (new Sphere()).toMesh(); var triMesh = TriMesh.fromMesh(mesh); //save it to a stream, 115 vertices * 32bytes per vertex var stream = new ByteArrayOutputStream(); try(var s = Stream.wrap(stream)) { triMesh.writeVerticesTo(s); //save indices as ushort to stream, 504 indices * 2 bytes per index triMesh.write32bIndicesTo(s); }
**Parameters:**
| Parameter | Type | Beschrijving |
| --- | --- | --- |
| stream | [Stream](../../com.aspose.threed/stream) | |
### write32bIndicesTo(OutputStream stream) {#write32bIndicesTo-java.io.OutputStream-}
public void write32bIndicesTo(OutputStream stream)
Schrijf de indexgegevens als 32‑bit integer naar de stream
**Parameters:**
| Parameter | Type | Beschrijving |
| --- | --- | --- |
| | stream | java.io.OutputStream | **Voorbeeld:** |
//convert a mesh to TriMesh, the layout is automatically inferred from input mesh
var mesh = (new Sphere()).toMesh();
var triMesh = TriMesh.fromMesh(mesh);
//save it to a stream, 115 vertices * 32bytes per vertex
var stream = new ByteArrayOutputStream();
triMesh.writeVerticesTo(stream);
//save indices as ushort to stream, 504 indices * 2 bytes per index
triMesh.write32bIndicesTo(stream);
### writeVerticesTo(Stream stream) {#writeVerticesTo-com.aspose.threed.Stream-}
public void writeVerticesTo(Stream stream)
Schrijf vertexgegevens naar de opgegeven stream
**Parameters:**
| Parameter | Type | Beschrijving |
| --- | --- | --- |
| | stream | [Stream](../../com.aspose.threed/stream) | De stream waar de vertexgegevens naartoe worden geschreven **Voorbeeld:** |
//convert a mesh to TriMesh, the layout is automatically inferred from input mesh var mesh = (new Sphere()).toMesh(); var triMesh = TriMesh.fromMesh(mesh); //save it to a stream, 115 vertices * 32bytes per vertex var stream = new ByteArrayOutputStream(); try(var s = Stream.wrap(stream)) { triMesh.writeVerticesTo(s); //save indices as ushort to stream, 504 indices * 2 bytes per index triMesh.write16bIndicesTo(s); }
### writeVerticesTo(OutputStream stream) {#writeVerticesTo-java.io.OutputStream-}
public void writeVerticesTo(OutputStream stream)
Schrijf vertexgegevens naar de opgegeven stream
**Parameters:**
| Parameter | Type | Beschrijving |
| --- | --- | --- |
| | stream | java.io.OutputStream | De stream waar de vertexgegevens naartoe worden geschreven **Voorbeeld:** |
//convert a mesh to TriMesh, the layout is automatically inferred from input mesh
var mesh = (new Sphere()).toMesh();
var triMesh = TriMesh.fromMesh(mesh);
//save it to a stream, 115 vertices * 32bytes per vertex
var stream = new ByteArrayOutputStream();
triMesh.writeVerticesTo(stream);
//save indices as ushort to stream, 504 indices * 2 bytes per index
triMesh.write16bIndicesTo(stream);