[][src]Struct qt_3d_render::QAbstractRayCaster

#[repr(C)]pub struct QAbstractRayCaster { /* fields omitted */ }

An abstract base class for ray casting in 3d scenes.

C++ class: Qt3DRender::QAbstractRayCaster.

C++ documentation:

An abstract base class for ray casting in 3d scenes.

Qt3DRender::QAbstractRayCaster is an abstract base class for casting rays into a 3d scene. Qt3DRender::QAbstractRayCaster can not be directly instantiated, but rather through its subclasses. QAbstractRayCaster specifies common properties for all ray casters, such as run mode and layer handling, while leaving the actual ray casting details to the subclasses.

Ray castings differs from picking (using Qt3DRender::QObjectPicker) in that it does not require mouse events to trigger.

By default, the instances of Qt3DRender::QAbstractRayCaster are disabled. When enabled, the specified ray will be tested for intersecting objects at every frame. The QAbstractRayCaster::hits property will be updated with the results of the ray casting, even if no objects are found.

The Qt3DRender::QPickingSettings can be used to control the ray casting, such as which primitives are tested and how the results are returned.

Furthermore, Qt3DRender::QLayer components can be used to control how entities, or entity sub-graphs, react to ray casting.

Note: Components derived from QAbstractRayCaster should not be shared amount multiple entities.

Methods

impl QAbstractRayCaster[src]

pub fn slot_set_run_mode(&self) -> Receiver<(RunMode,)>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the run mode controlling how often ray casting tests are performed.

Returns a built-in Qt slot Qt3DRender::QAbstractRayCaster::setRunMode that can be passed to qt_core::Signal::connect.

C++ documentation:

Holds the run mode controlling how often ray casting tests are performed.

