Browse Source

modify cut configuration

master
xiaowuler 3 years ago
parent
commit
9667057ec4
  1. 10
      04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/domain/CommonBlock.java
  2. 4
      04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/domain/CutConfiguration.java
  3. 1
      04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/domain/Radial.java
  4. 4
      04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/resolver/RadarReader.java

10
04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/domain/CommonBlock.java

@ -17,19 +17,19 @@ public class CommonBlock {
private GenericHeader genericHeader;
private SiteConfiguration siteConfiguration;
private TaskConfiguration taskConfiguration;
private List<ScanConfiguration> scanConfigurations;
private List<CutConfiguration> cutConfigurations;
public CommonBlock(ICustomInputStream ICustomInputStream) throws IOException {
this.genericHeader = new GenericHeader(ICustomInputStream);
this.siteConfiguration = new SiteConfiguration(ICustomInputStream);
this.taskConfiguration = new TaskConfiguration(ICustomInputStream);
addScanConfigurations(ICustomInputStream);
addCutConfigurations(ICustomInputStream);
}
private void addScanConfigurations(ICustomInputStream ICustomInputStream) throws IOException {
this.scanConfigurations = new ArrayList<>(taskConfiguration.getCutNumber());
private void addCutConfigurations(ICustomInputStream ICustomInputStream) throws IOException {
this.cutConfigurations = new ArrayList<>(taskConfiguration.getCutNumber());
for(int index = 0; index < taskConfiguration.getCutNumber(); index++){
scanConfigurations.add(new ScanConfiguration(ICustomInputStream));
cutConfigurations.add(new CutConfiguration(ICustomInputStream));
}
}
}

4
04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/domain/ScanConfiguration.java → 04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/domain/CutConfiguration.java

@ -11,7 +11,7 @@ import com.xiaowuler.radarresolver.custom.ICustomInputStream;
* @createTime: 2022-03-09 10:47
*/
@Data
public class ScanConfiguration {
public class CutConfiguration {
private int processMode;
private int waveForm;
private float PRF1;
@ -57,7 +57,7 @@ public class ScanConfiguration {
private short groundClutterFilterWindow;
private byte[] reserved;
public ScanConfiguration(ICustomInputStream ICustomInputStream) throws IOException {
public CutConfiguration(ICustomInputStream ICustomInputStream) throws IOException {
this.processMode = ICustomInputStream.readInt();
this.waveForm = ICustomInputStream.readInt();
this.PRF1 = ICustomInputStream.readFloat();

1
04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/domain/Radial.java

@ -15,6 +15,7 @@ import com.xiaowuler.radarresolver.custom.ICustomInputStream;
@Data
public class Radial {
private RadialHeader radialHeader;
private List<MomentBlock> momentBlocks;

4
04.系统编码/03.radar-resolver/src/main/java/com/xiaowuler/radarresolver/weather/resolver/RadarReader.java

@ -64,14 +64,14 @@ public class RadarReader {
}
public List<List<double[]>> getCoordinate(){
ScanConfiguration scanConfiguration = radarBlock.getCommonBlock().getScanConfigurations().get(0);
CutConfiguration cutConfiguration = radarBlock.getCommonBlock().getCutConfigurations().get(0);
List<Radial> radials = radarBlock.getRadialBlock().getRadials().stream().filter(r -> r.getRadialHeader().getElevationNumber() == 1).collect(Collectors.toList());
List<List<double[]>> result = new ArrayList<>(radials.size());
for(Radial radial : radials){
double[] values = radial.getMomentBlocks().get(0).getMomentData().getData();
List<double[]> rows = new ArrayList<>(values.length);
for(int index = 0, len = values.length; index < len; index ++){
rows.add(calcLonLat((index + 1) * scanConfiguration.getLogResolution(), radial.getRadialHeader().getAzimuth(), radial.getRadialHeader().getElevation(),
rows.add(calcLonLat((index + 1) * cutConfiguration.getLogResolution(), radial.getRadialHeader().getAzimuth(), radial.getRadialHeader().getElevation(),
radarBlock.getCommonBlock().getSiteConfiguration().getLongitude(), radarBlock.getCommonBlock().getSiteConfiguration().getLatitude()));
}
result.add(rows);

Loading…
Cancel
Save