当前位置: 首页>>代码示例>>Java>>正文


Java WaypointPainter.setRenderer方法代码示例

本文整理汇总了Java中org.jdesktop.swingx.mapviewer.WaypointPainter.setRenderer方法的典型用法代码示例。如果您正苦于以下问题:Java WaypointPainter.setRenderer方法的具体用法?Java WaypointPainter.setRenderer怎么用?Java WaypointPainter.setRenderer使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.jdesktop.swingx.mapviewer.WaypointPainter的用法示例。


在下文中一共展示了WaypointPainter.setRenderer方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: hDrawButtonActionPerformed

import org.jdesktop.swingx.mapviewer.WaypointPainter; //导入方法依赖的package包/类
/**
 * Draws the Waypoints on the map that are sized and colored according to
 * the provided hubness information. Larger circles correspond to larger
 * hubs in the data and the color corresponds to whether their influence is
 * beneficial or detrimental on the analysis. Red coloring corresponds to
 * high bad hubness.
 *
 * @param evt ActionEvent object.
 */
private void hDrawButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_hDrawButtonActionPerformed
    // Initialize the waypoints.
    Set<Waypoint> waypoints = new HashSet<>(latitudeLongitudeData.size());
    for (int i = 0; i < latitudeLongitudeData.size(); i++) {
        waypoints.add(new SensorWayPoint(
                latitudeLongitudeData.data.get(i).fAttr[0],
                -latitudeLongitudeData.data.get(i).fAttr[1],
                hubnessArray[i],
                badHubnessArray[i]));
    }
    // Create a WaypointPainter to draw the points.
    WaypointPainter painter = new WaypointPainter();
    painter.setWaypoints(waypoints);
    painter.setRenderer(new WaypointRenderer() {
        @Override
        public boolean paintWaypoint(Graphics2D g, JXMapViewer map,
                Waypoint wp) {
            SensorWayPoint waypoint = (SensorWayPoint) wp;
            float darkRange = 0.25f;
            float redRange = 0.5f;
            float greenRange = 0.5f;
            // Calculate the badness coefficient that will be used to
            // determine the Waypoint color in the visualization.
            float badnessCoefficient;
            if (maxBadHubness != minBadHubness) {
                badnessCoefficient =
                        (waypoint.getBadHubness() - minBadHubness)
                        / (maxBadHubness - minBadHubness);
            } else {
                badnessCoefficient = 0;
            }
            float r = badnessCoefficient * darkRange
                    + badnessCoefficient * redRange;
            float gr = badnessCoefficient * darkRange
                    + (1 - badnessCoefficient) * greenRange;
            float b = badnessCoefficient * darkRange;
            Color currColor = new Color(r, gr, b);
            // Get the zoom level.
            int zLevel = jXMapKit1.getMainMap().getZoom();
            // Determine the radius according the the relative hubness
            // score.
            int radius = (int) ((((waypoint.getHubness() - minHubness)
                    / (maxHubness - minHubness)) * (radiusMax - radiusMin))
                    + radiusMin);
            if (zLevel < 14 && zLevel >= 12) {
                radius += 4;
            } else if (zLevel < 12 && zLevel >= 10) {
                radius += 8;
            } else if (zLevel < 10) {
                radius += 12;
            }
            g.setColor(currColor);
            g.fillOval(-radius, -radius, 2 * radius, 2 * radius);
            return true;
        }
    });
    jXMapKit1.getMainMap().setOverlayPainter(painter);
}
 
开发者ID:datapoet,项目名称:hubminer,代码行数:68,代码来源:GeospatialSensorHubnessDrawer.java

示例2: init