If set to SingleShot (the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.

If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.

Access functions:

Qt3DRender::QAbstractRayCaster::RunMode runMode() const
void setRunMode(Qt3DRender::QAbstractRayCaster::RunMode runMode)

Notifier signal:

void runModeChanged(Qt3DRender::QAbstractRayCaster::RunMode runMode)

pub fn slot_set_filter_mode(&self) -> Receiver<(FilterMode,)>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the filter mode specifying the entities to select for ray casting tests.

Returns a built-in Qt slot Qt3DRender::QAbstractRayCaster::setFilterMode that can be passed to qt_core::Signal::connect.

C++ documentation:

Holds the filter mode specifying the entities to select for ray casting tests.

The default value is AcceptMatchingLayers.

Access functions:

Qt3DRender::QAbstractRayCaster::FilterMode filterMode() const
void setFilterMode(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)

Notifier signal:

void filterModeChanged(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)

pub fn run_mode_changed(&self) -> Signal<(RunMode,)>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the run mode controlling how often ray casting tests are performed.

Returns a built-in Qt signal Qt3DRender::QAbstractRayCaster::runModeChanged that can be passed to qt_core::Signal::connect.

C++ documentation:

Holds the run mode controlling how often ray casting tests are performed.

If set to SingleShot (the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.

If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.

Access functions:

Qt3DRender::QAbstractRayCaster::RunMode runMode() const
void setRunMode(Qt3DRender::QAbstractRayCaster::RunMode runMode)

Notifier signal:

void runModeChanged(Qt3DRender::QAbstractRayCaster::RunMode runMode)

pub fn filter_mode_changed(&self) -> Signal<(FilterMode,)>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the filter mode specifying the entities to select for ray casting tests.

Returns a built-in Qt signal Qt3DRender::QAbstractRayCaster::filterModeChanged that can be passed to qt_core::Signal::connect.

C++ documentation:

Holds the filter mode specifying the entities to select for ray casting tests.

The default value is AcceptMatchingLayers.

Access functions:

Qt3DRender::QAbstractRayCaster::FilterMode filterMode() const
void setFilterMode(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)

Notifier signal:

void filterModeChanged(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)

pub fn hits_changed(&self) -> Signal<(*const QVectorOfQRayCasterHit,)>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the results of last ray casting test as a vector of Qt3DRender::QRayCasterHit instances.

Returns a built-in Qt signal Qt3DRender::QAbstractRayCaster::hitsChanged that can be passed to qt_core::Signal::connect.

C++ documentation:

Holds the results of last ray casting test as a vector of Qt3DRender::QRayCasterHit instances.

Note that even if successive tests return the exact same results (or empty results), a change notification will be emitted at every test.

Access functions:

Qt3DRender::QAbstractRayCaster::Hits hits() const

Notifier signal:

void hitsChanged(const Qt3DRender::QAbstractRayCaster::Hits &hits)

pub unsafe fn add_layer(&self, layer: impl CastInto<Ptr<QLayer>>)[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Add layer to the current list of layers

Calls C++ function: void Qt3DRender::QAbstractRayCaster::addLayer(Qt3DRender::QLayer* layer).

C++ documentation:

Add layer to the current list of layers

pub unsafe fn filter_mode(&self) -> FilterMode[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the filter mode specifying the entities to select for ray casting tests.

Calls C++ function: Qt3DRender::QAbstractRayCaster::FilterMode Qt3DRender::QAbstractRayCaster::filterMode() const.

C++ documentation:

Holds the filter mode specifying the entities to select for ray casting tests.

The default value is AcceptMatchingLayers.

Access functions:

Qt3DRender::QAbstractRayCaster::FilterMode filterMode() const
void setFilterMode(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)

Notifier signal:

void filterModeChanged(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)

pub unsafe fn hits(&self) -> CppBox<QVectorOfQRayCasterHit>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the results of last ray casting test as a vector of Qt3DRender::QRayCasterHit instances.

Calls C++ function: QVector<Qt3DRender::QRayCasterHit> Qt3DRender::QAbstractRayCaster::hits() const.

C++ documentation:

Holds the results of last ray casting test as a vector of Qt3DRender::QRayCasterHit instances.

Note that even if successive tests return the exact same results (or empty results), a change notification will be emitted at every test.

Access functions:

Qt3DRender::QAbstractRayCaster::Hits hits() const

Notifier signal:

void hitsChanged(const Qt3DRender::QAbstractRayCaster::Hits &hits)

pub unsafe fn layers(&self) -> CppBox<QVectorOfQLayer>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Returns the current list of layers

Calls C++ function: QVector<Qt3DRender::QLayer*> Qt3DRender::QAbstractRayCaster::layers() const.

C++ documentation:

Returns the current list of layers

pub unsafe fn meta_object(&self) -> Ptr<QMetaObject>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Calls C++ function: virtual const QMetaObject* Qt3DRender::QAbstractRayCaster::metaObject() const.

pub unsafe fn new_1a(
    parent: impl CastInto<Ptr<QNode>>
) -> QBox<QAbstractRayCaster>
[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Default constructs an instance of QAbstractRayCaster.

Calls C++ function: [constructor] void Qt3DRender::QAbstractRayCaster::QAbstractRayCaster(Qt3DCore::QNode* parent = …).

C++ documentation:

Default constructs an instance of QAbstractRayCaster.

pub unsafe fn new_0a() -> QBox<QAbstractRayCaster>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

An abstract base class for ray casting in 3d scenes.

Calls C++ function: [constructor] void Qt3DRender::QAbstractRayCaster::QAbstractRayCaster().

C++ documentation:

An abstract base class for ray casting in 3d scenes.

Qt3DRender::QAbstractRayCaster is an abstract base class for casting rays into a 3d scene. Qt3DRender::QAbstractRayCaster can not be directly instantiated, but rather through its subclasses. QAbstractRayCaster specifies common properties for all ray casters, such as run mode and layer handling, while leaving the actual ray casting details to the subclasses.

Ray castings differs from picking (using Qt3DRender::QObjectPicker) in that it does not require mouse events to trigger.

By default, the instances of Qt3DRender::QAbstractRayCaster are disabled. When enabled, the specified ray will be tested for intersecting objects at every frame. The QAbstractRayCaster::hits property will be updated with the results of the ray casting, even if no objects are found.

The Qt3DRender::QPickingSettings can be used to control the ray casting, such as which primitives are tested and how the results are returned.

Furthermore, Qt3DRender::QLayer components can be used to control how entities, or entity sub-graphs, react to ray casting.

Note: Components derived from QAbstractRayCaster should not be shared amount multiple entities.

pub unsafe fn qt_metacall(
    &self,
    arg1: Call,
    arg2: c_int,
    arg3: *mut *mut c_void
) -> c_int
[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Calls C++ function: virtual int Qt3DRender::QAbstractRayCaster::qt_metacall(QMetaObject::Call arg1, int arg2, void** arg3).

pub unsafe fn qt_metacast(&self, arg1: *const c_char) -> *mut c_void[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Calls C++ function: virtual void* Qt3DRender::QAbstractRayCaster::qt_metacast(const char* arg1).

pub unsafe fn remove_layer(&self, layer: impl CastInto<Ptr<QLayer>>)[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Remove layer from the current list of layers

Calls C++ function: void Qt3DRender::QAbstractRayCaster::removeLayer(Qt3DRender::QLayer* layer).

C++ documentation:

Remove layer from the current list of layers

pub unsafe fn run_mode(&self) -> RunMode[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the run mode controlling how often ray casting tests are performed.

Calls C++ function: Qt3DRender::QAbstractRayCaster::RunMode Qt3DRender::QAbstractRayCaster::runMode() const.

C++ documentation:

Holds the run mode controlling how often ray casting tests are performed.

If set to SingleShot (the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.

If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.

Access functions:

Qt3DRender::QAbstractRayCaster::RunMode runMode() const
void setRunMode(Qt3DRender::QAbstractRayCaster::RunMode runMode)

Notifier signal:

void runModeChanged(Qt3DRender::QAbstractRayCaster::RunMode runMode)

pub unsafe fn set_filter_mode(&self, filter_mode: FilterMode)[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the filter mode specifying the entities to select for ray casting tests.

Calls C++ function: [slot] void Qt3DRender::QAbstractRayCaster::setFilterMode(Qt3DRender::QAbstractRayCaster::FilterMode filterMode).

C++ documentation:

Holds the filter mode specifying the entities to select for ray casting tests.

The default value is AcceptMatchingLayers.

Access functions:

Qt3DRender::QAbstractRayCaster::FilterMode filterMode() const
void setFilterMode(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)

Notifier signal:

void filterModeChanged(Qt3DRender::QAbstractRayCaster::FilterMode filterMode)

pub unsafe fn set_run_mode(&self, run_mode: RunMode)[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Holds the run mode controlling how often ray casting tests are performed.

Calls C++ function: [slot] void Qt3DRender::QAbstractRayCaster::setRunMode(Qt3DRender::QAbstractRayCaster::RunMode runMode).

C++ documentation:

Holds the run mode controlling how often ray casting tests are performed.

If set to SingleShot (the default), when the component is enabled, a single ray casting test will be performed and the component will automatically disable itself.

If set to Continuous, ray casting tests will be performed at every frame as long as the component is enabled.

Access functions:

Qt3DRender::QAbstractRayCaster::RunMode runMode() const
void setRunMode(Qt3DRender::QAbstractRayCaster::RunMode runMode)

Notifier signal:

void runModeChanged(Qt3DRender::QAbstractRayCaster::RunMode runMode)

pub unsafe fn static_meta_object() -> Ref<QMetaObject>[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Returns a reference to the staticMetaObject field.

pub unsafe fn tr(
    s: *const c_char,
    c: *const c_char,
    n: c_int
) -> CppBox<QString>
[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Calls C++ function: static QString Qt3DRender::QAbstractRayCaster::tr(const char* s, const char* c, int n).

pub unsafe fn tr_utf8(
    s: *const c_char,
    c: *const c_char,
    n: c_int
) -> CppBox<QString>
[src]

This is supported on cpp_lib_version="5.11.3" or cpp_lib_version="5.12.2" or cpp_lib_version="5.13.0" or cpp_lib_version="5.14.0" only.

Calls C++ function: static QString Qt3DRender::QAbstractRayCaster::trUtf8(const char* s, const char* c, int n).

Trait Implementations

impl CppDeletable for QAbstractRayCaster[src]

unsafe fn delete(&self)[src]

Calls C++ function: virtual [destructor] void Qt3DRender::QAbstractRayCaster::~QAbstractRayCaster().

impl Deref for QAbstractRayCaster[src]

type Target = QComponent

The resulting type after dereferencing.

fn deref(&self) -> &QComponent[src]

Calls C++ function: Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QAbstractRayCaster* ptr).

impl DynamicCast<QAbstractRayCaster> for QComponent[src]

unsafe fn dynamic_cast(ptr: Ptr<QComponent>) -> Ptr<QAbstractRayCaster>[src]

Calls C++ function: Qt3DRender::QAbstractRayCaster* dynamic_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DCore::QComponent* ptr).

impl DynamicCast<QAbstractRayCaster> for QNode[src]

unsafe fn dynamic_cast(ptr: Ptr<QNode>) -> Ptr<QAbstractRayCaster>[src]

Calls C++ function: Qt3DRender::QAbstractRayCaster* dynamic_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DCore::QNode* ptr).

impl DynamicCast<QAbstractRayCaster> for QObject[src]

unsafe fn dynamic_cast(ptr: Ptr<QObject>) -> Ptr<QAbstractRayCaster>[src]

Calls C++ function: Qt3DRender::QAbstractRayCaster* dynamic_cast<Qt3DRender::QAbstractRayCaster*>(QObject* ptr).

impl DynamicCast<QRayCaster> for QAbstractRayCaster[src]

unsafe fn dynamic_cast(ptr: Ptr<QAbstractRayCaster>) -> Ptr<QRayCaster>[src]

Calls C++ function: Qt3DRender::QRayCaster* dynamic_cast<Qt3DRender::QRayCaster*>(Qt3DRender::QAbstractRayCaster* ptr).

impl DynamicCast<QScreenRayCaster> for QAbstractRayCaster[src]

unsafe fn dynamic_cast(ptr: Ptr<QAbstractRayCaster>) -> Ptr<QScreenRayCaster>[src]

Calls C++ function: Qt3DRender::QScreenRayCaster* dynamic_cast<Qt3DRender::QScreenRayCaster*>(Qt3DRender::QAbstractRayCaster* ptr).

impl StaticDowncast<QAbstractRayCaster> for QComponent[src]

unsafe fn static_downcast(ptr: Ptr<QComponent>) -> Ptr<QAbstractRayCaster>[src]

Calls C++ function: Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DCore::QComponent* ptr).

impl StaticDowncast<QAbstractRayCaster> for QNode[src]

unsafe fn static_downcast(ptr: Ptr<QNode>) -> Ptr<QAbstractRayCaster>[src]

Calls C++ function: Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DCore::QNode* ptr).

impl StaticDowncast<QAbstractRayCaster> for QObject[src]

unsafe fn static_downcast(ptr: Ptr<QObject>) -> Ptr<QAbstractRayCaster>[src]

Calls C++ function: Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(QObject* ptr).

impl StaticDowncast<QRayCaster> for QAbstractRayCaster[src]

unsafe fn static_downcast(ptr: Ptr<QAbstractRayCaster>) -> Ptr<QRayCaster>[src]

Calls C++ function: Qt3DRender::QRayCaster* static_cast<Qt3DRender::QRayCaster*>(Qt3DRender::QAbstractRayCaster* ptr).

impl StaticDowncast<QScreenRayCaster> for QAbstractRayCaster[src]

unsafe fn static_downcast(ptr: Ptr<QAbstractRayCaster>) -> Ptr<QScreenRayCaster>[src]

Calls C++ function: Qt3DRender::QScreenRayCaster* static_cast<Qt3DRender::QScreenRayCaster*>(Qt3DRender::QAbstractRayCaster* ptr).

impl StaticUpcast<QAbstractRayCaster> for QRayCaster[src]

unsafe fn static_upcast(ptr: Ptr<QRayCaster>) -> Ptr<QAbstractRayCaster>[src]

Calls C++ function: Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DRender::QRayCaster* ptr).

impl StaticUpcast<QAbstractRayCaster> for QScreenRayCaster[src]

unsafe fn static_upcast(ptr: Ptr<QScreenRayCaster>) -> Ptr<QAbstractRayCaster>[src]

Calls C++ function: Qt3DRender::QAbstractRayCaster* static_cast<Qt3DRender::QAbstractRayCaster*>(Qt3DRender::QScreenRayCaster* ptr).

impl StaticUpcast<QComponent> for QAbstractRayCaster[src]

unsafe fn static_upcast(ptr: Ptr<QAbstractRayCaster>) -> Ptr<QComponent>[src]

Calls C++ function: Qt3DCore::QComponent* static_cast<Qt3DCore::QComponent*>(Qt3DRender::QAbstractRayCaster* ptr).

impl StaticUpcast<QNode> for QAbstractRayCaster[src]

unsafe fn static_upcast(ptr: Ptr<QAbstractRayCaster>) -> Ptr<QNode>[src]

Calls C++ function: Qt3DCore::QNode* static_cast<Qt3DCore::QNode*>(Qt3DRender::QAbstractRayCaster* ptr).

impl StaticUpcast<QObject> for QAbstractRayCaster[src]

unsafe fn static_upcast(ptr: Ptr<QAbstractRayCaster>) -> Ptr<QObject>[src]

Calls C++ function: QObject* static_cast<QObject*>(Qt3DRender::QAbstractRayCaster* ptr).

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T, U> CastInto<U> for T where
    U: CastFrom<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> StaticUpcast<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.