Revision 10632 trunk/libraries/libDwg/src/com/iver/cit/jdwglib/dwg/objects/DwgSolid.java
DwgSolid.java | ||
---|---|---|
35 | 35 |
package com.iver.cit.jdwglib.dwg.objects; |
36 | 36 |
|
37 | 37 |
import java.awt.geom.Point2D; |
38 |
import java.util.ArrayList; |
|
38 | 39 |
import java.util.List; |
39 | 40 |
import java.util.Map; |
40 | 41 |
|
... | ... | |
227 | 228 |
double[] p3 = getCorner3(); |
228 | 229 |
double[] p4 = getCorner4(); |
229 | 230 |
double elev = getElevation(); |
230 |
Point2D[] pts = new Point2D[] { |
|
231 |
new Point2D.Double(p1[0], p1[1]), |
|
232 |
new Point2D.Double(p2[0], p2[1]), |
|
233 |
new Point2D.Double(p4[0], p4[1]), |
|
234 |
new Point2D.Double(p3[0], p3[1]), |
|
235 |
new Point2D.Double(p1[0], p1[1]) |
|
236 |
}; |
|
231 |
List pts = new ArrayList(); |
|
237 | 232 |
|
238 | 233 |
if (is3DFile) { |
239 |
double[][] pline3D = new double[pts.length][3]; |
|
240 |
for (int j = 0; j < pts.length; j++) { |
|
241 |
pline3D[j][0] = pts[j].getX(); |
|
242 |
pline3D[j][1] = pts[j].getY(); |
|
243 |
pline3D[j][2] = elev; |
|
244 |
} |
|
245 |
solid = FMapUtil.points3DToFPolyline3D(pline3D); |
|
234 |
double[] p13d = new double[]{p1[0], p1[1], elev}; |
|
235 |
double[] p23d = new double[]{p2[0], p2[1], elev}; |
|
236 |
double[] p33d = new double[]{p3[0], p3[1], elev}; |
|
237 |
double[] p43d = new double[]{p4[0], p4[1], elev}; |
|
238 |
pts.add(p13d); |
|
239 |
pts.add(p23d); |
|
240 |
pts.add(p33d); |
|
241 |
pts.add(p43d); |
|
242 |
|
|
243 |
solid = FMapUtil.points3DToFPolyline3D(pts); |
|
246 | 244 |
|
247 | 245 |
} else { |
246 |
pts.add(p1); |
|
247 |
pts.add(p2); |
|
248 |
pts.add(p3); |
|
249 |
pts.add(p4); |
|
248 | 250 |
solid = FMapUtil.points2DToFPolyline2D(pts); |
249 | 251 |
} |
250 | 252 |
return solid; |
Also available in: Unified diff