|
@@ -174,7 +174,7 @@ public class TGdbhGdServiceImpl implements ITGdbhGdService {
|
|
|
TGdbhFlightDto queryFlightDto = new TGdbhFlightDto();
|
|
|
queryFlightDto.setBatch(bathDto.getBatch());
|
|
|
List<TGdbhFlightDto> flightDtoList = tGdbhFlightMapper.selectList(queryFlightDto);
|
|
|
- writeFpf(flightDtoList, uploadFilePath + fpfPath);
|
|
|
+ writeFpf(tGdbhFlightBatchDto, flightDtoList, uploadFilePath + fpfPath);
|
|
|
bathDto.setFpf(fpfPath);
|
|
|
bathDto.setFlightDtoList(flightDtoList);
|
|
|
}
|
|
@@ -183,70 +183,88 @@ public class TGdbhGdServiceImpl implements ITGdbhGdService {
|
|
|
}
|
|
|
|
|
|
|
|
|
- private void writeFpf(List<TGdbhFlightDto> flightDtoList, String filePathString) {
|
|
|
+ private void writeFpf(TGdbhFlightBatchDto tGdbhFlightBatchDto, List<TGdbhFlightDto> flightDtoList, String filePathString) {
|
|
|
+ String speed = "10";
|
|
|
+ String heading = "0.000001";
|
|
|
+ String tilt = "0.100000000000000006";
|
|
|
+ if (null != tGdbhFlightBatchDto) {
|
|
|
+ if (StringUtils.isNotEmpty(tGdbhFlightBatchDto.getTilt())) {
|
|
|
+ tilt = tGdbhFlightBatchDto.getTilt();
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(tGdbhFlightBatchDto.getHeading())) {
|
|
|
+ heading = tGdbhFlightBatchDto.getHeading();
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotEmpty(tGdbhFlightBatchDto.getSpeed())) {
|
|
|
+ speed = tGdbhFlightBatchDto.getSpeed();
|
|
|
+ }
|
|
|
+ }
|
|
|
File filePath = new File(filePathString);
|
|
|
- if (!filePath.exists()) {
|
|
|
- try (BufferedWriter writer = new BufferedWriter(new FileWriter(filePath))) {
|
|
|
- writer.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("<SceneRoute xmlns=\"http://www.supermap.com.cn/ugc60\">");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("<route name=\"飞行路线_1\" speed=\"10\" lineType=\"0\" showroutestop=\"True\" showrouteline=\"True\" altitudefree=\"False\" headingfree=\"False\" tiltfree=\"False\" flycircle=\"False\" alongline=\"False\">");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("<style>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("<geostyle3d>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("<linecolor>RGBA(147,112,219,100)</linecolor>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("<linewidth>2</linewidth>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("<altitudeMode>Absolute</altitudeMode>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("<bottomAltitude>0.00</bottomAltitude>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("</geostyle3d>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- writer.write("</style>");
|
|
|
- writer.newLine(); // 写入换行
|
|
|
- for (int i = 0; i < flightDtoList.size(); i++) {
|
|
|
- TGdbhFlightDto dto = flightDtoList.get(i);
|
|
|
- String fpf = "<routestop name=\"" + dto.getPhoto_name() + "\" speed=\"0\" excluded=\"False\" viewType=\"camera\">" +
|
|
|
- "<camera>" +
|
|
|
- "<longitude>" + dto.getLongitude() + "</longitude>" +
|
|
|
- "<latitude>" + dto.getLatitude() + "</latitude>" +
|
|
|
- "<altitude>" + dto.getHeight() + "</altitude>" +
|
|
|
- "<heading>0.000001</heading>" +
|
|
|
- "<tilt>0.100000000000000006</tilt>" +
|
|
|
- "<altitudeMode>Absolute</altitudeMode>" +
|
|
|
- "</camera>" +
|
|
|
- "<style>" +
|
|
|
- "<geostyle3d>" +
|
|
|
- "<icon/>" +
|
|
|
- "<markersize>4.8</markersize>" +
|
|
|
- "<markericonscale>1</markericonscale>" +
|
|
|
- "<markercolor>RGBA(255,255,255,255)</markercolor>" +
|
|
|
- "</geostyle3d>" +
|
|
|
- "</style>" +
|
|
|
- "<setting>" +
|
|
|
- "<turnTime>1.5</turnTime>" +
|
|
|
- "<turnSlowly>False</turnSlowly>" +
|
|
|
- "<stopPlayMode>StopPause</stopPlayMode>" +
|
|
|
- "<autoPlay>False</autoPlay>" +
|
|
|
- "<pauseTime>0</pauseTime>" +
|
|
|
- "<angularSpeed>1</angularSpeed>" +
|
|
|
- "</setting>" +
|
|
|
- "</routestop>";
|
|
|
- writer.write(fpf);
|
|
|
- writer.newLine(); // 写入换行
|
|
|
+ try (BufferedWriter writer = new BufferedWriter(new FileWriter(filePath))) {
|
|
|
+ writer.write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("<SceneRoute xmlns=\"http://www.supermap.com.cn/ugc60\">");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("<route name=\"飞行路线_1\" speed=\"" + speed + "\" lineType=\"0\" showroutestop=\"True\" showrouteline=\"True\" altitudefree=\"False\" headingfree=\"False\" tiltfree=\"False\" flycircle=\"False\" alongline=\"False\">");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("<style>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("<geostyle3d>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("<linecolor>RGBA(147,112,219,100)</linecolor>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("<linewidth>2</linewidth>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("<altitudeMode>Absolute</altitudeMode>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("<bottomAltitude>0.00</bottomAltitude>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("</geostyle3d>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ writer.write("</style>");
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
+ for (int i = 0; i < flightDtoList.size(); i++) {
|
|
|
+ TGdbhFlightDto dto = flightDtoList.get(i);
|
|
|
+ String height = dto.getHeight();
|
|
|
+ if (null != tGdbhFlightBatchDto) {
|
|
|
+ if (StringUtils.isNotEmpty(tGdbhFlightBatchDto.getHeight())) {
|
|
|
+ height = tGdbhFlightBatchDto.getHeight();
|
|
|
+ }
|
|
|
}
|
|
|
- writer.write("</route>");
|
|
|
- writer.newLine(); // 写入换
|
|
|
- writer.write("</SceneRoute>");
|
|
|
- System.out.println("File written successfully!");
|
|
|
- } catch (IOException e) {
|
|
|
- System.err.println("Error writing file: " + e.getMessage());
|
|
|
+ String fpf = "<routestop name=\"" + dto.getPhoto_name() + "\" speed=\"0\" excluded=\"False\" viewType=\"camera\">" +
|
|
|
+ "<camera>" +
|
|
|
+ "<longitude>" + dto.getLongitude() + "</longitude>" +
|
|
|
+ "<latitude>" + dto.getLatitude() + "</latitude>" +
|
|
|
+ "<altitude>" + height + "</altitude>" +
|
|
|
+ "<heading>" + heading + "</heading>" +
|
|
|
+ "<tilt>" + tilt + "</tilt>" +
|
|
|
+ "<altitudeMode>Absolute</altitudeMode>" +
|
|
|
+ "</camera>" +
|
|
|
+ "<style>" +
|
|
|
+ "<geostyle3d>" +
|
|
|
+ "<icon/>" +
|
|
|
+ "<markersize>4.8</markersize>" +
|
|
|
+ "<markericonscale>1</markericonscale>" +
|
|
|
+ "<markercolor>RGBA(255,255,255,255)</markercolor>" +
|
|
|
+ "</geostyle3d>" +
|
|
|
+ "</style>" +
|
|
|
+ "<setting>" +
|
|
|
+ "<turnTime>1.5</turnTime>" +
|
|
|
+ "<turnSlowly>False</turnSlowly>" +
|
|
|
+ "<stopPlayMode>StopPause</stopPlayMode>" +
|
|
|
+ "<autoPlay>False</autoPlay>" +
|
|
|
+ "<pauseTime>0</pauseTime>" +
|
|
|
+ "<angularSpeed>1</angularSpeed>" +
|
|
|
+ "</setting>" +
|
|
|
+ "</routestop>";
|
|
|
+ writer.write(fpf);
|
|
|
+ writer.newLine(); // 写入换行
|
|
|
}
|
|
|
+ writer.write("</route>");
|
|
|
+ writer.newLine(); // 写入换
|
|
|
+ writer.write("</SceneRoute>");
|
|
|
+ System.out.println("File written successfully!");
|
|
|
+ } catch (IOException e) {
|
|
|
+ System.err.println("Error writing file: " + e.getMessage());
|
|
|
}
|
|
|
}
|
|
|
|