First commit, added all projects

This commit is contained in:
2026-05-31 14:39:57 -04:00
commit d2930f7af5
247 changed files with 22376354 additions and 0 deletions
@@ -0,0 +1,54 @@
package gui;
import java.awt.Graphics2D;
import java.awt.geom.AffineTransform;
import java.util.Iterator;
import feature.StreetSegment;
import feature.StreetThemeLibrary;
import geography.Theme;
import geography.ThemeLibrary;
/**
* A cartographer for rendering street segments.
*/
public class StreetSegmentCartographer implements Cartographer<StreetSegment>
{
private ThemeLibrary themeLibrary = new StreetThemeLibrary();
/**
*
*/
public StreetSegmentCartographer()
{
}
@Override
public void paintHighlights(final CartographyDocument<StreetSegment> model, final Graphics2D g2,
final AffineTransform at)
{
StreetSegment segment;
Iterator<StreetSegment> it = model.highlighted();
while (it.hasNext())
{
segment = it.next();
Theme theme = themeLibrary.getHighlightTheme();
g2.setColor(theme.getColor());
g2.setStroke(theme.getStroke());
g2.draw(at.createTransformedShape(segment.getGeographicShape().getShape()));
}
}
@Override
public void paintShapes(final CartographyDocument<StreetSegment> model, final Graphics2D g2,
final AffineTransform at)
{
for (StreetSegment segment : model)
{
Theme theme = themeLibrary.getTheme(segment.getCode());
g2.setColor(theme.getColor());
g2.setStroke(theme.getStroke());
g2.draw(at.createTransformedShape(segment.getGeographicShape().getShape()));
}
}
}