Revision 3188 trunk/libraries/libCq CMS for java.old/src/org/cresques/px/dxf/DxfEntityMaker.java
DxfEntityMaker.java | ||
---|---|---|
153 | 153 |
entity.setHandle(entities.size() + 40); |
154 | 154 |
} |
155 | 155 |
|
156 |
if (grp.hasCode(100)) { |
|
157 |
entity.setSubclassMarker(grp.getDataAsString(100)); |
|
158 |
} |
|
159 |
|
|
156 | 160 |
double x = 0.0; |
157 | 161 |
double y = 0.0; |
158 | 162 |
double z = 0.0; |
... | ... | |
168 | 172 |
|
169 | 173 |
if (grp.hasCode(30)) { |
170 | 174 |
z = grp.getDataAsDouble(30); |
175 |
entity.setElevation(z); |
|
171 | 176 |
} |
172 | 177 |
|
173 | 178 |
/*if (grp.hasCode(39)) |
... | ... | |
353 | 358 |
|
354 | 359 |
Point3D point_in = new Point3D(x, y, z); |
355 | 360 |
Point3D xtru = new Point3D(xtruX, xtruY, xtruZ); |
356 |
Point2D point_out = DxfCalXtru.CalculateXtru(point_in, xtru);
|
|
361 |
Point3D point_out = DxfCalXtru.CalculateXtru(point_in, xtru);
|
|
357 | 362 |
|
358 | 363 |
if (((flags & 0x80) == 0x80) && ((flags & 0x40) == 0)) { |
359 | 364 |
int[] face = { 0, 0, 0, 0 }; |
... | ... | |
365 | 370 |
} else { |
366 | 371 |
x = point_out.getX(); |
367 | 372 |
y = point_out.getY(); |
373 |
z = point_out.getZ(); |
|
368 | 374 |
|
369 |
Point2D pt = proj.createPoint(x, y); |
|
375 |
Point2D ptaux = proj.createPoint(x, y); |
|
376 |
Point3D pt = new Point3D(ptaux.getX(), ptaux.getY(), z); |
|
370 | 377 |
((DxfPolyline) lastEntity).add(pt); |
371 | 378 |
|
372 | 379 |
if (((DxfPolyline) lastEntity).pts.size() == 1) { |
... | ... | |
384 | 391 |
|
385 | 392 |
Point3D point_in = new Point3D(x, y, z); |
386 | 393 |
Point3D xtru = new Point3D(xtruX, xtruY, xtruZ); |
387 |
Point2D point_out = DxfCalXtru.CalculateXtru(point_in, xtru);
|
|
394 |
Point3D point_out = DxfCalXtru.CalculateXtru(point_in, xtru);
|
|
388 | 395 |
x = point_out.getX(); |
389 | 396 |
y = point_out.getY(); |
397 |
z = point_out.getZ(); |
|
390 | 398 |
|
391 |
Point2D pt = proj.createPoint(x, y); |
|
399 |
Point2D ptaux = proj.createPoint(x, y); |
|
400 |
Point3D pt = new Point3D(ptaux.getX(), ptaux.getY(), z); |
|
392 | 401 |
((DxfPolyline) lastEntity).add(pt); |
393 | 402 |
|
394 | 403 |
if (((DxfPolyline) lastEntity).pts.size() == 1) { |
... | ... | |
411 | 420 |
((DxfPolyline) lastEntity).pts.remove(cnt - 1); |
412 | 421 |
|
413 | 422 |
for (int i = 0; i < arc.size(); i++) { |
414 |
pt = proj.createPoint(((Point2D) arc.get(i)).getX(), |
|
423 |
ptaux = proj.createPoint(((Point2D) arc.get(i)).getX(),
|
|
415 | 424 |
((Point2D) arc.get(i)).getY()); |
425 |
pt = new Point3D(ptaux.getX(), ptaux.getY(), z); |
|
416 | 426 |
((DxfPolyline) lastEntity).add(pt); |
417 | 427 |
|
418 | 428 |
if (((DxfPolyline) lastEntity).pts.size() == 1) { |
... | ... | |
434 | 444 |
|
435 | 445 |
Point3D point_in = new Point3D(x, y, z); |
436 | 446 |
Point3D xtru = new Point3D(xtruX, xtruY, xtruZ); |
437 |
Point2D point_out = DxfCalXtru.CalculateXtru(point_in, xtru);
|
|
447 |
Point3D point_out = DxfCalXtru.CalculateXtru(point_in, xtru);
|
|
438 | 448 |
x = point_out.getX(); |
439 | 449 |
y = point_out.getY(); |
450 |
z = point_out.getZ(); |
|
440 | 451 |
|
441 |
Point2D pt = proj.createPoint(x, y); |
|
452 |
Point2D ptaux = proj.createPoint(x, y); |
|
453 |
Point3D pt = new Point3D(ptaux.getX(), ptaux.getY(), z); |
|
442 | 454 |
((DxfPolyline) lastEntity).add(pt); |
443 | 455 |
|
444 | 456 |
if (((DxfPolyline) lastEntity).pts.size() == 1) { |
... | ... | |
461 | 473 |
((DxfPolyline) lastEntity).pts.remove(cnt - 1); |
462 | 474 |
|
463 | 475 |
for (int i = arc.size() - 1; i >= 0; i--) { |
464 |
pt = proj.createPoint(((Point2D) arc.get(i)).getX(), |
|
476 |
ptaux = proj.createPoint(((Point2D) arc.get(i)).getX(),
|
|
465 | 477 |
((Point2D) arc.get(i)).getY()); |
478 |
pt = new Point3D(ptaux.getX(), ptaux.getY(), z); |
|
466 | 479 |
((DxfPolyline) lastEntity).add(pt); |
467 | 480 |
|
468 | 481 |
if (((DxfPolyline) lastEntity).pts.size() == 1) { |
... | ... | |
496 | 509 |
double exty = 0.0; |
497 | 510 |
double extz = 1.0; |
498 | 511 |
|
512 |
DxfLayer layer = (DxfLayer) layers.getByName(grp.getDataAsString(8)); |
|
513 |
DxfLwPolyline entity = new DxfLwPolyline(proj, layer); |
|
514 |
|
|
499 | 515 |
if (grp.hasCode(38)) { |
500 |
elev = grp.getDataAsDouble(38);
|
|
516 |
entity.setElevation(grp.getDataAsDouble(38));
|
|
501 | 517 |
} |
502 | 518 |
|
503 |
DxfLayer layer = (DxfLayer) layers.getByName(grp.getDataAsString(8)); |
|
504 |
DxfLwPolyline entity = new DxfLwPolyline(proj, layer); |
|
505 |
|
|
506 | 519 |
if (grp.hasCode(5)) { |
507 | 520 |
String hexS = grp.getDataAsString(5); |
508 | 521 |
Integer hexI = Integer.decode("0x" + hexS); |
Also available in: Unified diff