2008-09-24 3 views

답변

3

또한 JTS 라이브러리에서 제공하는 ShapeWriter을 확인하십시오. jts 형상 객체를 awt 모양으로 변환하기 위해 다음 코드를 사용했습니다.

import java.awt.Graphics; 
import java.awt.Graphics2D; 
import java.awt.Shape; 

import javax.swing.JFrame; 
import javax.swing.JPanel; 

import com.vividsolutions.jts.awt.ShapeWriter; 
import com.vividsolutions.jts.geom.Coordinate; 
import com.vividsolutions.jts.geom.GeometryFactory; 
import com.vividsolutions.jts.geom.LineString; 
import com.vividsolutions.jts.geom.Polygon; 

public class Paint extends JPanel{ 
    public void paint(Graphics g) { 

     Coordinate[] coords = new Coordinate[] {new Coordinate(400, 0), new Coordinate(200, 200), new Coordinate(400, 400), new Coordinate(600, 200), new Coordinate(400, 0) }; 
     Polygon polygon = new GeometryFactory().createPolygon(coords); 

     LineString ls = new GeometryFactory().createLineString(new Coordinate[] {new Coordinate(20, 20), new Coordinate(200, 20)}); 

     ShapeWriter sw = new ShapeWriter(); 
     Shape polyShape = sw.toShape(polygon); 
     Shape linShape = sw.toShape(ls); 

     ((Graphics2D) g).draw(polyShape); 
     ((Graphics2D) g).draw(linShape); 


    } 
    public static void main(String[] args) { 
     JFrame f = new JFrame(); 
     f.getContentPane().add(new Paint()); 
     f.setSize(700, 700); 
     f.setVisible(true); 
    } 
} 

편집 : 결과는이 이미지처럼 보인다 Visualization of jts geometry objects in awt

관련 문제