diff options
Diffstat (limited to 'GUIModel/ACC')
-rw-r--r-- | GUIModel/ACC/ACC_Animation.qml | 1099 | ||||
-rw-r--r-- | GUIModel/ACC/Material_ColorFactor.qml | 91 | ||||
-rw-r--r-- | GUIModel/ACC/Material_ColorFactor_Tbt.qml | 92 | ||||
-rw-r--r-- | GUIModel/ACC/Material_ColorFactor_noAlpha.qml | 85 | ||||
-rw-r--r-- | GUIModel/ACC/Stage.qml | 891 | ||||
-rw-r--r-- | GUIModel/ACC/Transform_NextGen.qml | 59 |
6 files changed, 2317 insertions, 0 deletions
diff --git a/GUIModel/ACC/ACC_Animation.qml b/GUIModel/ACC/ACC_Animation.qml new file mode 100644 index 0000000..ff543d1 --- /dev/null +++ b/GUIModel/ACC/ACC_Animation.qml @@ -0,0 +1,1099 @@ +/* + * Copyright (c) 2020,2021 Panasonic Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +import QtQuick 2.14 +import Qt3D.Animation 2.14 + +Item { + id:car_Anim + + property int acc_line_pos : 0 //0:hide 1:far 2:mid 3:near + property int cur_line_pos : 0 + property int acc_enable : 0 //0:OFF 1:ON (follow) + property int acc_icon : 0 //0:hide 1:icon 2:??? + property int acc_value : 148 //0:hide 1~999:value + property int acc_value1 : acc_value%10 + property int acc_value10 : (acc_value/10)%10 + property int acc_value100 : (acc_value/100)%10 + property int acc_car_pos : 0 //0:hide 1:far 2:mid 3:near + property int cur_car_pos : 0 + property int received_tbt_id: stage.received_id + property int current_tbt_id + + onAcc_line_posChanged: { + lineposchange() + } + onAcc_enableChanged: { + enablechange() + } + onAcc_car_posChanged: { + carposchange() + } + onReceived_tbt_idChanged: { + tbt_idchange() + } + + Connections{ + target: rootItem + onTransNormalToAdas:{ + if(rootItem.set_state == "set_default"){ + fadeout_in_default.start() + }else if(rootItem.set_state == "set_middle"){ + fadeout_in_mid.start() + }else if(rootItem.set_state == "set_near"){ + fadeout_in_near.start() + } + cameraToAdasPos.start() + + if(rootItem.car_state == "normal_default"){ + rootItem.car_state = "adas_default"} + else if(rootItem.car_state == "normal_middle"){ + rootItem.car_state = "adas_middle"} + else if(rootItem.car_state == "normal_near"){ + rootItem.car_state = "adas_near"} + + if(rootItem.arrow_state == "arrow_normal_default"){ + rootItem.arrow_state = "arrow_adas_default"} + else if(rootItem.arrow_state == "arrow_normal_middle"){ + rootItem.arrow_state = "arrow_adas_middle"} + else if(rootItem.arrow_state == "arrow_normal_near"){ + rootItem.arrow_state = "arrow_adas_near"} + } + + onTransAdasToMap:{ + adasToMapAnimation_acc3d.start() + + } + + onTransMapToNormal:{ + ddditemTonormalsize.start() + if(rootItem.set_state == "set_default"){ + fadeout_in_default.start() + }else if(rootItem.set_state == "set_middle"){ + fadeout_in_mid.start() + }else if(rootItem.set_state == "set_near"){ + fadeout_in_near.start() + } + cameraTonormalPos.start() + + + if(rootItem.car_state == "adas_default"){ + rootItem.car_state = "normal_default"} + else if(rootItem.car_state == "adas_middle"){ + rootItem.car_state = "normal_middle"} + else if(rootItem.car_state == "adas_near"){ + rootItem.car_state = "normal_near"} + + if(rootItem.arrow_state == "arrow_adas_default"){ + rootItem.arrow_state = "arrow_normal_default"} + else if(rootItem.arrow_state == "arrow_adas_middle"){ + rootItem.arrow_state = "arrow_normal_middle"} + else if(rootItem.arrow_state == "arrow_adas_near"){ + rootItem.arrow_state = "arrow_normal_near"} + } + } + + function lineposchange(){ + } + + function enablechange(){ + } + + function carposchange(){ + } + + function tbt_idchange(){//////////////////// + switch(received_tbt_id){ + case 1: + tbt_arrow_anim_to_LF.start() + break; + case 2: + tbt_arrow_anim_to_L.start() + break; + case 3: + tbt_arrow_anim_to_RF.start() + break; + case 4: + tbt_arrow_anim_to_R.start() + break; + default: + break; + } + stage.current_id=stage.received_id + } + /*----------------------------------- arrow animation ------------------------------------*/ + ParallelAnimation{ + id: tbt_arrow_anim_to_LF + NumberAnimation { + target: stage.material_tbt_LF + property: "u_alphaFactor" + duration: 1000 + to: rootItem.mode == 1 ? 1 : 0 + } + NumberAnimation { + targets: [stage.material_tbt_L,stage.material_tbt_RF,stage.material_tbt_R] + properties: "u_alphaFactor" + duration: 1000 + to: 0 + } + NumberAnimation { + target: stage.material_tbt_shadow_LF + property: "u_alphaFactor" + duration: 1000 + to: rootItem.mode == 1 ? 1 : 0 + } + NumberAnimation { + targets: [stage.material_tbt_shadow_L,stage.material_tbt_shadow_RF,stage.material_tbt_shadow_R] + properties: "u_alphaFactor" + duration: 1000 + to: 0 + } + NumberAnimation { + target: stage.trans_tbt_LF + property: "default_py" + duration: 1000 + to: rootItem.mode == 1 ? 0.52 : 0.5 + } + NumberAnimation { + targets: [stage.trans_tbt_L,stage.trans_tbt_RF,stage.trans_tbt_R] + properties: "default_py" + duration: 1000 + to: 0.5 + } + NumberAnimation { + target: stage.trans_tbt_shadow_LF + property: "default_py" + duration: 1000 + to: rootItem.mode == 1 ? 0.2 : 0.1 + } + NumberAnimation { + targets: [stage.trans_tbt_shadow_L,stage.trans_tbt_RF,stage.trans_tbt_R] + properties: "default_py" + duration: 1000 + to: 0.1 + } + } + ParallelAnimation{ + id: tbt_arrow_anim_to_L + NumberAnimation { + target: stage.material_tbt_L + property: "u_alphaFactor" + duration: 1000 + to: rootItem.mode == 1 ? 1 : 0 + } + NumberAnimation { + targets: [stage.material_tbt_LF,stage.material_tbt_RF,stage.material_tbt_R] + properties: "u_alphaFactor" + duration: 1000 + to: 0 + } + NumberAnimation { + target: stage.material_tbt_shadow_L + property: "u_alphaFactor" + duration: 1000 + to: rootItem.mode == 1 ? 1 : 0 + } + NumberAnimation { + targets: [stage.material_tbt_shadow_LF,stage.material_tbt_shadow_RF,stage.material_tbt_shadow_R] + properties: "u_alphaFactor" + duration: 1000 + to: 0 + } + NumberAnimation { + target: stage.trans_tbt_L + property: "default_py" + duration: 1000 + to: rootItem.mode == 1 ? 0.52 : 0.5 + } + NumberAnimation { + targets: [stage.trans_tbt_LF,stage.trans_tbt_RF,stage.trans_tbt_R] + properties: "default_py" + duration: 1000 + to: 0.5 + } + NumberAnimation { + target: stage.trans_tbt_shadow_L + property: "default_py" + duration: 1000 + to: rootItem.mode == 1 ? 0.2 : 0.1 + } + NumberAnimation { + targets: [stage.trans_tbt_shadow_LF,stage.trans_tbt_shadow_RF,stage.trans_tbt_shadow_R] + properties: "default_py" + duration: 1000 + to: 0.1 + } + } + ParallelAnimation{ + id: tbt_arrow_anim_to_RF + NumberAnimation { + target: stage.material_tbt_RF + property: "u_alphaFactor" + duration: 1000 + to: rootItem.mode == 1 ? 1 : 0 + } + NumberAnimation { + targets: [stage.material_tbt_LF,stage.material_tbt_L,stage.material_tbt_R] + properties: "u_alphaFactor" + duration: 1000 + to: 0 + } + NumberAnimation { + target: stage.material_tbt_shadow_RF + property: "u_alphaFactor" + duration: 1000 + to: rootItem.mode == 1 ? 1 : 0 + } + NumberAnimation { + targets: [stage.material_tbt_shadow_LF,stage.material_tbt_shadow_L,stage.material_tbt_shadow_R] + properties: "u_alphaFactor" + duration: 1000 + to: 0 + } + NumberAnimation { + target: stage.trans_tbt_RF + property: "default_py" + duration: 1000 + to: rootItem.mode == 1 ? 0.52 : 0.5 + } + NumberAnimation { + targets: [stage.trans_tbt_LF,stage.trans_tbt_L,stage.trans_tbt_R] + properties: "default_py" + duration: 1000 + to: 0.5 + } + NumberAnimation { + target: stage.trans_tbt_shadow_RF + property: "default_py" + duration: 1000 + to: rootItem.mode == 1 ? 0.2 : 0.1 + } + NumberAnimation { + targets: [stage.trans_tbt_shadow_LF,stage.trans_tbt_shadow_L,stage.trans_tbt_shadow_R] + properties: "default_py" + duration: 1000 + to: 0.1 + } + } + ParallelAnimation{ + id: tbt_arrow_anim_to_R + NumberAnimation { + target: stage.material_tbt_R + property: "u_alphaFactor" + duration: 1000 + to: rootItem.mode == 1 ? 1 : 0 + } + NumberAnimation { + targets: [stage.material_tbt_LF,stage.material_tbt_L,stage.material_tbt_RF] + properties: "u_alphaFactor" + duration: 1000 + to: 0 + } + NumberAnimation { + target: stage.material_tbt_shadow_R + property: "u_alphaFactor" + duration: 1000 + to: rootItem.mode == 1 ? 1 : 0 + } + NumberAnimation { + targets: [stage.material_tbt_shadow_LF,stage.material_tbt_shadow_L,stage.material_tbt_shadow_RF] + properties: "u_alphaFactor" + duration: 1000 + to: 0 + } + NumberAnimation { + target: stage.trans_tbt_R + property: "default_py" + duration: 1000 + to: rootItem.mode == 1 ? 0.52 : 0.5 + } + NumberAnimation { + targets: [stage.trans_tbt_LF,stage.trans_tbt_L,stage.trans_tbt_RF] + properties: "default_py" + duration: 1000 + to: 0.5 + } + NumberAnimation { + target: stage.trans_tbt_shadow_R + property: "default_py" + duration: 1000 + to: rootItem.mode == 1 ? 0.2 : 0.1 + } + NumberAnimation { + targets: [stage.trans_tbt_shadow_LF,stage.trans_tbt_shadow_L,stage.trans_tbt_shadow_RF] + properties: "default_py" + duration: 1000 + to: 0.1 + } + } + SequentialAnimation{ + id:fadeout_in_default + onStarted: rootItem.focus=false + ParallelAnimation{ + NumberAnimation { target: stage.material_distance_set; property: "u_alphaFactor"; duration: 330; from:0.2; to: 0 } + NumberAnimation { target: stage.material_distance_arrow; property: "u_alphaFactor"; duration: 330; from:1; to: 0 } + NumberAnimation { target: stage.material_distance_base; property: "u_alphaFactor"; duration: 330; from:1; to: 0 } + NumberAnimation { targets: [stage.material_tbt_LF, stage.material_tbt_L, stage.material_tbt_RF, stage.material_tbt_R];property: "u_alphaFactor";duration: 330;to: 0 } + NumberAnimation { targets: [stage.trans_tbt_LF, stage.trans_tbt_L, stage.trans_tbt_RF, stage.trans_tbt_R];property: "default_py";duration: 0;to: 0.0 } + NumberAnimation { targets: [stage.material_tbt_shadow_LF, stage.material_tbt_shadow_L, stage.material_tbt_shadow_RF, stage.material_tbt_shadow_R];property: "u_alphaFactor";duration: 330;to: 0 } + NumberAnimation { targets: [stage.trans_tbt_shadow_LF, stage.trans_tbt_shadow_L, stage.trans_tbt_shadow_RF, stage.trans_tbt_shadow_R];property: "default_py";duration: 0;to: 0.0 } + } + PauseAnimation {duration: 957} + ParallelAnimation{ + NumberAnimation { target: stage.material_distance_set; property: "u_alphaFactor"; duration: 330; from:0; to: 0.2 } + NumberAnimation { target: stage.material_distance_arrow; property: "u_alphaFactor"; duration: 330; from:0; to: 1 } + NumberAnimation { target: stage.material_distance_base; property: "u_alphaFactor"; duration: 330; from:0; to: 1 } + } + } + SequentialAnimation{ + id:fadeout_in_mid + onStarted: rootItem.focus=false + ParallelAnimation{ + NumberAnimation { target: stage.material_distance_set_mid; property: "u_alphaFactor"; duration: 330; from:0.2; to: 0 } + NumberAnimation { target: stage.material_distance_arrow; property: "u_alphaFactor"; duration: 330; from:1; to: 0 } + NumberAnimation { target: stage.material_distance_base; property: "u_alphaFactor"; duration: 330; from:1; to: 0 } + NumberAnimation { targets: [stage.material_tbt_LF, stage.material_tbt_L, stage.material_tbt_RF, stage.material_tbt_R];property: "u_alphaFactor";duration: 330;to: 0 } + NumberAnimation { targets: [stage.trans_tbt_LF, stage.trans_tbt_L, stage.trans_tbt_RF, stage.trans_tbt_R];property: "default_py";duration: 0;to: 0.0 } + NumberAnimation { targets: [stage.material_tbt_shadow_LF, stage.material_tbt_shadow_L, stage.material_tbt_shadow_RF, stage.material_tbt_shadow_R];property: "u_alphaFactor";duration: 330;to: 0 } + NumberAnimation { targets: [stage.trans_tbt_shadow_LF, stage.trans_tbt_shadow_L, stage.trans_tbt_shadow_RF, stage.trans_tbt_shadow_R];property: "default_py";duration: 0;to: 0.0 } + } + PauseAnimation {duration: 957} + ParallelAnimation{ + NumberAnimation { target: stage.material_distance_set_mid; property: "u_alphaFactor"; duration: 330; from:0; to: 0.2 } + NumberAnimation { target: stage.material_distance_arrow; property: "u_alphaFactor"; duration: 330; from:0; to: 1 } + NumberAnimation { target: stage.material_distance_base; property: "u_alphaFactor"; duration: 330; from:0; to: 1 } + } + } + SequentialAnimation{ + id:fadeout_in_near + onStarted: rootItem.focus=false + ParallelAnimation{ + NumberAnimation { target: stage.material_distance_set_near; property: "u_alphaFactor"; duration: 330; from:0.2; to: 0 } + NumberAnimation { target: stage.material_distance_arrow; property: "u_alphaFactor"; duration: 330; from:1; to: 0 } + NumberAnimation { target: stage.material_distance_base; property: "u_alphaFactor"; duration: 330; from:1; to: 0 } + NumberAnimation { targets: [stage.material_tbt_LF, stage.material_tbt_L, stage.material_tbt_RF, stage.material_tbt_R];property: "u_alphaFactor";duration: 330;to: 0 } + NumberAnimation { targets: [stage.trans_tbt_LF, stage.trans_tbt_L, stage.trans_tbt_RF, stage.trans_tbt_R];property: "default_py";duration: 0;to: 0.0 } + NumberAnimation { targets: [stage.material_tbt_shadow_LF, stage.material_tbt_shadow_L, stage.material_tbt_shadow_RF, stage.material_tbt_shadow_R];property: "u_alphaFactor";duration: 330;to: 0 } + NumberAnimation { targets: [stage.trans_tbt_shadow_LF, stage.trans_tbt_shadow_L, stage.trans_tbt_shadow_RF, stage.trans_tbt_shadow_R];property: "default_py";duration: 0;to: 0.0 } + } + PauseAnimation {duration: 957} + ParallelAnimation{ + NumberAnimation { target: stage.material_distance_set_near; property: "u_alphaFactor"; duration: 330; from:0; to: 0.2 } + NumberAnimation { target: stage.material_distance_arrow; property: "u_alphaFactor"; duration: 330; from:0; to: 1 } + NumberAnimation { target: stage.material_distance_base; property: "u_alphaFactor"; duration: 330; from:0; to: 1 } + } + } + + + SequentialAnimation{ + id: cameraToAdasPos + onStarted: rootItem.focus=false + property int duration_camera: 891//957 + property int duration_all: 330//363 + property var easing_camera: Easing.InOutQuart + property var easing_all: Easing.InOutQuart + PauseAnimation {duration: 330} + ParallelAnimation{ + NumberAnimation { target: ddditem; property: "scale"; to: 1.0; duration: cameraToAdasPos.duration_camera ; easing.type: Easing.OutBack}//cameraToAdasPos.easing_camera } + NumberAnimation { target: ddditem; property: "x"; to: 512; duration: cameraToAdasPos.duration_camera ; easing.type: Easing.InOutQuad}//cameraToAdasPos.easing_camera } + NumberAnimation { target: ddditem; property: "y"; to: -35; duration: cameraToAdasPos.duration_camera ; easing.type: Easing.OutBack}//cameraToAdasPos.easing_camera } + NumberAnimation { target: stage.trans_camera; property: "posX"; to: -10; duration: cameraToAdasPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.InOutCubic } + NumberAnimation { target: stage.trans_camera; property: "posY"; to:7; duration: cameraToAdasPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.OutExpo } + NumberAnimation { target: stage.trans_camera; property: "posZ"; to: 8; duration: cameraToAdasPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.OutExpo } + NumberAnimation { target: stage.trans_camera; property: "rotX"; to: -24.2039; duration: cameraToAdasPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.OutBack } + NumberAnimation { target: stage.trans_camera; property: "rotY"; to: -46.4688; duration: cameraToAdasPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.InOutQuart } + NumberAnimation { target: stage.trans_camera; property: "rotZ"; to: -0.999999; duration: cameraToAdasPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.OutExpo } + NumberAnimation { target: stage.trans_distance_arrow; property: "scale_x"; to: 1.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_arrow; property: "scale_z"; to: 0.75; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_base; property: "posi_z"; to: 6.7*0.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_base; property: "scale_x"; to: 1.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_base; property: "scale_z"; to: 0.75; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set; property: "posi_z"; to: 6.7*0.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set; property: "scale_x"; to: 1.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set; property: "scale_z"; to: 0.75; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_mid ;property: "posi_z"; to: 6.7*0.4+4*0.75; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_mid ;property: "scale_x";to: 1.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_mid ;property: "scale_z";to: 0.75; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_near;property: "posi_z"; to: 6.7*0.4+8*0.75; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_near;property: "scale_x";to: 1.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_near;property: "scale_z";to: 0.75; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_road; property: "posi_z"; to: 6*0.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_road; property: "scale_x"; to: 1.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_road; property: "scale_z"; to: 0.6; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_sensorline; property: "posi_z"; to: 6*0.25; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_sensorline; property: "scale_x"; to: 1.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_sensorline; property: "scale_z"; to: 0.6; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_road_light; property: "posi_z"; to: 6*0.6; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_road_light; property: "scale_x"; to: 1.4; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + NumberAnimation { target: stage.trans_road_light; property: "scale_z"; to: 0.6; duration: cameraToAdasPos.duration_all; easing.type: cameraToAdasPos.easing_all } + } + ParallelAnimation{ + NumberAnimation { + target: { + switch(received_tbt_id){ + case 1: + stage.material_tbt_LF + break; + case 2: + stage.material_tbt_L + break; + case 3: + stage.material_tbt_RF + break; + case 4: + stage.material_tbt_R + break; + default: + stage.material_tbt_LF + break; + } + } + property: "u_alphaFactor" + duration: 330 + from:0 + to: 1 + } + NumberAnimation { + target: { + switch(received_tbt_id){ + case 1: + stage.material_tbt_shadow_LF + break; + case 2: + stage.material_tbt_shadow_L + break; + case 3: + stage.material_tbt_shadow_RF + break; + case 4: + stage.material_tbt_shadow_R + break; + default: + stage.material_tbt_shadow_LF + break; + } + } + property: "u_alphaFactor" + duration: 330 + from:0 + to: 1 + } + NumberAnimation { + target: { + switch(received_tbt_id){ + case 1: + stage.trans_tbt_LF + break; + case 2: + stage.trans_tbt_L + break; + case 3: + stage.trans_tbt_RF + break; + case 4: + stage.trans_tbt_R + break; + default: + stage.trans_tbt_LF + break; + } + } + property: "default_py" + duration: 330 + from: 0 + to: 0.52 + } + NumberAnimation { + target: { + switch(received_tbt_id){ + case 1: + stage.trans_tbt_shadow_LF + break; + case 2: + stage.trans_tbt_shadow_L + break; + case 3: + stage.trans_tbt_shadow_RF + break; + case 4: + stage.trans_tbt_shadow_R + break; + default: + stage.trans_tbt_shadow_LF + break; + } + } + property: "default_py" + duration: 330 + from: 0 + to: 0.2 + } + } + } + + SequentialAnimation{ + id: cameraTonormalPos + onStarted: rootItem.focus=false + property int duration_camera: 891//957 + property int duration_all: 330//363 + property var easing_camera: Easing.InOutQuart + property var easing_all: Easing.InOutQuart + PauseAnimation {duration: 330} + ParallelAnimation{ + NumberAnimation { target: ddditem; property: "scale"; to: 0.6; duration: cameraTonormalPos.duration_camera; easing.type: Easing.InOutQuad}//cameraTonormalPos.easing_camera } + NumberAnimation { target: ddditem; property: "x"; to: 548; duration: cameraTonormalPos.duration_camera; easing.type: Easing.InOutQuad}//cameraTonormalPos.easing_camera } + NumberAnimation { target: ddditem; property: "y"; to: -23; duration: cameraTonormalPos.duration_camera; easing.type: Easing.InOutQuad}//cameraTonormalPos.easing_camera } + NumberAnimation { target: stage.trans_camera; property: "posX"; to: 0.0; duration: cameraTonormalPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.InOutCubic } + NumberAnimation { target: stage.trans_camera; property: "posY"; to:2.6; duration: cameraTonormalPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.OutExpo } + NumberAnimation { target: stage.trans_camera; property: "posZ"; to: 2.35; duration: cameraTonormalPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.OutExpo } + NumberAnimation { target: stage.trans_camera; property: "rotX"; to:-8.29241; duration: cameraTonormalPos.duration_camera*1.2; easing.type: Easing.InOutQuad}//Easing.InBack } + NumberAnimation { target: stage.trans_camera; property: "rotY"; to: 0.0; duration: cameraTonormalPos.duration_camera*1.2; easing.type: Easing.InOutQuad}//Easing.InOutQuart } + NumberAnimation { target: stage.trans_camera; property: "rotZ"; to: 0.0; duration: cameraTonormalPos.duration_camera; easing.type: Easing.InOutQuad}//Easing.OutExpo } + NumberAnimation { target: stage.trans_distance_arrow; property: "scale_x"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_arrow; property: "scale_z"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_base; property: "posi_z"; to: 0.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_base; property: "scale_x"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_base; property: "scale_z"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set; property: "posi_z"; to: 0.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set; property: "scale_x"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set; property: "scale_z"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_mid ;property: "posi_z"; to: 0.0+4; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_mid ;property: "scale_x";to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_mid ;property: "scale_z";to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_near;property: "posi_z"; to: 0.0+8; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_near;property: "scale_x";to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_distance_set_near;property: "scale_z";to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_road; property: "posi_z"; to: 0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_road; property: "scale_x"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_road; property: "scale_z"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_sensorline; property: "posi_z"; to: 0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_sensorline; property: "scale_x"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_sensorline; property: "scale_z"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_road_light; property: "posi_z"; to: 0.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_road_light; property: "scale_x"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { target: stage.trans_road_light; property: "scale_z"; to: 1.0; duration: cameraTonormalPos.duration_all; easing.type: cameraTonormalPos.easing_all } + NumberAnimation { targets: [stage.material_tbt_LF, stage.material_tbt_L, stage.material_tbt_RF, stage.material_tbt_R];property: "u_alphaFactor";duration: 330;to: 0 } + NumberAnimation { targets: [stage.trans_tbt_LF, stage.trans_tbt_L, stage.trans_tbt_RF, stage.trans_tbt_R];property: "default_py";duration: 0;to: 0.0 } + NumberAnimation { targets: [stage.material_tbt_shadow_LF, stage.material_tbt_shadow_L, stage.material_tbt_shadow_RF, stage.material_tbt_shadow_R];property: "u_alphaFactor";duration: 330;to: 0 } + NumberAnimation { targets: [stage.trans_tbt_shadow_LF, stage.trans_tbt_shadow_L, stage.trans_tbt_shadow_RF, stage.trans_tbt_shadow_R];property: "default_py";duration: 0;to: 0.0 } + } + } + + SequentialAnimation{ + id: adasToMapAnimation_acc3d + onStarted: rootItem.focus=false + NumberAnimation { + target: ddditem + property: "opacity" + duration: 330 + from:1 + to:0 + } + + PropertyAnimation{ + target: ddditem + property: "visible" + duration:0 + to:false + } + } + + SequentialAnimation{ + id: ddditemTonormalsize + onStarted: rootItem.focus=false + PauseAnimation {duration: 330} + PropertyAnimation{ + target: ddditem + property: "visible" + duration:0 + to:true + } + + NumberAnimation { + target: ddditem + property: "opacity" + duration: 330 + from:0 + to:1 + } + } + Item{ + id: distance_set_3d_Anim + states:[ + State{ + name:"set_default" + when: rootItem.set_state === "set_default" + }, + State{ + name:"set_middle" + when: rootItem.set_state === "set_middle" + }, + State{ + name:"set_near" + when: rootItem.set_state === "set_near" + } + ] + + transitions: [ + Transition { + SequentialAnimation{ + onStarted: rootItem.focus=false + ParallelAnimation{ + NumberAnimation { + target: stage.material_distance_set_mid + property: "u_alphaFactor" + duration: 0 + to: 0 + } + NumberAnimation { + target: stage.material_distance_set_near + property: "u_alphaFactor" + duration: 0 + to: 0 + } + } + PauseAnimation { duration: 300} + NumberAnimation{ + target: stage.material_distance_set + property: "u_alphaFactor" + duration: 50 + to: 0.2 + } + } + from: "*" + to: "set_default" + }, + Transition { + SequentialAnimation{ + onStarted: rootItem.focus=false + ParallelAnimation{ + NumberAnimation{ + target: stage.material_distance_set + property: "u_alphaFactor" + duration: 0 + to: 0 + } + NumberAnimation { + target: stage.material_distance_set_near + property: "u_alphaFactor" + duration: 0 + to: 0 + } + } + PauseAnimation { duration: 300} + NumberAnimation { + target: stage.material_distance_set_mid + property: "u_alphaFactor" + duration: 50 + to: 0.2 + } + } + from: "*" + to: "set_middle" + }, + Transition { + SequentialAnimation{ + onStarted: rootItem.focus=false + ParallelAnimation{ + NumberAnimation{ + target: stage.material_distance_set + property: "u_alphaFactor" + duration: 0 + to: 0 + } + NumberAnimation { + target: stage.material_distance_set_mid + property: "u_alphaFactor" + duration: 0 + to: 0 + } + } + PauseAnimation { duration: 300} + NumberAnimation { + target: stage.material_distance_set_near + property: "u_alphaFactor" + duration: 50 + to: 0.2 + } + } + from: "*" + to: "set_near" + } + ] + } + Item{ + id: arrow_3d_Anim + + states:[ + State{ + name:"arrow_normal_default" + when: rootItem.arrow_state == "arrow_normal_default" + }, + State{ + name:"arrow_normal_middle" + when: rootItem.arrow_state == "arrow_normal_middle" + }, + State{ + name:"arrow_normal_near" + when: rootItem.arrow_state == "arrow_normal_near" + }, + State{ + name:"arrow_adas_default" + when: rootItem.arrow_state == "arrow_adas_default" + }, + State{ + name:"arrow_adas_middle" + when: rootItem.arrow_state == "arrow_adas_middle" + }, + State{ + name:"arrow_adas_near" + when: rootItem.arrow_state == "arrow_adas_near" + } + ] + + transitions: [ + Transition { + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + duration: 300 + to: stage.trans_distance_arrow.default_pz + } + from: "*" + to: "arrow_normal_default" + }, + Transition { + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + duration: 300 + to: stage.trans_distance_arrow.default_pz + 4 + } + from: "*" + to: "arrow_normal_middle" + }, + Transition { + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + duration: 300 + to: stage.trans_distance_arrow.default_pz + 7.99 + } + from: "*" + to: "arrow_normal_near" + }, + Transition { + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + duration: 300 + to: 6.7*0.4 + } + from: "*" + to: "arrow_adas_default" + }, + Transition { + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + duration: 300 + to: 6.7*0.4+4*0.75 + } + from: "*" + to: "arrow_adas_middle" + }, + Transition { + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + duration: 300 + to: 6.7*0.4+8 * 0.75 + } + from: "*" + to: "arrow_adas_near" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: 6.7 * 0.75 + } + } + from: "normal_default" + to: "adas_default" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: 6.7+4 * 0.75 + } + } + from: "normal_middle" + to: "adas_middle" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: 6.7+8 * 0.75 + } + } + from: "normal_near" + to: "adas_near" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: stage.trans_distance_arrow.default_pz + } + } + from: "adas_default" + to: "normal_default" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: stage.trans_distance_arrow.default_pz + 4 + } + } + from: "adas_middle" + to: "normal_middle" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_distance_arrow + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: stage.trans_distance_arrow.default_pz + 7.99 + } + } + from: "adas_near" + to: "normal_near" + } + ] + + } + + Item{ + id: car_3d_Anim + + states:[ + State{ + name:"normal_default" + when: rootItem.car_state == "normal_default" + }, + State{ + name:"normal_middle" + when: rootItem.car_state == "normal_middle" + }, + State{ + name:"normal_near" + when: rootItem.car_state == "normal_near" + }, + State{ + name:"adas_default" + when: rootItem.car_state == "adas_default" + }, + State{ + name:"adas_middle" + when: rootItem.car_state == "adas_middle" + }, + State{ + name:"adas_near" + when: rootItem.car_state == "adas_near" + } + ] + + transitions: [ + Transition { + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + duration: 300 + to: stage.trans_other_car.default_pz + } + from: "*" + to: "normal_default" + }, + Transition { + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + duration: 300 + to: stage.trans_other_car.default_pz + 4 + } + from: "*" + to: "normal_middle" + }, + Transition { + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + duration: 300 + to: stage.trans_other_car.default_pz + 8 + } + from: "*" + to: "normal_near" + }, + Transition { + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + duration: 300 + to: stage.trans_other_car.default_pz + 7.35 + } + from: "*" + to: "adas_default" + }, + Transition { + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + duration: 300 + to: stage.trans_other_car.default_pz + 7.35 + 4*0.75 + } + from: "*" + to: "adas_middle" + }, + Transition { + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + duration: 300 + to: stage.trans_other_car.default_pz + 7.35 + 8*0.75 + } + from: "*" + to: "adas_near" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: stage.trans_other_car.default_pz + 7.35 + } + } + from: "normal_default" + to: "adas_default" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: stage.trans_other_car.default_pz + 7.35 + 4*0.75 + } + } + from: "normal_middle" + to: "adas_middle" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + easing.type: Easing.OutCubic + duration: 957 + to: stage.trans_other_car.default_pz + 7.35 + 8*0.75 + } + } + from: "normal_near" + to: "adas_near" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + easing.type: Easing.InCubic + duration: 957 + to: stage.trans_other_car.default_pz + } + } + from: "adas_default" + to: "normal_default" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + easing.type: Easing.InCubic + duration: 957 + to: stage.trans_other_car.default_pz + 4 + } + } + from: "adas_middle" + to: "normal_middle" + }, + Transition { + SequentialAnimation{ + PauseAnimation { duration: 330} + NumberAnimation{ + target: stage.trans_other_car + properties: "posi_z" + easing.type: Easing.InCubic + duration: 957 + to: stage.trans_other_car.default_pz + 8 + } + } + from: "adas_near" + to: "normal_near" + } + ] + } +} diff --git a/GUIModel/ACC/Material_ColorFactor.qml b/GUIModel/ACC/Material_ColorFactor.qml new file mode 100644 index 0000000..0081a73 --- /dev/null +++ b/GUIModel/ACC/Material_ColorFactor.qml @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2020,2021 Panasonic Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +import QtQuick 2.14 +import Qt3D.Core 2.14 +import Qt3D.Render 2.14 + +Material{ + id: root + property color u_rgbFactor : Qt.rgba(1,1,1,1) + property real u_alphaFactor : 1.0 + property url u_Texture + + parameters: [ + Parameter{name:"u_rgbFactor" ; value: Qt.vector3d(root.u_rgbFactor.r,root.u_rgbFactor.g,root.u_rgbFactor.b) }, + Parameter{name:"u_alphaFactor" ; value: root.u_alphaFactor }, + Parameter{ + name:"u_Texture"; + value: Texture2D{ + id:shaderTexture + minificationFilter: Texture.LinearMipMapLinear + magnificationFilter: Texture.Linear + generateMipMaps: true + maximumAnisotropy: 4.0 + TextureImage{ + source: u_Texture + } + } + } + ] + + effect: Effect{ + + techniques: [ + Technique { + graphicsApiFilter { + api: GraphicsApiFilter.OpenGLES + profile: GraphicsApiFilter.NoProfile + majorVersion: 2 + minorVersion: 0 + } + + filterKeys: [ FilterKey { name: "renderingStyle"; value: "forward" } ] + + renderPasses: [ + RenderPass { + shaderProgram: ShaderProgram { + vertexShaderCode : loadSource("qrc:/Shaders/vert/RefTrans_Qt.vert") + fragmentShaderCode : loadSource("qrc:/Shaders/frag/RefTexRefColorFactor_Qt.frag") + } + renderStates: [ + + CullFace{mode:CullFace.Back}, + ScissorTest{ + left: 300; + bottom: 150; + width:winl.width-ddditem.x-250; + height: winl.height -100 + }, + BlendEquationArguments{ + sourceRgb: BlendEquationArguments.SourceAlpha + destinationRgb: BlendEquationArguments.OneMinusSourceAlpha + sourceAlpha: BlendEquationArguments.OneMinusDestinationAlpha + destinationAlpha: BlendEquationArguments.One + } + ] + } + ] + } + ] + } +} diff --git a/GUIModel/ACC/Material_ColorFactor_Tbt.qml b/GUIModel/ACC/Material_ColorFactor_Tbt.qml new file mode 100644 index 0000000..9b3786e --- /dev/null +++ b/GUIModel/ACC/Material_ColorFactor_Tbt.qml @@ -0,0 +1,92 @@ +/* + * Copyright (c) 2020,2021 Panasonic Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +import QtQuick 2.14 +import Qt3D.Core 2.14 +import Qt3D.Render 2.14 + +Material{ + id: root + + property color u_rgbFactor : Qt.rgba(1,1,1,1) + property real u_alphaFactor : 1.0 + property url u_Texture + + parameters: [ + Parameter{name:"u_rgbFactor" ; value: Qt.vector3d(root.u_rgbFactor.r,root.u_rgbFactor.g,root.u_rgbFactor.b) }, + Parameter{name:"u_alphaFactor" ; value: root.u_alphaFactor }, + Parameter{ + name:"u_Texture"; + value: Texture2D{ + id:shaderTexture + minificationFilter: Texture.LinearMipMapLinear + magnificationFilter: Texture.Linear + generateMipMaps: true + maximumAnisotropy: 4.0 + TextureImage{ + source: u_Texture + } + } + } + ] + + effect: Effect{ + + techniques: [ + Technique { + graphicsApiFilter { + api: GraphicsApiFilter.OpenGLES + profile: GraphicsApiFilter.NoProfile + majorVersion: 2 + minorVersion: 0 + } + + filterKeys: [ FilterKey { name: "renderingStyle"; value: "forward" } ] + + renderPasses: [ + RenderPass { + shaderProgram: ShaderProgram { + vertexShaderCode : loadSource("qrc:/Shaders/vert/RefTrans_Qt.vert") + fragmentShaderCode : loadSource("qrc:/Shaders/frag/RefTexRefColorFactor_Qt.frag") + } + renderStates: [ + + CullFace{mode:CullFace.Back}, + ScissorTest{ + left: 500; + bottom: 450; + width:500; + height: 500 + }, + BlendEquationArguments{ + sourceRgb: BlendEquationArguments.SourceAlpha + destinationRgb: BlendEquationArguments.OneMinusSourceAlpha + sourceAlpha: BlendEquationArguments.OneMinusDestinationAlpha + destinationAlpha: BlendEquationArguments.One + } + ] + } + ] + } + ] + } +} diff --git a/GUIModel/ACC/Material_ColorFactor_noAlpha.qml b/GUIModel/ACC/Material_ColorFactor_noAlpha.qml new file mode 100644 index 0000000..d49e42a --- /dev/null +++ b/GUIModel/ACC/Material_ColorFactor_noAlpha.qml @@ -0,0 +1,85 @@ +/* + * Copyright (c) 2020,2021 Panasonic Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +import QtQuick 2.14 +import Qt3D.Core 2.14 +import Qt3D.Render 2.14 + +Material{ + id: root + property color u_rgbFactor : Qt.rgba(1,1,1,1) + property real u_alphaFactor : 1.0 + property url u_Texture + + parameters: [ + Parameter{name:"u_rgbFactor" ; value: Qt.vector3d(root.u_rgbFactor.r,root.u_rgbFactor.g,root.u_rgbFactor.b) }, + Parameter{name:"u_alphaFactor" ; value: root.u_alphaFactor }, + Parameter{ + name:"u_Texture"; + value: Texture2D{ + id:shaderTexture + minificationFilter: Texture.LinearMipMapLinear + magnificationFilter: Texture.Linear + generateMipMaps: true + maximumAnisotropy: 4.0 + TextureImage{ + source: u_Texture + } + } + } + ] + + effect: Effect{ + + techniques: [ + Technique { + graphicsApiFilter { + api: GraphicsApiFilter.OpenGLES + profile: GraphicsApiFilter.NoProfile + majorVersion: 2 + minorVersion: 0 + } + + filterKeys: [ FilterKey { name: "renderingStyle"; value: "forward" } ] + + renderPasses: [ + RenderPass { + shaderProgram: ShaderProgram { + vertexShaderCode : loadSource("qrc:/Shaders/vert/RefTrans_Qt.vert") + fragmentShaderCode : loadSource("qrc:/Shaders/frag/RefTexRefColorFactor_Qt.frag") + } + renderStates: [ + + CullFace{mode:CullFace.Back}, + ScissorTest{ + left: 200; + bottom: 250; + width:winl.width-ddditem.x-100; + height: winl.height-100 + } + ] + } + ] + } + ] + } +} diff --git a/GUIModel/ACC/Stage.qml b/GUIModel/ACC/Stage.qml new file mode 100644 index 0000000..c8fe6c6 --- /dev/null +++ b/GUIModel/ACC/Stage.qml @@ -0,0 +1,891 @@ +/* + * Copyright (c) 2020,2021 Panasonic Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +import QtQuick 2.14 as Quick +import Qt3D.Core 2.14 +import Qt3D.Input 2.14 +import Qt3D.Render 2.14 +import Qt3D.Extras 2.14 +import Qt3D.Animation 2.14 + +Entity { + + id: dddroot + property alias material_sensorline: material_sensorline + property alias material_distance_base: material_distance_base + property alias material_distance_arrow: material_distance_arrow + property alias material_distance_set: material_distance_set + property alias material_distance_set_mid: material_distance_set_mid + property alias material_distance_set_near: material_distance_set_near + + + property alias trans_camera: trans_camera + property alias trans_other_car: trans_other_car + property alias trans_car: trans_car + property alias trans_road: trans_road + property alias trans_road_light: trans_road_light + property alias trans_sensorline: trans_sensorline + property alias trans_distance_base: trans_distance_base + property alias trans_distance_arrow: trans_distance_arrow + property alias trans_distance_set: trans_distance_set + property alias trans_distance_set_mid: trans_distance_set_mid + property alias trans_distance_set_near: trans_distance_set_near + + + + property int current_id: 0 + property int received_id: 0 + + property alias material_tbt_LF: material_tbt_LF + property alias material_tbt_L: material_tbt_L + property alias material_tbt_RF: material_tbt_RF + property alias material_tbt_R: material_tbt_R + property alias trans_tbt_LF: trans_tbt_LF + property alias trans_tbt_L: trans_tbt_L + property alias trans_tbt_RF: trans_tbt_RF + property alias trans_tbt_R: trans_tbt_R + + property alias material_tbt_shadow_LF: material_tbt_shadow_LF + property alias material_tbt_shadow_L: material_tbt_shadow_L + property alias material_tbt_shadow_RF: material_tbt_shadow_RF + property alias material_tbt_shadow_R: material_tbt_shadow_R + property alias trans_tbt_shadow_LF: trans_tbt_shadow_LF + property alias trans_tbt_shadow_L: trans_tbt_shadow_L + property alias trans_tbt_shadow_RF: trans_tbt_shadow_RF + property alias trans_tbt_shadow_R: trans_tbt_shadow_R + + Entity { + components: [ + trans_camera, + camera + ] + Camera { + id: camera + projectionType: CameraLens.PerspectiveProjection + fieldOfView: 44.09591363 + aspectRatio: 16 / 9 + nearPlane: 7 + farPlane : 30 + upVector: Qt.vector3d( 0.0, 1.0, 0.0 ) + position: trans_camera.translation + } + + Transform{ + id: trans_camera + property real posX: 0.0 + property real posY: 2.6 + property real posZ: 2.35 + + property real rotX: -8.29241 + property real rotY: 0.0 + property real rotZ: 0.0 + + translation:Qt.vector3d(posX, posY, posZ) + + rotationX:rotX + rotationY:rotY + rotationZ:rotZ + + scale3D:Qt.vector3d(0.01, 0.01, 0.01) + } + } + + components: [ + RenderSettings { + activeFrameGraph: ForwardRenderer { + clearColor: "transparent" + camera: camera + frustumCulling: true + } + renderPolicy: RenderSettings.OnDemand + } + ] + + Entity { + id : other_car + + components: [ + object_other_car, + trans_other_car, + material_other_car + ] + + Mesh { + id: object_other_car + source: "qrc:/3DModelData/car.obj" + } + + Transform_NextGen { + id: trans_other_car + default_px: 0.0 + default_py: 0.0 + default_pz: -21 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor_noAlpha{ + id: material_other_car + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 1.0 + + property url u_texture_name : "qrc:/3DModelTexture/uvmap_gray.jpg" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + + Entity { + id: mycar + + components: [ + object_car, + trans_car, + material_car + ] + + Mesh { + id: object_car + source: "qrc:/3DModelData/car.obj" + } + + Transform_NextGen { + id: trans_car + + default_px: 0.0 + default_py: 0.0 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor_noAlpha{ + id: material_car + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 1.0 + + property url u_texture_name : "qrc:/3DModelTexture/uvmap.jpg" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : road + + components: [ + object_road, + trans_road, + material_road + ] + + Mesh { + id: object_road + source: "qrc:/3DModelData/road.obj" + } + + Transform_NextGen { + id: trans_road + + default_px: 0.0 + default_py: 0.0 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor_noAlpha{ + id: material_road + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 1.0 + + property url u_texture_name : "qrc:/3DModelTexture/road.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + + } + } + + Entity { + id : road_light + + components: [ + object_road_light, + trans_road_light, + material_road_light + ] + + Mesh { + id: object_road_light + source: "qrc:/3DModelData/road_light.obj" + } + + Transform_NextGen { + id: trans_road_light + + default_px: 0.0 + default_py: 0.0 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor{ + id: material_road_light + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 1.0 + + property url u_texture_name : "qrc:/3DModelTexture/road_light.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : sensorline + + components: [ + object_sensorline, + trans_sensorline, + material_sensorline + ] + + Mesh { + id: object_sensorline + source: "qrc:/3DModelData/sensor_line.obj" + } + + Transform_NextGen { + id: trans_sensorline + + default_px: 0.0 + default_py: 0.01 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor{ + id: material_sensorline + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 1.0 + + property url u_texture_name : "qrc:/3DModelTexture/sensor_line.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_base + + components: [ + object_distance_base, + trans_distance_base, + material_distance_base + ] + + Mesh { + id: object_distance_base + source: "qrc:/3DModelData/distance_base.obj" + } + + Transform_NextGen { + id: trans_distance_base + + default_px: 0.0 + default_py: 0.03 + default_pz: 0.0 + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor{ + id: material_distance_base + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 1.0 + + property url u_texture_name : "qrc:/3DModelTexture/distance_base.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_arrow + + components: [ + object_distance_arrow, + trans_distance_arrow, + material_distance_arrow, + ] + + Mesh { + id: object_distance_arrow + source: "qrc:/3DModelData/distance_arrow.obj" + } + + Transform_NextGen { + id: trans_distance_arrow + + default_px: 0.0 + default_py: 0.035 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor{ + id: material_distance_arrow + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 1.0 + + property url u_texture_name : "qrc:/3DModelTexture/distance_arrow.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_set + + components: [ + object_distance_set, + trans_distance_set, + material_distance_set + ] + + Mesh { + id: object_distance_set + source: "qrc:/3DModelData/distance_set.obj" + } + + Transform_NextGen { + id: trans_distance_set + + default_px: 0.0 + default_py: 0.038 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor{ + id: material_distance_set + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0.0 + + property url u_texture_name : "qrc:/3DModelTexture/distance_set.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_set_mid + + components: [ + object_distance_set_mid, + trans_distance_set_mid, + material_distance_set_mid, + ] + + Mesh { + id: object_distance_set_mid + source: "qrc:/3DModelData/distance_set.obj" + } + + Transform_NextGen { + id: trans_distance_set_mid + + default_px: 0.0 + default_py: 0.043 + default_pz: 4.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor{ + id: material_distance_set_mid + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0.0 + + property url u_texture_name : "qrc:/3DModelTexture/distance_set.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_set_near + + components: [ + object_distance_set_near, + trans_distance_set_near, + material_distance_set_near + ] + + Mesh { + id: object_distance_set_near + source: "qrc:/3DModelData/distance_set.obj" + } + + Transform_NextGen { + id: trans_distance_set_near + + default_px: 0.0 + default_py: 0.048 + default_pz: 8.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor{ + id: material_distance_set_near + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0.0 + + property url u_texture_name : "qrc:/3DModelTexture/distance_set.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + + Entity { + id : distance_tbt_shadow_LF + property int current_id: parent.current_id + property real material_alpha: 0.0 + components: [object_tbt_shadow_LF,trans_tbt_shadow_LF,material_tbt_shadow_LF] + + Mesh { + id: object_tbt_shadow_LF + source: "qrc:/3DModelData/tbt_shadow.obj" + } + + Transform_NextGen { + id: trans_tbt_shadow_LF + + default_px: -1.0 + default_py: 0.1 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor_Tbt{ + id: material_tbt_shadow_LF + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0 + + property url u_texture_name : "qrc:/3DModelTexture/TbT_shadow_LF.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + Entity { + id : distance_tbt_shadow_L + property int current_id: parent.current_id + property real material_alpha: 0.0 + components: [object_tbt_shadow_L,trans_tbt_shadow_L,material_tbt_shadow_L] + + Mesh { + id: object_tbt_shadow_L + source: "qrc:/3DModelData/tbt_shadow.obj" + } + + Transform_NextGen { + id: trans_tbt_shadow_L + + default_px: -1.0 + default_py: 0.1 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor_Tbt{ + id: material_tbt_shadow_L + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0 + + property url u_texture_name : "qrc:/3DModelTexture/TbT_shadow_L.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_tbt_shadow_RF + property int current_id: parent.current_id + property real material_alpha: 0.0 + components: [object_tbt_shadow_RF,trans_tbt_shadow_RF,material_tbt_shadow_RF] + + Mesh { + id: object_tbt_shadow_RF + source: "qrc:/3DModelData/tbt_shadow.obj" + } + + Transform_NextGen { + id: trans_tbt_shadow_RF + + default_px: -1.0 + default_py: 0.1 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor_Tbt{ + id: material_tbt_shadow_RF + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0 + + property url u_texture_name : "qrc:/3DModelTexture/TbT_shadow_RF.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + Entity { + id : distance_tbt_shadow_R + property int current_id: parent.current_id + property real material_alpha: 0.0 + components: [object_tbt_shadow_R,trans_tbt_shadow_R,material_tbt_shadow_R] + + Mesh { + id: object_tbt_shadow_R + source: "qrc:/3DModelData/tbt_shadow.obj" + } + + Transform_NextGen { + id: trans_tbt_shadow_R + + default_px: -1.0 + default_py: 0.1 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + default_s : 1.0 + } + + Material_ColorFactor_Tbt{ + id: material_tbt_shadow_R + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0 + + property url u_texture_name : "qrc:/3DModelTexture/TbT_shadow_R.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_tbt_LF + property int current_id:parent.current_id + property real material_alpha: 0.0 + components: [object_tbt_LF,trans_tbt_LF,material_tbt_LF] + + Mesh { + id: object_tbt_LF + source: "qrc:/3DModelData/tbt.obj" + } + + Transform_NextGen { + id: trans_tbt_LF + + //-----init-----// + default_px: -1.0 + default_py: 0.5//0.11 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + scale_x : 1.0 + } + Material_ColorFactor_Tbt{ + id: material_tbt_LF + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0 + + property url u_texture_name : "qrc:/3DModelTexture/TbT_LF.png" + + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + Entity { + id : distance_tbt_L + property int current_id:parent.current_id + property real material_alpha: 0.0 + + components: [object_tbt_L,trans_tbt_L,material_tbt_L] + + Mesh { + id: object_tbt_L + source: "qrc:/3DModelData/tbt.obj" + } + + Transform_NextGen { + id: trans_tbt_L + + default_px: -1.0 + default_py: 0.5 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + scale_x : 1.0 + } + Material_ColorFactor_Tbt{ + id: material_tbt_L + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0 + + property url u_texture_name : "qrc:/3DModelTexture/TbT_L.png" + + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_tbt_RF + property int current_id:parent.current_id + property real material_alpha: 0.0 + + components: [object_tbt_RF,trans_tbt_RF,material_tbt_RF] + + Mesh { + id: object_tbt_RF + source: "qrc:/3DModelData/tbt.obj" + } + + Transform_NextGen { + id: trans_tbt_RF + + default_px: -1.0 + default_py: 0.5 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + scale_x : 1.0 + } + Material_ColorFactor_Tbt{ + id: material_tbt_RF + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0 + + property url u_texture_name : "qrc:/3DModelTexture/TbT_RF.png" + + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } + + Entity { + id : distance_tbt_R + property int current_id:parent.current_id + property real material_alpha: 0.0 + + components: [object_tbt_R,trans_tbt_R,material_tbt_R] + + Mesh { + id: object_tbt_R + source: "qrc:/3DModelData/tbt.obj" + } + + Transform_NextGen { + id: trans_tbt_R + + default_px: -1.0 + default_py: 0.5 + default_pz: 0.0 + + default_rx: 0.0 + default_ry: 0.0 + default_rz: 0.0 + + scale_x : 1.0 + } + Material_ColorFactor_Tbt{ + id: material_tbt_R + + property real u_red : 1.0 + property real u_green : 1.0 + property real u_blue : 1.0 + property real u_alpha : 0 + + property url u_texture_name : "qrc:/3DModelTexture/TbT_R.png" + + u_rgbFactor : Qt.rgba(u_red,u_green,u_blue, 1) + u_alphaFactor : u_alpha + u_Texture : u_texture_name + } + } +} diff --git a/GUIModel/ACC/Transform_NextGen.qml b/GUIModel/ACC/Transform_NextGen.qml new file mode 100644 index 0000000..34d9433 --- /dev/null +++ b/GUIModel/ACC/Transform_NextGen.qml @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2020,2021 Panasonic Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +import QtQuick 2.14 +import Qt3D.Core 2.14 +import Qt3D.Extras 2.14 + +Transform { + id: root + + //----- initial parameter -----// + property real default_px: 0.0 + property real default_py: 0.0 + property real default_pz: 0.0 + property real default_rx: 0.0 + property real default_ry: 0.0 + property real default_rz: 0.0 + property real default_s : 1.0 + + //----- for animation -----// + property real posi_x: default_px + property real posi_y: default_py + property real posi_z: default_pz + + property real roll_x: default_rx + property real roll_y: default_ry + property real roll_z: default_rz + + property real scale: default_s + + property real scale_x: scale + property real scale_y: scale + property real scale_z: scale + + scale3D: Qt.vector3d(scale_x,scale_y,scale_z) + rotationX: roll_x + rotationY: roll_y + rotationZ: roll_z + translation: Qt.vector3d(posi_x,posi_y,posi_z) +} |