本文整理汇总了Java中com.vividsolutions.jts.awt.ShapeWriter类的典型用法代码示例。如果您正苦于以下问题:Java ShapeWriter类的具体用法?Java ShapeWriter怎么用?Java ShapeWriter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ShapeWriter类属于com.vividsolutions.jts.awt包,在下文中一共展示了ShapeWriter类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: addObstacles
import com.vividsolutions.jts.awt.ShapeWriter; //导入依赖的package包/类
public void addObstacles(Geometry ... geom) {
if (this.mapFilename == null) throw new Error("Please set a map file first!");
BufferedImage img = null;
try {
img = ImageIO.read(new File(mapFilename));
System.out.println("IMGTYPE: " + img.getType());
Graphics2D g2 = img.createGraphics();
ShapeWriter writer = new ShapeWriter();
g2.setPaint(Color.black);
for (Geometry g : geom) {
AffineTransformation at = new AffineTransformation();
at.scale(1.0/mapResolution, -1.0/mapResolution);
at.translate(0, img.getHeight());
Geometry scaledGeom = at.transform(g);
Shape shape = writer.toShape(scaledGeom);
System.out.println("Shape: " + shape.getBounds2D());
g2.fill(shape);
}
File outputfile = new File(TEMP_MAP_DIR + File.separator + "tempMap" + (numObstacles++) + ".png");
ImageIO.write(img, "png", outputfile);
this.mapFilename = outputfile.getAbsolutePath();
}
catch (IOException e) { e.printStackTrace(); }
}
开发者ID:FedericoPecora,项目名称:coordination_oru,代码行数:25,代码来源:ReedsSheppCarPlanner.java
示例2: getConverter
import com.vividsolutions.jts.awt.ShapeWriter; //导入依赖的package包/类
public static ShapeWriter getConverter(Viewport viewport)
{
ShapeWriter sw = new ShapeWriter(viewport, new PointShapeFactory.Point());
//sw.setRemoveDuplicatePoints(true);
//sw.setDecimation(viewport.toModel(DECIMATION_DISTANCE));
return sw;
}
开发者ID:dr-jts,项目名称:jeql,代码行数:8,代码来源:GeometryPainter.java
示例3: paint
import com.vividsolutions.jts.awt.ShapeWriter; //导入依赖的package包/类
private static void paint(Geometry geometry, ShapeWriter converter, Graphics2D g,
BasicStyle style)
{
if (geometry == null)
return;
if (geometry instanceof GeometryCollection) {
GeometryCollection gc = (GeometryCollection) geometry;
/**
* Render each element separately.
* Otherwise it is not possible to render both filled and non-filled
* (1D) elements correctly
*/
for (int i = 0; i < gc.getNumGeometries(); i++) {
paint(gc.getGeometryN(i), converter, g, style);
}
return;
}
Shape shape = converter.toShape(geometry);
Color lineColor = style.getLineColor();
Paint fillColor = style.getFillColor();
// handle points in a special way for appearance and speed
if (geometry instanceof Point) {
g.setStroke(POINT_STROKE);
g.setPaint(lineColor);
g.draw(shape);
g.fill(shape);
return;
}
Stroke stroke = style.getStroke();
if (stroke == null)
g.setStroke(GEOMETRY_STROKE);
else
g.setStroke(stroke);
// Test for a polygonal shape and fill it if required
if (geometry instanceof Polygon && fillColor != null) {
g.setPaint(fillColor);
g.fill(shape);
}
if (lineColor != null) {
g.setColor(lineColor);
try {
g.draw(shape);
}
catch (Throwable ex) {
System.out.println(ex);
// eat it!
}
}
}
开发者ID:dr-jts,项目名称:jeql,代码行数:57,代码来源:GeometryPainter.java
注:本文中的com.vividsolutions.jts.awt.ShapeWriter类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论