Revision 247 trunk/org.gvsig.app.document.layout2.app/org.gvsig.app.document.layout2.app.mainplugin/src/main/java/org/gvsig/app/project/documents/layout/geometryadapters/GeometryAdapter.java
GeometryAdapter.java | ||
---|---|---|
42 | 42 |
|
43 | 43 |
import java.awt.Graphics2D; |
44 | 44 |
import java.awt.geom.AffineTransform; |
45 |
import java.awt.geom.Arc2D; |
|
46 |
import java.awt.geom.FlatteningPathIterator; |
|
47 |
import java.awt.geom.NoninvertibleTransformException; |
|
45 | 48 |
import java.awt.geom.Point2D; |
46 | 49 |
import java.awt.geom.Rectangle2D; |
47 | 50 |
import java.util.ArrayList; |
... | ... | |
52 | 55 |
import org.gvsig.fmap.geom.Geometry; |
53 | 56 |
import org.gvsig.fmap.geom.GeometryLocator; |
54 | 57 |
import org.gvsig.fmap.geom.GeometryManager; |
58 |
import org.gvsig.fmap.geom.Geometry.SUBTYPES; |
|
59 |
import org.gvsig.fmap.geom.Geometry.TYPES; |
|
55 | 60 |
import org.gvsig.fmap.geom.exception.CreateGeometryException; |
61 |
import org.gvsig.fmap.geom.primitive.Circle; |
|
62 |
import org.gvsig.fmap.geom.primitive.GeneralPathX; |
|
63 |
import org.gvsig.fmap.geom.primitive.Point; |
|
64 |
import org.gvsig.fmap.geom.type.GeometryTypeNotSupportedException; |
|
65 |
import org.gvsig.fmap.geom.type.GeometryTypeNotValidException; |
|
56 | 66 |
import org.gvsig.fmap.mapcontext.rendering.symbols.ISymbol; |
57 | 67 |
import org.gvsig.tools.ToolsLocator; |
58 | 68 |
import org.gvsig.tools.dynobject.DynStruct; |
... | ... | |
61 | 71 |
import org.gvsig.tools.persistence.Persistent; |
62 | 72 |
import org.gvsig.tools.persistence.PersistentState; |
63 | 73 |
import org.gvsig.tools.persistence.exception.PersistenceException; |
74 |
import org.gvsig.app.project.documents.layout.geometryadapters.PrintingCircle2D; |
|
64 | 75 |
|
65 | 76 |
/** |
66 | 77 |
* Abstract adaptor to relate the geometries with the fframes and to be able to |
... | ... | |
164 | 175 |
*/ |
165 | 176 |
public void print(Graphics2D g, AffineTransform at, |
166 | 177 |
ISymbol symbol, PrintAttributes properties){ |
167 |
symbol.print(g, at, getGeometry(), properties); |
|
178 |
Geometry geom = getGeometry(); |
|
179 |
if (geom instanceof Circle) { |
|
180 |
// circles must be handled differently in order to print really round geometries |
|
181 |
// as the flatness used for screen may not be good for printing |
|
182 |
Circle circle = ((Circle) geom); |
|
183 |
PrintingCircle2D printCircle = new PrintingCircle2D(circle); |
|
184 |
geom = printCircle; |
|
185 |
|
|
186 |
} |
|
187 |
symbol.print(g, at, geom, properties); |
|
168 | 188 |
} |
169 | 189 |
|
170 | 190 |
/** |
Also available in: Unified diff