Revision 2326 branches/pilotoDWG/libraries/libFMap/src/com/iver/cit/gvsig/fmap/drivers/dwg/DwgCadDriver.java
DwgCadDriver.java | ||
---|---|---|
423 | 423 |
end = (Point2D)((DwgPolyline2D)entity).getPts()[j+1]; |
424 | 424 |
} |
425 | 425 |
//System.out.println("DxfCadDriver.initialize(): dxfPolyline.getBulges().size() = " + dxfPolyline.getBulges().size()); |
426 |
if (((DwgPolyline2D)entity).getBulges()[j]==0) { |
|
426 |
if (((DwgPolyline2D)entity).getBulges()[j]==0 || (init.getX()==end.getX() && init.getY()==end.getY())) {
|
|
427 | 427 |
GeneralPathX gp = new GeneralPathX(); |
428 | 428 |
gp.moveTo(init.getX(), init.getY()); |
429 | 429 |
gp.lineTo(end.getX(), end.getY()); |
... | ... | |
435 | 435 |
gp.closePath(); |
436 | 436 |
}*/ |
437 | 437 |
geoms[j] = (IGeometry)ShapeFactory.createPolyline2D(gp); |
438 |
} else if (((DwgPolyline2D)entity).getBulges()[j]>0) { |
|
438 |
} else if (((DwgPolyline2D)entity).getBulges()[j]>0 && !(init.getX()==end.getX() && init.getY()==end.getY())) {
|
|
439 | 439 |
//IGeometry arc = (IGeometry)ShapeFactory.createArc(); |
440 | 440 |
ArcFromBulgeCalculator arcFromBulgeCalculator = new ArcFromBulgeCalculator(init, end, ((DwgPolyline2D)entity).getBulges()[j]); |
441 | 441 |
Vector arc = (Vector)arcFromBulgeCalculator.getCentralPoint(); |
... | ... | |
444 | 444 |
//System.out.println("cent = " + cent); |
445 | 445 |
//System.out.println("end = " + end); |
446 | 446 |
geoms[j] = (IGeometry)ShapeFactory.createArc(init, cent, end); |
447 |
} else if (((DwgPolyline2D)entity).getBulges()[j]<0) { |
|
447 |
} else if (((DwgPolyline2D)entity).getBulges()[j]<0 && !(init.getX()==end.getX() && init.getY()==end.getY())) {
|
|
448 | 448 |
//IGeometry arc = (IGeometry)ShapeFactory.createArc(); |
449 | 449 |
ArcFromBulgeCalculator arcFromBulgeCalculator = new ArcFromBulgeCalculator(init, end, ((DwgPolyline2D)entity).getBulges()[j]); |
450 | 450 |
Vector arc = (Vector)arcFromBulgeCalculator.getCentralPoint(); |
Also available in: Unified diff