Revision 2326 branches/pilotoDWG/libraries/libFMap/src/com/iver/cit/gvsig/fmap/drivers/dxf/DXFCadDriver.java

View differences:

DXFCadDriver.java
271 271
						end = (Point2D)dxfPolyline.getPts().get(j+1);
272 272
					}
273 273
					//System.out.println("DxfCadDriver.initialize(): dxfPolyline.getBulges().size() = " + dxfPolyline.getBulges().size());
274
					if (((Double)dxfPolyline.getBulges().get(j)).doubleValue()==0) {
274
					if (((Double)dxfPolyline.getBulges().get(j)).doubleValue()==0 || (init.getX()==end.getX() && init.getY()==end.getY())) {
275 275
						GeneralPathX gp = new GeneralPathX();
276 276
						gp.moveTo(init.getX(), init.getY());
277 277
						gp.lineTo(end.getX(), end.getY());
......
283 283
							gp.closePath();
284 284
						}*/
285 285
						geoms[j] = (IGeometry)ShapeFactory.createPolyline2D(gp);
286
					} else if (((Double)dxfPolyline.getBulges().get(j)).doubleValue()>0) {
286
					} else if (((Double)dxfPolyline.getBulges().get(j)).doubleValue()>0 && !(init.getX()==end.getX() && init.getY()==end.getY())) {
287 287
						//IGeometry arc = (IGeometry)ShapeFactory.createArc();
288 288
						DxfCalArcs dxfCalArcs = new DxfCalArcs(init, end, ((Double)dxfPolyline.getBulges().get(j)).doubleValue());
289 289
						Vector arc = (Vector)dxfCalArcs.getCentralPoint();
......
292 292
						//System.out.println("cent = " + cent);
293 293
						//System.out.println("end = " + end);
294 294
						geoms[j] = (IGeometry)ShapeFactory.createArc(init, cent, end);
295
					} else if (((Double)dxfPolyline.getBulges().get(j)).doubleValue()<0) {
295
					} else if (((Double)dxfPolyline.getBulges().get(j)).doubleValue()<0 && !(init.getX()==end.getX() && init.getY()==end.getY())) {
296 296
						//IGeometry arc = (IGeometry)ShapeFactory.createArc();
297 297
						DxfCalArcs dxfCalArcs = new DxfCalArcs(init, end, ((Double)dxfPolyline.getBulges().get(j)).doubleValue());
298 298
						Vector arc = (Vector)dxfCalArcs.getCentralPoint();

Also available in: Unified diff