Custom3DItem QML Type
Añade un elemento personalizado a un gráfico. Más...
| Import Statement: | import QtGraphs |
| In C++: | QCustom3DItem |
| Inherited By: |
- Lista de todos los miembros, incluyendo los heredados
- Custom3DItem es parte de Qt Graphs QML Types for 3D.
Propiedades
- meshFile : string
- position : vector3d
- positionAbsolute : bool
- rotation : quaternion
- rotationAbsolute : bool
(since 6.11) - scaling : vector3d
- scalingAbsolute : bool
- shadowCasting : bool
- textureFile : string
- visible : bool
Señales
- meshFileChanged(string meshFile)
- positionAbsoluteChanged(bool positionAbsolute)
- positionChanged(vector3d position)
- rotationChanged(quaternion rotation)
- scalingAbsoluteChanged(bool scalingAbsolute)
- scalingChanged(vector3d scaling)
- shadowCastingChanged(bool shadowCasting)
- textureFileChanged(string textureFile)
- visibleChanged(bool visible)
Métodos
- void setRotationAxisAndAngle(vector3d axis, real angle)
Descripción detallada
Un elemento personalizado tiene una malla personalizada, posición, escala, rotación y una textura opcional.
Documentación de propiedades
meshFile : string
El nombre del archivo de malla del elemento. El elemento del archivo debe tener formato de malla. Se recomienda que los archivos de malla incluyan vértices, normales y UV.
position : vector3d
La posición del elemento como vector3d. Por defecto es vector3d(0.0, 0.0, 0.0).
La posición del elemento se especifica en coordenadas de datos o en coordenadas absolutas, dependiendo del valor de la propiedad positionAbsolute. Cuando se utilizan coordenadas absolutas, los valores entre -1.0...1.0 están dentro de los rangos de los ejes.
Nota: Los elementos posicionados fuera de cualquier rango de ejes no se renderizan si positionAbsolute es false, a menos que el elemento sea un Custom3DVolume que sería parcialmente visible y scalingAbsolute sea también false. En ese caso, se renderizará la parte visible del volumen.
Véase también positionAbsolute y scalingAbsolute.
positionAbsolute : bool
Define si la posición de un elemento debe manejarse en coordenadas de datos o en coordenadas absolutas. El valor predeterminado es false. Los elementos con coordenadas absolutas se mostrarán siempre, mientras que los elementos con coordenadas de datos sólo se mostrarán si se encuentran dentro de los rangos del eje.
Véase también position.
rotation : quaternion
La rotación del elemento como quaternion. Por defecto quaternion(0.0, 0.0, 0.0, 0.0).
rotationAbsolute : bool [since 6.11]
Define si la rotación de los elementos debe manejarse en valores de datos o en valores absolutos. Por defecto es true. Los elementos con rotación absoluta rotarán con las coordenadas por defecto, independientemente del eje. Los elementos con rotación de datos rotarán según las coordenadas del eje.
Esta propiedad se introdujo en Qt 6.11.
Véase también rotation.
scaling : vector3d
La escala del elemento como tipo vector3d. Por defecto es vector3d(0.1, 0.1, 0.1).
La escala del elemento se especifica en valores de datos o en valores absolutos, dependiendo del valor de la propiedad scalingAbsolute. El vector por defecto interpretado como valores absolutos establece el elemento al 10% de la altura del gráfico, siempre que la malla del elemento esté normalizada y las relaciones de aspecto del gráfico no se hayan modificado respecto a los valores por defecto.
Nota: Sólo se admite el escalado absoluto para los elementos de Custom3DLabel o para los elementos personalizados utilizados en los gráficos de polar.
Nota: En Qt 6.8 se asumía incorrectamente que los modelos se escalaban a un tamaño de 1 (-0.5...0.5) por defecto, cuando en realidad se escalan a un tamaño de 2 (-1...1). Debido a esto, todos los elementos personalizados a partir de Qt 6.9 tienen el doble de tamaño en comparación con Qt 6.8
Véase también scalingAbsolute.
scalingAbsolute : bool
Define si la escala de los elementos debe manejarse en valores de datos o en valores absolutos. El valor predeterminado es true. Los elementos con escalado absoluto se mostrarán con el mismo tamaño, independientemente de los rangos de los ejes. Los elementos con escalado de datos cambiarán su tamaño aparente en función de los rangos de los ejes. Si positionAbsolute es true, esta propiedad se ignora y la escala se interpreta como un valor absoluto. Si el elemento tiene rotación, el escalado de datos se calcula sobre el elemento no rotado. Del mismo modo, para los elementos Custom3DVolume, el recorte de rango se calcula sobre el elemento no rotado.
Nota: Sólo se admite el escalado absoluto para elementos Custom3DLabel o para elementos personalizados utilizados en gráficos polar.
Nota: La malla del elemento personalizado debe estar normalizada al rango [-1 ,1], o el escalado de datos no será preciso.
Véase también scaling y positionAbsolute.
shadowCasting : bool
Define si se activa la proyección de sombras para el elemento. Por defecto true. Si false, el elemento no proyecta sombras independientemente de ShadowQuality.
textureFile : string
El nombre del archivo de textura del elemento. Si no se define, se utilizará una textura gris sólida.
Nota: Para ahorrar memoria, el QImage cargado desde el archivo se borra después de crear una textura.
visible : bool
La visibilidad del elemento. Por defecto es true.
Documentación de señales
meshFileChanged(string meshFile)
Esta señal se emite cuando meshFile cambia a meshFile.
Nota: El controlador correspondiente es onMeshFileChanged.
positionAbsoluteChanged(bool positionAbsolute)
Esta señal se emite cuando positionAbsolute cambia a positionAbsolute.
Nota: El controlador correspondiente es onPositionAbsoluteChanged.
positionChanged(vector3d position)
Esta señal se emite cuando el elemento position cambia a position.
Nota: El controlador correspondiente es onPositionChanged.
rotationChanged(quaternion rotation)
Esta señal se emite cuando rotation cambia a rotation.
Nota: El controlador correspondiente es onRotationChanged.
scalingAbsoluteChanged(bool scalingAbsolute)
Esta señal se emite cuando scalingAbsolute cambia a scalingAbsolute.
Nota: El controlador correspondiente es onScalingAbsoluteChanged.
scalingChanged(vector3d scaling)
Esta señal se emite cuando scaling cambia a scaling.
Nota: El controlador correspondiente es onScalingChanged.
shadowCastingChanged(bool shadowCasting)
Esta señal se emite cuando shadowCasting cambia a shadowCasting.
Nota: El controlador correspondiente es onShadowCastingChanged.
textureFileChanged(string textureFile)
Esta señal se emite cuando textureFile cambia a textureFile.
Nota: El controlador correspondiente es onTextureFileChanged.
visibleChanged(bool visible)
Esta señal se emite cuando visible cambia a visible.
Nota: El manejador correspondiente es onVisibleChanged.
Documentación del método
void setRotationAxisAndAngle(vector3d axis, real angle)
Una función práctica para construir el cuaternión de rotación a partir de axis y angle.
Véase también rotation.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.