Настроить выбранный элемент Surface3d - PullRequest
0 голосов
/ 14 июля 2020

как я могу изменить этот элемент, когда я нажимаю на него в Surface3d?

я хочу показать 3D-модель вместо этой сферы или ... просто хочу настроить ее

я искал в google и qt docs и все свойства в qml, но решения не было ...

i mean red sphere

увеличенный

forExample ==> MySurface.qml:

Surface3D
{
    id:mySurface
    Surface3DSeries
    {
        id:mySeries
        drawMode: Surface3DSeries.DrawSurface
        ItemModelSurfaceDataProxy
        {
            id:myModel
            itemModel: ListModel{
                ListElement
                {
                    // added some points like :
                    idNumber:"10"
                    cost:"4900"
                }
            }
        }
    }
}

Ответы [ 3 ]

0 голосов
/ 15 июля 2020

Спасибо за ответ. у нас есть проблема в том, что мы не говорим о 2-й сцене, и мне нужно знать 3 точки при нажатии ... я имею в виду, что нам нужно знать, что Qt.Vector3d (...) щелкнул по Surface3d, и когда я знаю, что могу создайте некоторый CustomeItem , например

Я создал объекты на своей поверхности, но теперь я хочу изменить эту сферу при нажатии в 3D, и я не могу найти какое-либо свойство или любую функцию, дающую точку (Qt.Vector3d ), щелкнув в surfac3d.

Дополнительно: мы не можем использовать TapHandler или MouseArea в Surface3D ...

Спасибо за попытку помочь.

0 голосов
/ 16 июля 2020

наконец, я использовал Идею для поиска третьей точки ...

Примечание: добавлен индивидуальный элемент перед изменением его положения.

Я использовал:

        selectionMode: AbstractGraph3D.SelectionMultiSeries
        onSelectedElementChanged:
        {
            var xPoint=mySeries.selectedPoint.x;
            var yPoint=mySeries.selectedPoint.y;
            var i;
            if(xPoint!=-1)
            {
                for(i=0;i<myListModel.count;++i)
                {
                    if(myListModel.get(i).idNumber==xPoint
                            &&  myListModel.get(i).cost==yPoint)
                    {
                        myCustom3DItem.position=Qt.vector3d(yPoint,myListModel.get(i).height,xPoint);
                        break;
                    }
                }
            }
        }
0 голосов
/ 15 июля 2020

Итак, если я понимаю вопрос, вы хотите изменить изображение, отображаемое на mouse_click.

QMS позволяет определять объекты Dynami c, см. Здесь: https://doc.qt.io/qt-5/qtqml-javascript-dynamicobjectcreation.html

И это позволяет настраивать обработчики сигналов, см. Здесь: https://doc.qt.io/qt-5/qtqml-syntax-signals.html

Таким образом, с помощью javascript можно определить любой объект, который будет отображаться в щелчок мышью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...