|
@@ -17,11 +17,14 @@ import com.fdkk.fdkkmeta.service.BreakpointsService;
|
|
|
import com.fdkk.fdkkmeta.service.MoveFrameService;
|
|
|
import com.fdkk.fdkkmeta.service.UserService;
|
|
|
import com.fdkk.fdkkmeta.service.RotateFrameService;
|
|
|
+import com.fdkk.fdkkmeta.util.ProtoJsonUtils;
|
|
|
+import com.google.protobuf.util.JsonFormat;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
|
|
|
+import java.io.IOException;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
|
|
@@ -217,7 +220,7 @@ public class UpdateFrameMetaTask {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void createDefaultFrameMetadata(UserEntity user){
|
|
|
+ private void createDefaultFrameMetadata(UserEntity user) throws IOException {
|
|
|
String[] traceIds = new String[1];
|
|
|
traceIds[0] = "";
|
|
|
JSONArray actionResponses = new JSONArray();
|
|
@@ -235,30 +238,29 @@ public class UpdateFrameMetaTask {
|
|
|
AngleUe4 cameraAngle = sceneGrpcService.createAngle(cameraAnglePO.getPitch(),cameraAnglePO.getYaw(),cameraAnglePO.getRoll());
|
|
|
Space camera = sceneGrpcService.createSpace(cameraPosition,cameraAngle);
|
|
|
|
|
|
- MetaDataFramePO metaDataFramePO = new MetaDataFramePO();
|
|
|
- metaDataFramePO.setTraceIds(traceIds);
|
|
|
- metaDataFramePO.setVehicle(null);
|
|
|
+ MetaDataFrameReply.Builder builder = MetaDataFrameReply.newBuilder();
|
|
|
+ for(int i=0;i<traceIds.length;++i){
|
|
|
+ builder.addTraceIds(traceIds[i]);
|
|
|
+ }
|
|
|
State playerState = sceneGrpcService.createPlayerState2(player,camera,playerPt);
|
|
|
|
|
|
RenderInfo renderInfo = sceneGrpcService.createRenderInfo();
|
|
|
UserState userState = sceneGrpcService.createUserState( user.getUserId(), playerState, renderInfo, null);
|
|
|
|
|
|
+ builder.addNewUserStates(userState);
|
|
|
+
|
|
|
+ builder.setGetStateType(0);
|
|
|
+ builder.setCode(200);
|
|
|
+ builder.setMsg("ok");
|
|
|
//newUserStates
|
|
|
- UserState[] newUserStates = new UserState[1];
|
|
|
- newUserStates[0] = userState;
|
|
|
- metaDataFramePO.setNewUserStates(newUserStates);
|
|
|
- metaDataFramePO.setActionResponses(actionResponses);
|
|
|
- metaDataFramePO.setGetStateType(0);
|
|
|
- metaDataFramePO.setCode(0);
|
|
|
- metaDataFramePO.setMsg("");
|
|
|
|
|
|
String mediaSrc = metaConfig.getVideoFramePath()+"/"+"0000000001"+"/"+rotateFrameEntity.getBreakPointId()+"/"+rotateFrameEntity.getDirectory()+"/"+rotateFrameEntity.getFileName();
|
|
|
- metaDataFramePO.setMediaSrc(mediaSrc);
|
|
|
+ builder.setMediaSrc(mediaSrc);
|
|
|
|
|
|
- redisCache.setJsonStrObject("updateFrameMetadata:"+user.getUserId(), metaDataFramePO);
|
|
|
+ redisCache.lLeftPush("updateFrameMetadata:"+user.getUserId(), ProtoJsonUtils.toJson(builder));
|
|
|
}
|
|
|
|
|
|
- private void createMoveFrameMetadata(String user_id,AnglePO playerAngle,PointPO playerPosition,MoveFrameEntity moveFrameEntity,String traceId){
|
|
|
+ private void createMoveFrameMetadata(String user_id,AnglePO playerAngle,PointPO playerPosition,MoveFrameEntity moveFrameEntity,String traceId) throws IOException {
|
|
|
String[] traceIds = new String[1];
|
|
|
traceIds[0] = traceId;
|
|
|
JSONArray actionResponses = new JSONArray();
|
|
@@ -276,31 +278,31 @@ public class UpdateFrameMetaTask {
|
|
|
AngleUe4 cameraAngle = sceneGrpcService.createAngle(cameraAnglePO.getPitch(),cameraAnglePO.getYaw(),cameraAnglePO.getRoll());
|
|
|
Space camera = sceneGrpcService.createSpace(cameraPosition,cameraAngle);
|
|
|
|
|
|
- MetaDataFramePO metaDataFramePO = new MetaDataFramePO();
|
|
|
- metaDataFramePO.setTraceIds(traceIds);
|
|
|
- metaDataFramePO.setVehicle(null);
|
|
|
+
|
|
|
+ MetaDataFrameReply.Builder builder = MetaDataFrameReply.newBuilder();
|
|
|
+ for(int i=0;i<traceIds.length;++i){
|
|
|
+ builder.addTraceIds(traceIds[i]);
|
|
|
+ }
|
|
|
+
|
|
|
State playerState = sceneGrpcService.createPlayerState2(player,camera,playerPt);
|
|
|
|
|
|
RenderInfo renderInfo = sceneGrpcService.createRenderInfo();
|
|
|
UserState userState = sceneGrpcService.createUserState( user_id, playerState, renderInfo, null);
|
|
|
|
|
|
- //newUserStates
|
|
|
-// JSONArray newUserStates = new JSONArray();
|
|
|
-// newUserStates.add(userState);
|
|
|
- UserState[] newUserStates = new UserState[1];
|
|
|
- newUserStates[0] = userState;
|
|
|
- metaDataFramePO.setNewUserStates(newUserStates);
|
|
|
- metaDataFramePO.setActionResponses(actionResponses);
|
|
|
- metaDataFramePO.setGetStateType(0);
|
|
|
- metaDataFramePO.setCode(0);
|
|
|
- metaDataFramePO.setMsg("");
|
|
|
+
|
|
|
+ builder.addNewUserStates(userState);
|
|
|
+
|
|
|
+ builder.setGetStateType(0);
|
|
|
+ builder.setCode(200);
|
|
|
+ builder.setMsg("ok");
|
|
|
+
|
|
|
|
|
|
String mediaSrc = metaConfig.getVideoFramePath()+"/"+"0000000001"+"/"+moveFrameEntity.getStartBreakPointId()+"/"+moveFrameEntity.getDirectory()+"/"+moveFrameEntity.getFileName();
|
|
|
- metaDataFramePO.setMediaSrc(mediaSrc);
|
|
|
- redisCache.setJsonStrObject("updateFrameMetadata:"+user_id,metaDataFramePO);
|
|
|
+ builder.setMediaSrc(mediaSrc);
|
|
|
+ redisCache.lLeftPush("updateFrameMetadata:"+user_id,ProtoJsonUtils.toJson(builder));
|
|
|
}
|
|
|
|
|
|
- private void createRotateFrameMetadata(UserEntity user,List<ActionPO> rotateJoystickList,int firstActionType){
|
|
|
+ private void createRotateFrameMetadata(UserEntity user,List<ActionPO> rotateJoystickList,int firstActionType) throws IOException {
|
|
|
JSONArray actionResponses = new JSONArray();
|
|
|
String[] traceIds = new String[rotateJoystickList.size()];
|
|
|
if(rotateJoystickList.size()>0){
|
|
@@ -330,25 +332,24 @@ public class UpdateFrameMetaTask {
|
|
|
AngleUe4 cameraAngle = sceneGrpcService.createAngle(cameraAnglePO.getPitch(),cameraAnglePO.getYaw(),cameraAnglePO.getRoll());
|
|
|
Space camera = sceneGrpcService.createSpace(cameraPosition,cameraAngle);
|
|
|
|
|
|
- MetaDataFramePO metaDataFramePO = new MetaDataFramePO();
|
|
|
- metaDataFramePO.setTraceIds(traceIds);
|
|
|
- metaDataFramePO.setVehicle(null);
|
|
|
+
|
|
|
+ MetaDataFrameReply.Builder builder = MetaDataFrameReply.newBuilder();
|
|
|
+ for(int i=0;i<traceIds.length;++i){
|
|
|
+ builder.addTraceIds(traceIds[i]);
|
|
|
+ }
|
|
|
State playerState = sceneGrpcService.createPlayerState2(player,camera,playerPt);
|
|
|
|
|
|
RenderInfo renderInfo = sceneGrpcService.createRenderInfo();
|
|
|
UserState userState = sceneGrpcService.createUserState( user.getUserId(), playerState, renderInfo, null);
|
|
|
|
|
|
- //newUserStates
|
|
|
-// JSONArray newUserStates = new JSONArray();
|
|
|
-//// newUserStates.add(userState);
|
|
|
- UserState[] newUserStates = new UserState[1];
|
|
|
- newUserStates[0] = userState;
|
|
|
- metaDataFramePO.setNewUserStates(newUserStates);
|
|
|
- metaDataFramePO.setActionResponses(actionResponses);
|
|
|
- metaDataFramePO.setGetStateType(0);
|
|
|
- metaDataFramePO.setCode(0);
|
|
|
- metaDataFramePO.setMsg("");
|
|
|
- redisCache.setJsonStrObject("updateFrameMetadata:"+user.getUserId(),metaDataFramePO);
|
|
|
+
|
|
|
+ builder.addNewUserStates(userState);
|
|
|
+
|
|
|
+ builder.setGetStateType(0);
|
|
|
+ builder.setCode(200);
|
|
|
+ builder.setMsg("ok");
|
|
|
+
|
|
|
+ redisCache.lLeftPush("updateFrameMetadata:"+user.getUserId(),ProtoJsonUtils.toJson(builder));
|
|
|
|
|
|
//更新user表
|
|
|
user.setFrameId(lastActionPO.getFrameId());
|