FVector2 / FVector3 / FVector4

FVector2, FVector3, FVector4 — Aspose.3D Python API Reference

Paquete: aspose.threed.utilities (aspose-3d-foss 26.1.0)

Methods FVector los tipos son de precisión simple (float32) clases vectoriales usadas internamente por los arreglos de datos de elementos de vértice. Compensan la eficiencia de memoria de la precisión simple frente a la precisión doble de las Vector2, Vector3, Vector4 clases usadas para posiciones del grafo de escena. En la práctica, con mayor frecuencia crearás estos valores al poblar VertexElementFVector.set_data().

from aspose.threed.utilities import FVector2, FVector3, FVector4

FVector3

Un vector flotante de precisión simple de dos componentes con x y y componentes.

class FVector2:
    def __init__(self, x: float = 0.0, y: float = 0.0): ...

Methods

MethodsMethodsMethodsMethods
xfloatlectura/escrituraPrimer componente.
yfloatlectura/escrituraSegundo componente.

Methods

MethodsMethodsMethods
length()floatLongitud euclidiana del vector: sqrt(x² + y²).
normalize()FVector2Devuelve una copia de longitud unitaria. Devuelve FVector2(0, 0) para el vector cero.
dot(other)floatProducto punto con other.
FVector2.parse(s)FVector2Analiza una cadena separada por espacios "x y" en un FVector2.

Methods +, -, * (escalar), / (escalar), y == operadores.

Methods

from aspose.threed.utilities import FVector2

uv = FVector2(0.5, 0.25)
print(uv.x, uv.y)           # 0.5 0.25
print(uv.length())           # ~0.559
unit = uv.normalize()
print(round(unit.length(), 6))  # 1.0

a = FVector2(1.0, 0.0)
b = FVector2(0.0, 1.0)
print(a.dot(b))              # 0.0

FVector3

Un vector de punto flotante de precisión simple de tres componentes con x, y, y z componentes.

class FVector3:
    def __init__(self, x: float = 0.0, y: float = 0.0, z: float = 0.0): ...

FVector3 también acepta un Vector3, Vector4, o FVector4 como su primer argumento para convertir desde esos tipos.

Methods

MethodsMethodsMethodsMethods
xfloatlectura/escrituraPrimer componente.
yfloatlectura/escrituraSegundo componente.
zfloatlectura/escrituraTercer componente.

Admite acceso por índice: v[0], v[1], v[2].

Métodos de fábrica estáticos

MethodsMethodsMethods
FVector3.zero()FVector3(0, 0, 0)
FVector3.one()FVector3(1, 1, 1)
FVector3.unit_x()FVector3(1, 0, 0)
FVector3.unit_y()FVector3(0, 1, 0)
FVector3.unit_z()FVector3(0, 0, 1)

Métodos de instancia

MethodsMethodsMethods
normalize()FVector3Devuelve una copia de longitud unitaria. Devuelve el vector cero para una entrada de longitud cero.

Methods

from aspose.threed.utilities import FVector3

n = FVector3(0.0, 1.0, 0.0)
print(n.normalize())         # FVector3(0.0, 1.0, 0.0)

up = FVector3.unit_y()
print(up.x, up.y, up.z)     # 0.0 1.0 0.0

# Convert from Vector3
from aspose.threed.utilities import Vector3
v = Vector3(1.0, 2.0, 3.0)
fv = FVector3(v)
print(fv)                    # FVector3(1.0, 2.0, 3.0)

FVector4

Un vector de punto flotante de precisión simple de cuatro componentes con x, y, z, y w componentes. Este es el tipo de almacenamiento usado por VertexElementFVector.data.

class FVector4:
    def __init__(self, x: float = 0.0, y: float = 0.0, z: float = 0.0, w: float = 0.0): ...

FVector4 también acepta un FVector3, Vector3, o Vector4 como su primer argumento.

Methods

MethodsMethodsMethodsMethods
xfloatlectura/escrituraPrimer componente.
yfloatlectura/escrituraSegundo componente.
zfloatlectura/escrituraTercer componente.
wfloatlectura/escrituraCuarto componente.

Admite acceso por índice: v[0] a través de v[3].

Methods

from aspose.threed.utilities import FVector4, FVector3

# Direct construction
normal = FVector4(0.0, 0.0, 1.0, 0.0)
print(normal.z)              # 1.0

# From FVector3
fv3 = FVector3(0.0, 1.0, 0.0)
fv4 = FVector4(fv3, 0.0)
print(fv4)                   # FVector4(0.0, 1.0, 0.0, 0.0)

# Index access
print(fv4[1])                # 1.0
fv4[3] = 1.0
print(fv4.w)                 # 1.0

Relación con los vectores de doble precisión

Precisión simplePrecisión dobleUso típico
FVector2Vector2Coordenadas UV almacenadas en elementos de vértice
FVector3Vector3Normales, tangentes almacenados en elementos de vértice
FVector4Vector4Methods VertexElementFVector.data entradas; también conversión de puntos de control

Al establecer datos de elementos de vértice, puedes pasar cualquiera de las clases de precisión. set_data() convierte Vector2/Vector3 valores a FVector4 automáticamente.


Ver también

 Español