svn-gvsig-desktop / trunk / libraries / libDwg / src / com / iver / cit / jdwglib / dwg / readers / objreaders / v1314 / DwgMTextReader1314.java @ 10113
History | View | Annotate | Download (3.77 KB)
1 | 9910 | azabala | /*
|
---|---|---|---|
2 | * Created on 25-ene-2007 by azabala
|
||
3 | *
|
||
4 | */
|
||
5 | package com.iver.cit.jdwglib.dwg.readers.objreaders.v1314; |
||
6 | |||
7 | 10113 | azabala | import java.util.List; |
8 | |||
9 | import com.iver.cit.jdwglib.dwg.CorruptedDwgEntityException; |
||
10 | import com.iver.cit.jdwglib.dwg.DwgHandleReference; |
||
11 | 9910 | azabala | import com.iver.cit.jdwglib.dwg.DwgObject; |
12 | 10113 | azabala | import com.iver.cit.jdwglib.dwg.DwgUtil; |
13 | import com.iver.cit.jdwglib.dwg.objects.DwgMText; |
||
14 | 9910 | azabala | |
15 | /**
|
||
16 | * @author alzabord
|
||
17 | *
|
||
18 | * TODO To change the template for this generated type comment go to
|
||
19 | * Window - Preferences - Java - Code Style - Code Templates
|
||
20 | */
|
||
21 | 10113 | azabala | public class DwgMTextReader1314 extends AbstractDwg1314Reader{ |
22 | 9910 | azabala | |
23 | /* (non-Javadoc)
|
||
24 | * @see com.iver.cit.jdwglib.dwg.readers.IDwgObjectReader#readSpecificObj(int[], int, com.iver.cit.jdwglib.dwg.DwgObject)
|
||
25 | */
|
||
26 | 10113 | azabala | public void readSpecificObj(int[] data, int offset, DwgObject dwgObj) throws RuntimeException, CorruptedDwgEntityException { |
27 | if(! (dwgObj instanceof DwgMText)) |
||
28 | throw new RuntimeException("ArcReader 14 solo puede leer DwgMText"); |
||
29 | DwgMText txt = (DwgMText) dwgObj; |
||
30 | 9910 | azabala | |
31 | 10113 | azabala | int bitPos = offset;
|
32 | bitPos = headTailReader.readObjectHeader(data, bitPos, txt); |
||
33 | 9910 | azabala | |
34 | 10113 | azabala | List val = DwgUtil.getBitDouble(data, bitPos);
|
35 | bitPos = ((Integer)val.get(0)).intValue(); |
||
36 | double x = ((Double)val.get(1)).doubleValue(); |
||
37 | |||
38 | val = DwgUtil.getBitDouble(data, bitPos); |
||
39 | bitPos = ((Integer)val.get(0)).intValue(); |
||
40 | double y = ((Double)val.get(1)).doubleValue(); |
||
41 | |||
42 | val = DwgUtil.getBitDouble(data, bitPos); |
||
43 | bitPos = ((Integer)val.get(0)).intValue(); |
||
44 | double z = ((Double)val.get(1)).doubleValue(); |
||
45 | txt.setInsertionPoint(new double[]{x, y, z}); |
||
46 | |||
47 | val = DwgUtil.getBitDouble(data, bitPos); |
||
48 | bitPos = ((Integer)val.get(0)).intValue(); |
||
49 | x = ((Double)val.get(1)).doubleValue(); |
||
50 | |||
51 | val = DwgUtil.getBitDouble(data, bitPos); |
||
52 | bitPos = ((Integer)val.get(0)).intValue(); |
||
53 | y = ((Double)val.get(1)).doubleValue(); |
||
54 | |||
55 | val = DwgUtil.getBitDouble(data, bitPos); |
||
56 | bitPos = ((Integer)val.get(0)).intValue(); |
||
57 | z = ((Double)val.get(1)).doubleValue(); |
||
58 | txt.setExtrusion(new double[]{x, y, z}); |
||
59 | |||
60 | val = DwgUtil.getBitDouble(data, bitPos); |
||
61 | bitPos = ((Integer)val.get(0)).intValue(); |
||
62 | x = ((Double)val.get(1)).doubleValue(); |
||
63 | |||
64 | val = DwgUtil.getBitDouble(data, bitPos); |
||
65 | bitPos = ((Integer)val.get(0)).intValue(); |
||
66 | y = ((Double)val.get(1)).doubleValue(); |
||
67 | |||
68 | val = DwgUtil.getBitDouble(data, bitPos); |
||
69 | bitPos = ((Integer)val.get(0)).intValue(); |
||
70 | z = ((Double)val.get(1)).doubleValue(); |
||
71 | txt.setXAxisDirection(new double[]{x, y, z}); |
||
72 | |||
73 | val = DwgUtil.getBitDouble(data, bitPos); |
||
74 | bitPos = ((Integer)val.get(0)).intValue(); |
||
75 | double width = ((Double)val.get(1)).doubleValue(); |
||
76 | txt.setWidth(width); |
||
77 | |||
78 | val = DwgUtil.getBitDouble(data, bitPos); |
||
79 | bitPos = ((Integer)val.get(0)).intValue(); |
||
80 | double height = ((Double)val.get(1)).doubleValue(); |
||
81 | txt.setHeight(height); |
||
82 | |||
83 | val = DwgUtil.getBitShort(data, bitPos); |
||
84 | bitPos = ((Integer)val.get(0)).intValue(); |
||
85 | int attachment = ((Integer)val.get(1)).intValue(); |
||
86 | txt.setAttachment(attachment); |
||
87 | |||
88 | val = DwgUtil.getBitShort(data, bitPos); |
||
89 | bitPos = ((Integer)val.get(0)).intValue(); |
||
90 | int drawingDir = ((Integer)val.get(1)).intValue(); |
||
91 | txt.setAttachment(drawingDir); |
||
92 | |||
93 | val = DwgUtil.getBitDouble(data, bitPos); |
||
94 | bitPos = ((Integer)val.get(0)).intValue(); |
||
95 | double extHeight = ((Double)val.get(1)).doubleValue(); |
||
96 | txt.setExtHeight(extHeight); |
||
97 | |||
98 | val = DwgUtil.getBitDouble(data, bitPos); |
||
99 | bitPos = ((Integer)val.get(0)).intValue(); |
||
100 | double extWidth = ((Double)val.get(1)).doubleValue(); |
||
101 | txt.setExtWidth(extWidth); |
||
102 | |||
103 | val = DwgUtil.getTextString(data, bitPos); |
||
104 | bitPos = ((Integer)val.get(0)).intValue(); |
||
105 | txt.setText((String) val.get(1)); |
||
106 | |||
107 | bitPos = headTailReader.readObjectTailer(data, bitPos, txt); |
||
108 | |||
109 | DwgHandleReference handle = new DwgHandleReference();
|
||
110 | bitPos = handle.read(data, bitPos); |
||
111 | txt.setStyleHandle(handle); |
||
112 | 9910 | azabala | } |
113 | |||
114 | } |