mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-03 01:29:33 +00:00
Interleave for wind on path
This commit is contained in:
1 parent
772965736d
commit
a8891d2508
2 files changed
+12
-8
No files matched your search
+10
-6
@@ -153,6 +153,15 @@ public class WindFieldCanvasOverlay extends FullCanvasOverlay implements TimeLis
|
||||
|
||||
}
|
||||
|
||||
protected void drawScaledArrow(WindDTO windDTO, double angle, int index) {
|
||||
|
||||
double aWidth = Math.max(1., (windDTO.trueWindSpeedInMetersPerSecond/3.));
|
||||
double aLength = Math.max(10., (3.*windDTO.trueWindSpeedInMetersPerSecond));
|
||||
//logger.info("windspeed: "+windDTO.trueWindSpeedInMetersPerSecond+", aWidth: "+aWidth+", aLength: "+aLength);
|
||||
drawArrow(windDTO, angle, aLength, aWidth, index);
|
||||
|
||||
}
|
||||
|
||||
protected void drawWindField(final List<WindDTO> windDTOList) {
|
||||
clear();
|
||||
if (windDTOList != null && windDTOList.size() > 0) {
|
||||
@@ -160,13 +169,8 @@ public class WindFieldCanvasOverlay extends FullCanvasOverlay implements TimeLis
|
||||
int index = 0;
|
||||
while (windDTOIter.hasNext()) {
|
||||
WindDTO windDTO = windDTOIter.next();
|
||||
//int aWidth = (int) Math.max(1, Math.min(2, Math.round(windDTO.trueWindSpeedInMetersPerSecond)));
|
||||
double aWidth = Math.max(1., (windDTO.trueWindSpeedInMetersPerSecond/3.));
|
||||
double aLength = Math.max(10., (3.*windDTO.trueWindSpeedInMetersPerSecond));
|
||||
logger.info("windspeed: "+windDTO.trueWindSpeedInMetersPerSecond+", aWidth: "+aWidth+", aLength: "+aLength);
|
||||
DegreeBearingImpl dbi = new DegreeBearingImpl(windDTO.trueWindBearingDeg);
|
||||
drawArrow(windDTO, dbi.getRadians(), aLength, aWidth, ++index);
|
||||
|
||||
drawScaledArrow(windDTO, dbi.getRadians(), ++index);
|
||||
}
|
||||
String title = "Wind Field at " + windDTOList.size() + " points.";
|
||||
getCanvas().setTitle(title);
|
||||
|
||||
+2
-2
@@ -60,11 +60,11 @@ public class WindFieldGeneratorOscillationImpl extends WindFieldGeneratorImpl im
|
||||
int midPoint = ncol/2;
|
||||
for (int i = 0; i <= midPoint; ++i) {
|
||||
speed[i] = new KnotSpeedImpl(leftSpeed + i*(middleSpeed-leftSpeed)/(midPoint));
|
||||
logger.info("index: "+i+"speed: "+speed[i]);
|
||||
//logger.info("index: "+i+"speed: "+speed[i]);
|
||||
}
|
||||
for (int i = 1; i < ncol - midPoint; ++i) {
|
||||
speed[midPoint + i] = new KnotSpeedImpl(middleSpeed + i*(rightSpeed-middleSpeed)/(ncol - midPoint -1));
|
||||
logger.info("index: "+(midPoint+i)+"speed: "+speed[midPoint-1+i]);
|
||||
//logger.info("index: "+(midPoint+i)+"speed: "+speed[midPoint-1+i]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user