Revision 23940 trunk/libraries/libDwg/src/com/iver/cit/jdwglib/dwg/readers/DwgObjectReaderPool.java
DwgObjectReaderPool.java | ||
---|---|---|
167 | 167 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v15.DwgVertexMeshReader15; |
168 | 168 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v15.DwgVertexPFaceFaceReader15; |
169 | 169 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v15.DwgVertexPFaceReader15; |
170 |
|
|
170 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgArcReader2004; |
|
171 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgAttdefReader2004; |
|
172 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgAttribReader2004; |
|
173 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgBlockControlReader2004; |
|
174 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgBlockHeaderReader2004; |
|
175 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgBlockReader2004; |
|
176 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgCircleReader2004; |
|
177 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgDictionaryReader2004; |
|
178 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgEllipseReader2004; |
|
179 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgEndBlkReader2004; |
|
180 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgInsertReader2004; |
|
181 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgLayerControlReader2004; |
|
182 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgLayerReader2004; |
|
183 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgLineReader2004; |
|
184 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgLinearDimensionReader2004; |
|
185 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgLwPolylineReader2004; |
|
186 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgMTextReader2004; |
|
187 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgMeshReader2004; |
|
188 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgPFaceReader2004; |
|
189 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgPointReader2004; |
|
190 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgPolyline2DReader2004; |
|
191 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgPolyline3DReader2004; |
|
192 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgSeqEndReader2004; |
|
193 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgSolidReader2004; |
|
194 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgSplineReader2004; |
|
195 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgTextReader2004; |
|
196 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgVertex2DReader2004; |
|
197 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgVertex3DReader2004; |
|
198 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgVertexMeshReader2004; |
|
199 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgVertexPFaceFaceReader2004; |
|
200 |
import com.iver.cit.jdwglib.dwg.readers.objreaders.v2004.DwgVertexPFaceReader2004; |
|
171 | 201 |
/** |
172 | 202 |
* @author azabala |
173 | 203 |
*/ |
... | ... | |
179 | 209 |
private Map obj_readers; |
180 | 210 |
|
181 | 211 |
static{ |
212 |
|
|
213 |
// READERS FOR DWG V2004 |
|
214 |
_instance.put(DwgArc.class, "2004", new DwgArcReader2004()); |
|
215 |
_instance.put(DwgAttdef.class, "2004", new DwgAttdefReader2004()); |
|
216 |
_instance.put(DwgAttrib.class, "2004", new DwgAttribReader2004()); |
|
217 |
_instance.put(DwgBlock.class, "2004", new DwgBlockReader2004()); |
|
218 |
_instance.put(DwgBlockControl.class, "2004", new DwgBlockControlReader2004()); |
|
219 |
_instance.put(DwgBlockHeader.class, "2004", new DwgBlockHeaderReader2004()); |
|
220 |
_instance.put(DwgCircle.class, "2004", new DwgCircleReader2004()); |
|
221 |
_instance.put(DwgEllipse.class, "2004", new DwgEllipseReader2004()); |
|
222 |
_instance.put(DwgEndblk.class, "2004", new DwgEndBlkReader2004()); |
|
223 |
_instance.put(DwgInsert.class, "2004", new DwgInsertReader2004()); |
|
224 |
_instance.put(DwgLayer.class, "2004", new DwgLayerReader2004()); |
|
225 |
_instance.put(DwgLayerControl.class, "2004", new DwgLayerControlReader2004()); |
|
226 |
_instance.put(DwgLine.class, "2004", new DwgLineReader2004()); |
|
227 |
_instance.put(DwgLinearDimension.class, "2004", new DwgLinearDimensionReader2004()); |
|
228 |
_instance.put(DwgLwPolyline.class, "2004", new DwgLwPolylineReader2004()); |
|
229 |
_instance.put(DwgMText.class, "2004", new DwgMTextReader2004()); |
|
230 |
_instance.put(DwgPoint.class, "2004", new DwgPointReader2004()); |
|
231 |
_instance.put(DwgPolyline2D.class, "2004", new DwgPolyline2DReader2004()); |
|
232 |
_instance.put(DwgPolyline3D.class, "2004", new DwgPolyline3DReader2004()); |
|
233 |
_instance.put(DwgSeqend.class, "2004", new DwgSeqEndReader2004()); |
|
234 |
_instance.put(DwgSpline.class, "2004", new DwgSplineReader2004()); |
|
235 |
_instance.put(DwgText.class, "2004", new DwgTextReader2004()); |
|
236 |
_instance.put(DwgVertex2D.class, "2004", new DwgVertex2DReader2004()); |
|
237 |
_instance.put(DwgVertex3D.class, "2004", new DwgVertex3DReader2004()); |
|
238 |
_instance.put(DwgDictionary.class, "2004", new DwgDictionaryReader2004()); |
|
239 |
_instance.put(DwgVertexPFace.class, "2004", new DwgVertexPFaceReader2004()); |
|
240 |
_instance.put(DwgVertexPFaceFace.class, "2004", new DwgVertexPFaceFaceReader2004()); |
|
241 |
_instance.put(DwgPFacePolyline.class, "2004", new DwgPFaceReader2004()); |
|
242 |
_instance.put(DwgMeshPolyline.class, "2004", new DwgMeshReader2004()); |
|
243 |
_instance.put(DwgVertexMesh.class, "2004", new DwgVertexMeshReader2004()); |
|
244 |
_instance.put(DwgSolid.class, "2004", new DwgSolidReader2004()); |
|
245 |
|
|
182 | 246 |
//READERS FOR DWG V15 |
183 | 247 |
_instance.put(DwgArc.class, "15", new DwgArcReader15()); |
184 | 248 |
_instance.put(DwgAttdef.class, "15", new DwgAttdefReader15()); |
... | ... | |
211 | 275 |
_instance.put(DwgPFacePolyline.class, "15", new DwgPFaceReader15()); |
212 | 276 |
_instance.put(DwgMeshPolyline.class, "15", new DwgMeshReader15()); |
213 | 277 |
_instance.put(DwgVertexMesh.class, "15", new DwgVertexMeshReader15()); |
214 |
|
|
215 |
|
|
216 |
|
|
217 |
|
|
278 |
|
|
218 | 279 |
//READERS FOR DWG V13 AND V14 |
219 | 280 |
_instance.put(DwgArc.class, "1314", new DwgArcReader1314()); |
220 | 281 |
_instance.put(DwgAttdef.class, "1314", new DwgAttdefReader1314()); |
... | ... | |
274 | 335 |
obj_readers = new HashMap(); |
275 | 336 |
} |
276 | 337 |
|
338 |
/**Get the specific reader for an object |
|
339 |
* |
|
340 |
* @param obj Object we want to read |
|
341 |
* @param dwgVersion version of dwg file |
|
342 |
* @return The specific reader |
|
343 |
*/ |
|
277 | 344 |
public IDwgObjectReader get(DwgObject obj, String dwgVersion){ |
345 |
|
|
278 | 346 |
IDwgObjectReader reader = (IDwgObjectReader) obj_readers. |
279 | 347 |
get(obj.getClass().getName() + dwgVersion); |
280 | 348 |
// if(reader == null) |
... | ... | |
283 | 351 |
|
284 | 352 |
} |
285 | 353 |
|
354 |
/** |
|
355 |
* Stores in a map the different readers for objects |
|
356 |
* @param dwgObjClass Object's class |
|
357 |
* @param dwgVersion version of dwg file |
|
358 |
* @param reader Specific reader for the object |
|
359 |
*/ |
|
286 | 360 |
public void put(Class dwgObjClass, String dwgVersion, IDwgObjectReader reader){ |
287 | 361 |
if(DwgObject.class.isAssignableFrom(dwgObjClass)) |
288 | 362 |
obj_readers.put(dwgObjClass.getName()+ dwgVersion, reader); |
289 | 363 |
else |
290 |
throw new RuntimeException("Este pool solo admite como entrada clases de entidad de dibujo gr?fica");
|
|
364 |
throw new RuntimeException("Este pool solo admite como entrada clases de entidad de dibujo gr�fica");
|
|
291 | 365 |
} |
292 | 366 |
|
293 | 367 |
} |
Also available in: Unified diff