import org.jdesktop.swingx.mapviewer.WaypointPainter; //导入方法依赖的package包/类
private void init(Track track) {
	Segmenter segmenter = this.segmentationUnit == null ? Segmenter.NULL_SEGMENTER
			: Segmenters.getSegmenter(this.segmentationUnit);

	this.track = segmenter.segment(checkNotNull(track, "Track is null")); //$NON-NLS-1$
	Theme trackTheme = theme;

	this.waypointPainter = new SegmentBorderWaypointPainter(this.track,
			this.segmentationUnit);

	this.waypointPainter.setRenderer(new WaypointRendererDelegate(
			createWaypointRenderers(trackTheme)));

	Font font = new Font(Font.SANS_SERIF, 0, 12);
	List<Segment> activeSegment = this.activeSegment == null ? Collections
			.<Segment> emptyList() : Collections
			.singletonList(this.activeSegment);

	List<Painter<JXMapViewer>> painters = Lists.newArrayList();
	int cnt = 0;
	for (AdditonalTrackInfo adti : this.additionalTracks) {
		Track addTrack = segmenter.segment(adti.getTrack());
		WaypointPainter<JXMapViewer> painter = new SegmentBorderWaypointPainter(
				addTrack, this.segmentationUnit);
		painter.setRenderer(new WaypointRendererDelegate(proxyAll(
				adti.getXoffset(), adti.getYoffset(),
				createWaypointRenderers(adti.getTheme()))));
		painters.addAll(ImmutableList.of(
				new OffsetPainterDelegate(new TrackOutlinePainter(addTrack,
						adti.getTheme(), stroke), adti.getXoffset(), adti
						.getYoffset()),
				new OffsetPainterDelegate(new TrackPainter(addTrack, adti
						.getTheme(), stroke), adti.getXoffset(), adti
						.getYoffset()),
				new OffsetPainterDelegate(new HighlightTrackPainter(
						this.highlighter.segment(addTrack),
						adti.getTheme(), stroke), adti.getXoffset(), adti
						.getYoffset()),
				painter,
				new OffsetPainterDelegate(new HighlightTrackPainter(
						new DefaultTrack(track.getId(),
								track.getMetadata(), track.getWaypoints(),
								activeSegment, track.getStatistics()), adti
								.getTheme(), stroke), adti.getXoffset(),
						adti.getYoffset()), painter));
		if (this.infoBoxEnabled) {
			painters.add(new OffsetPainterDelegate(new InfoBoxPainter(
					addTrack, adti.getTheme(), font), 0, (++cnt) * 25));
		}

	}

	painters.addAll(ImmutableList.of(
			new TrackOutlinePainter(this.track, trackTheme, stroke),
			new TrackPainter(this.track, trackTheme, stroke),
			new MarkedWaypointPainter(this.dsf, track),
			new HighlightTrackPainter(this.highlighter.segment(this.track),
					trackTheme, stroke),
			this.waypointPainter,
			new HighlightTrackPainter(new DefaultTrack(track.getId(), track
					.getMetadata(), track.getWaypoints(), activeSegment,
					track.getStatistics()), trackTheme, stroke),
			this.waypointPainter));
	if (this.infoBoxEnabled) {
		painters.add(new InfoBoxPainter(this.track, trackTheme, font));
	}

	this.mapKit.getMainMap().setOverlayPainter(
			new StackedPainter<JXMapViewer>(Orderings.classTypeOrdering(
					ImmutableList.of(TrackOutlinePainter.class,
							TrackPainter.class,
							HighlightTrackPainter.class,
							WaypointPainter.class,
							SegmentBorderWaypointPainter.class,
							InfoBoxPainter.class)).sortedCopy(painters)));
}
 
开发者ID:pfichtner,项目名称:jrunalyzer,代码行数:77,代码来源:MapViewPlugin.java

示例3: main

import org.jdesktop.swingx.mapviewer.WaypointPainter; //导入方法依赖的package包/类
/**
 * @param args the program args (ignored)
 */
public static void main(String[] args)
{
	// Create a TileFactoryInfo for Virtual Earth
	TileFactoryInfo info = new VirtualEarthTileFactoryInfo(VirtualEarthTileFactoryInfo.MAP);
	DefaultTileFactory tileFactory = new DefaultTileFactory(info);
	tileFactory.setThreadPoolSize(8);

	// Setup local file cache
	File cacheDir = new File(System.getProperty("user.home") + File.separator + ".jxmapviewer2");
	LocalResponseCache.installResponseCache(info.getBaseURL(), cacheDir, false);

	// Setup JXMapViewer
	JXMapViewer mapViewer = new JXMapViewer();
	mapViewer.setTileFactory(tileFactory);

	GeoPosition frankfurt = new GeoPosition(50,  7, 0, 8, 41, 0);
	GeoPosition wiesbaden = new GeoPosition(50,  5, 0, 8, 14, 0);
	GeoPosition mainz     = new GeoPosition(50,  0, 0, 8, 16, 0);
	GeoPosition darmstadt = new GeoPosition(49, 52, 0, 8, 39, 0);
	GeoPosition offenbach = new GeoPosition(50,  6, 0, 8, 46, 0);

	// Set the focus
	mapViewer.setZoom(10);
	mapViewer.setAddressLocation(frankfurt);

	// Add interactions
	MouseInputListener mia = new PanMouseInputListener(mapViewer);
	mapViewer.addMouseListener(mia);
	mapViewer.addMouseMotionListener(mia);
	mapViewer.addMouseListener(new CenterMapListener(mapViewer));
	mapViewer.addMouseWheelListener(new ZoomMouseWheelListenerCenter(mapViewer));
	mapViewer.addKeyListener(new PanKeyListener(mapViewer));

	// Create waypoints from the geo-positions
	Set<MyWaypoint> waypoints = new HashSet<MyWaypoint>(Arrays.asList(
			new MyWaypoint("F", Color.ORANGE, frankfurt),
			new MyWaypoint("W", Color.CYAN, wiesbaden),
			new MyWaypoint("M", Color.GRAY, mainz),
			new MyWaypoint("D", Color.MAGENTA, darmstadt),
			new MyWaypoint("O", Color.GREEN, offenbach)));

	// Create a waypoint painter that takes all the waypoints
	WaypointPainter<MyWaypoint> waypointPainter = new WaypointPainter<MyWaypoint>();
	waypointPainter.setWaypoints(waypoints);
	waypointPainter.setRenderer(new FancyWaypointRenderer());

	mapViewer.setOverlayPainter(waypointPainter);

	// Display the viewer in a JFrame
	JFrame frame = new JFrame("JXMapviewer2 Example 4");
	frame.getContentPane().add(mapViewer);
	frame.setSize(800, 600);
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.setVisible(true);
}
 
开发者ID:klamann,项目名称:maps4cim,代码行数:59,代码来源:Sample4.java


注:本文中的org.jdesktop.swingx.mapviewer.WaypointPainter.setRenderer方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。