summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPeter Wu <lekensteyn@gmail.com>2014-01-17 18:41:26 +0100
committerPeter Wu <lekensteyn@gmail.com>2014-01-17 18:41:26 +0100
commit88f499c95bad12ed2d04e1e67ca2c94b7dff8b64 (patch)
treefe045c705a0827ba1b3baeed2f86af0dd4a4ff03 /src
parenta789954f7b9893c6bdd5ba824317cc2d09c7e56b (diff)
download2iv60-robots-88f499c95bad12ed2d04e1e67ca2c94b7dff8b64.tar.gz
Debug normalized curve lengths
Draw a cone showing every 5% of the track.
Diffstat (limited to 'src')
-rw-r--r--src/RaceTrack.java31
1 files changed, 23 insertions, 8 deletions
diff --git a/src/RaceTrack.java b/src/RaceTrack.java
index 0362f9a..5d531f4 100644
--- a/src/RaceTrack.java
+++ b/src/RaceTrack.java
@@ -191,6 +191,25 @@ class RaceTrack extends BetterBase {
"Multiple of three control points required";
}
drawTrack();
+
+ // debugging purposes: show track center and control points
+ if (debugBezierTracks && selectedControlPoints != null) {
+ drawCenterLineTrack(selectedControlPoints);
+
+ // show a marker every 5% of the track
+ double steps = 20;
+ gl.glPointSize(8);
+ for (int i = 0; i < steps; i++) {
+ // alternate colors
+ setColor(i % 2 == 0 ? Color.MAGENTA : Color.PINK);
+ Vector p = getPoint(i / steps);
+ // draw a marker
+ gl.glPushMatrix();
+ gl.glTranslated(p.x(), p.y(), p.z());
+ glut.glutSolidCone(0.4, 1.5, 8, 16);
+ gl.glPopMatrix();
+ }
+ }
}
/**
@@ -408,11 +427,6 @@ class RaceTrack extends BetterBase {
point_B = point_D;
point_G = point_H;
}
-
- // debugging purposes: show track center and control points
- if (debugBezierTracks && selectedControlPoints != null) {
- drawCenterLineTrack(selectedControlPoints);
- }
}
/**
@@ -428,10 +442,11 @@ class RaceTrack extends BetterBase {
// number of "u" units per segment
double segment_size = 1.0 / number_of_segments;
+ gl.glPushMatrix();
// put lines and dots above track
- gl.glTranslated(0, 0, 1);
+ gl.glTranslated(0, 0, 0.5);
- gl.glLineWidth(5);
+ gl.glLineWidth(2);
gl.glBegin(GL_LINE_STRIP);
for (double i = 0; i <= SEGMENTS; ++i) {
double u = i / SEGMENTS;
@@ -460,7 +475,7 @@ class RaceTrack extends BetterBase {
gl.glEnd();
// restore position
- gl.glTranslated(0, 0, -1);
+ gl.glPopMatrix();
}
/**