svn-gvsig-desktop / tags / v1_1_Build_1003 / libraries / libDwg / doc / dev_notes.txt @ 12271
History | View | Annotate | Download (5.43 KB)
1 | 2896 | jmorell | jdwglib Development Notes |
---|---|---|---|
2 | |||
3 | Objetivos |
||
4 | |||
5 | - gvSIG debe leer ficheros en formato DWG |
||
6 | |||
7 | |||
8 | Alternativas |
||
9 | |||
10 | Librer?as OpenDWG |
||
11 | |||
12 | Ventajas |
||
13 | |||
14 | - Soporte del formato DWG de la m?s alta calidad garantizado |
||
15 | |||
16 | - Permite tanto lectura como escritura |
||
17 | |||
18 | - Todas las versiones est?n soportadas |
||
19 | |||
20 | - OpenDWG tiene gran capacidad de desarrollo |
||
21 | |||
22 | Inconvenientes |
||
23 | |||
24 | - Est? en C y es necesario un acceso JNI |
||
25 | |||
26 | - Una empresa que de un uso comercial a gvSIG debe pagar a OpenDWG por sus |
||
27 | librer?as |
||
28 | |||
29 | - Un usuario que no de un uso comercial a gvSIG debe mandar un contrato |
||
30 | firmado a la OpenDWG |
||
31 | |||
32 | - OpenDWG puede decidir no facilitar sus librer?as |
||
33 | |||
34 | - OpenDWG en la pr?ctica no tiene ninguna obligaci?n para con sus |
||
35 | usuarios |
||
36 | |||
37 | Acceso v?a jython a la librer?a de DWG en Python de Art Haas |
||
38 | |||
39 | Ventajas |
||
40 | |||
41 | - M?xima reutilizaci?n de la librer?a original de Art Haas |
||
42 | |||
43 | - Facilidad a la hora de incorporar nuevas versiones de la librer?a original |
||
44 | |||
45 | Inconvenientes |
||
46 | |||
47 | - Incremento muy muy considerable de la complejidad del c?digo |
||
48 | |||
49 | - Ralentizaci?n de la librer?a |
||
50 | |||
51 | - Grandes dificultades para realizar cambios en el c?digo |
||
52 | |||
53 | - Es posible que Art no vaya a sacar nuevas versiones de esta librer?a |
||
54 | |||
55 | - La librer?a de Art no est? orientada a objetos. La propia opini?n de Art es |
||
56 | que la mejor opci?n es el porting dotando a la nueva librer?a de orientaci?n |
||
57 | a objetos |
||
58 | |||
59 | Port a Java de la librer?a de DWG en Python de Art Haas |
||
60 | |||
61 | Ventajas |
||
62 | |||
63 | - Desarrollo completo GPL |
||
64 | |||
65 | - Lectura completa de ficheros DWG hasta la versi?n 2000 |
||
66 | |||
67 | - Si se publica la librer?a quiz? se logre la colaboraci?n de otros |
||
68 | desarrolladores |
||
69 | |||
70 | - Art Haas no descarta la posibilidad de implementar la escritura de DWG |
||
71 | |||
72 | Inconvenientes |
||
73 | |||
74 | - Hoy por hoy no existe colaboraci?n en este sentido por parte de la |
||
75 | OpenDWG, ni por parte de Art Haas (desarrollador de la librer?a en python |
||
76 | de lectura de DWG) |
||
77 | |||
78 | - La especificaci?n de la OpenDWG tiene errores que no piensan resolver |
||
79 | |||
80 | |||
81 | Cronolog?a |
||
82 | |||
83 | 050308 - 050520 = 2 meses. Menos el tiempo empleado en el Proyecto del CAD y en |
||
84 | el de Felipe ... mes y medio. |
||
85 | |||
86 | 050308 - 050316 --> Reparando bugs del modulo de CAD e investigando las |
||
87 | alternativas para la lectura de DWG |
||
88 | |||
89 | 050316 - 050321 --> Investigando las alternativas para la lectura de DWG. Intento |
||
90 | de desarrollo seg?n la especificaci?n. Descubrimiento de la |
||
91 | librer?a de Art |
||
92 | |||
93 | 050321 - 050331 --> Probando la librer?a de Art. Probando el acceso v?a jython |
||
94 | |||
95 | 050331 - 050408 --> Probando el acceso v?a jython y portando la librer?a a Java |
||
96 | paralelamente. Correcci?n de bugs del CAD |
||
97 | |||
98 | 050408 - 050425 --> Portando la librer?a a java y dotarla de orientaci?n a objectos. |
||
99 | Correcci?n de bugs |
||
100 | |||
101 | 050425 - 050510 --> Correcci?n de bugs. Gesti?n de polil?neas y bloques en el driver. |
||
102 | Obtenci?n de nombres de capa y colores por capa |
||
103 | |||
104 | 050510 - 050515 --> Corrigiendo bugs. Reestructurando la librer?a para que soporte |
||
105 | la gesti?n que antes se hac?a en el driver |
||
106 | |||
107 | 050515 - 050520 --> Corrigiendo bugs. Buscando ayuda para resolver estos bugs. |
||
108 | Maqueando jdwglib v0.1 y su driver para gvSIG |
||
109 | |||
110 | |||
111 | Perspectivas |
||
112 | |||
113 | Mientras no cambie la pol?tica (y no creo que eso suceda) de la OpenDWG, la gesti?n de |
||
114 | informaci?n contenida en ficheros DWG a trav?s de su librer?a ser? propietaria y de |
||
115 | pago. La ventaja de su utilizaci?n es su potencia. Representa el camino r?pido y |
||
116 | sencillo |
||
117 | |||
118 | jdwglib se ajusta a los requisitos exijidos en el pliego para gvSIG y adem?s constituye |
||
119 | la primera librer?a libre de lectura de ficheros DWG en Java. Para lograr que la |
||
120 | lectura de DWG a trav?s de esta librer?a sea tan efectiva como la de DXF, tan solo |
||
121 | hay que solucionar los bugs conocidos. Para ello ser?a de gran ayuda la publicaci?n de |
||
122 | la librer?a y la colaboraci?n de la comunidad en el desarrollo. Sobre este tema habr?a |
||
123 | que discutir cuando es buen momento para la publicaci?n, puesto que esta librer?a podr?a |
||
124 | ser aprovechada por ProDevelop para mejorar su oferta de CAD |
||
125 | |||
126 | Con ayuda de la comunidad los objetivos pueden cumplirse en un plazo breve, quiz? un |
||
127 | mes. Sin ayuda, el proceso de depuraci?n de la librer?a puede prolongarse m?s y hasta |
||
128 | es posible que no se consigan eliminar todos los bugs |
||
129 | |||
130 | |||
131 | Supported features |
||
132 | |||
133 | Fomatos gr?ficos soportados |
||
134 | |||
135 | - Lectura del formato DWG de Autodesk |
||
136 | |||
137 | Versiones soportadas |
||
138 | |||
139 | - Versi?n 15 del formato DWG |
||
140 | |||
141 | Objectos gr?ficos soportados |
||
142 | |||
143 | - Arc |
||
144 | |||
145 | - Block |
||
146 | |||
147 | - Block Control |
||
148 | |||
149 | - Block Header |
||
150 | |||
151 | - Circle |
||
152 | |||
153 | - Endblk |
||
154 | |||
155 | - Insert |
||
156 | |||
157 | - Layer |
||
158 | |||
159 | - Layer Control |
||
160 | |||
161 | - Line |
||
162 | |||
163 | - Linear Dimension |
||
164 | |||
165 | - MText |
||
166 | |||
167 | - Point |
||
168 | |||
169 | - Polyline2D |
||
170 | |||
171 | - LwPolyline |
||
172 | |||
173 | - Seqend |
||
174 | |||
175 | - Solid |
||
176 | |||
177 | - Spline |
||
178 | |||
179 | - Text |
||
180 | |||
181 | - Vertex2D |
||
182 | |||
183 | - Ellipse |
||
184 | |||
185 | - Polyline3D |
||
186 | |||
187 | - Vertex3D |
||
188 | |||
189 | |||
190 | Otros elementos implementados |
||
191 | |||
192 | - bulges |
||
193 | |||
194 | - 3D |
||
195 | |||
196 | - Extrusiones |
||
197 | |||
198 | |||
199 | TODO List |
||
200 | |||
201 | - Inserci?n de bloques en 3D |
||
202 | |||
203 | - Completar la implementaci?n de todos los elementos dentro de bloques |
||
204 | |||
205 | - Attdef |
||
206 | |||
207 | - Attrib |
||
208 | |||
209 | - Thickness |
||
210 | |||
211 | - Aceleraci?n de la lectura |
||
212 | |||
213 | - Aceleraci?n de la gesti?n de elementos complejos |
||
214 | |||
215 | |||
216 | Known bugs |
||
217 | |||
218 | - Bugs concretos en el manejo de bloques |
||
219 | |||
220 | - LwPolylines <-- FIXED 050524 |
||
221 | |||
222 | - Layer handle "4 0" --> layer names, color by layer y bloques |
||
223 | |||
224 | - leve inclinaci?n an?mala y homogenea de los textos (quiz? relacionada con el ?ngulo |
||
225 | de convergencia de las hojas) <-- FIXED 050527 |
||
226 | |||
227 | - Bugs relacionados con polil?neas sin v?rtices |
||
228 | |||
229 | - Elementos fuera de sitio |
||
230 | |||
231 | - Elipses completas dentro de bloques |
||
232 | |||
233 | - Arcos de elipse |
||
234 | |||
235 | - Peque?os errores en arcos o polil?neas con bulges |
||
236 | |||
237 | |||
238 | Feature Request |
||
239 | |||
240 | - Lectura del formato DWG versi?n 13 y 14 |
||
241 | |||
242 | - Lectura y escritura del formato DXF de Autodesk |
||
243 | |||
244 | - Escritura del formato DWG |
||
245 |