https://foro.gambas-es.org/viewtopic.php?f=5&t=5100
-----------------------------------
tincho
Viernes, 15 Enero 2016, 15:26

LibreDWG En Gambas
-----------------------------------
Bueno, en un post [url=http://foro.gambas-es.org/viewtopic.php?f=1&t=4496&highlight=libredwg+20en+20gambas]anterior plantee la pregunta sobre como editar ficheros dxf con una librería en C++ y las opiniones mas o menos generalizadas eran que las librerías C++ no son convenientes para su uso en gambas, sin embargo Vuott propuso un ejemplo llamado [url=http://foro.gambas-es.org/viewtopic.php?f=1&t=4496&highlight=libredwg+20en+20gambas]dxf-test pero no he logrado hacerlo funcionar, me da un error diciendo que no encuentra la librería dxflib.
Luego deje una nueva pregunta (ya que yo no se como se hace), por si alguien se interesaba investigar o desarrollar el tema, sobre como usar o adaptar la librería escrita en C LibreDWG (mantenida por la FSF) y contarlo aquí en el foro, pero el problema es que no existen binarios de esta librería y para usarla habría que compilarla (no creo que sea complicado).

Así que, si alguien sabe como hacerlo, o puede orientarme sobre como encarar el uso de la librería LibreDWG, yo me animo a investigar que se puede extraer de los archivos dwg mediante esta.


-----------------------------------
vuott
Viernes, 15 Enero 2016, 16:07

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29660"]pero no he logrado hacerlo funcionar, me da un error diciendo que no encuentra la librería dxflib.[/quote]

Simplemente tienes que instalar el paquete: [i][color=#B20000]libdxflib-dev[/color][/i] !


Saludos


-----------------------------------
razaAztk
Viernes, 15 Enero 2016, 16:09

Re: LibreDWG En Gambas
-----------------------------------
Leete lo sig: https://libreplanet.org/wiki/Group:LibreDWG

Saludos!


-----------------------------------
tincho
Viernes, 15 Enero 2016, 16:35

Re: LibreDWG En Gambas
-----------------------------------
[quote user="razaAztk" post="29663"]Leete lo sig: https://libreplanet.org/wiki/Group:LibreDWG[/quote]
ok, lo acabo de imprimir y probare a ver que logro hacer, ya que no tengo experiencia en compilar o trabajar con git etc. pero bueno alguna vez hay que empezar no?
Lo que quiero hacer es "leer" los bloques insertados en un plano dwg y extraer sus coordenadas layer color y tipo de linea.

Saludos.


-----------------------------------
vuott
Viernes, 15 Enero 2016, 17:25

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29665"] pero bueno alguna vez hay que empezar no?[/quote]
Instala la libreria y despues cuéntanos que archivos [i]header[/i] tienes cargados en [i]/usr/include/...[/i] de aquella libreria.



[quote user="tincho" post="29665"]Lo que quiero hacer es "leer" los bloques insertados en un plano dwg y extraer sus coordenadas layer color y tipo de linea.[/quote]
Me [i]parece[/i] [img]http://www.allsmileys.com/files/kolobok/misc/84.gif[/img] que el mi programito  con [i]libdxflib[/i] (que antes mencionaste) hace lo que quieres.
Mira los resultados en console leyendo un file [i].dxf[/i] :

[quote]LAYER: 0 flags: 0
  Attributes: Layer: ,  Color: 250 Width: 100 Type: CONTINUOUS
LAYER: mainlayer flags: 0
  Attributes: Layer: ,  Color: 1 Width: 100 Type: CONTINUOUS
LAYER: anotherlayer flags: 0
  Attributes: Layer: ,  Color: 250 Width: 100 Type: CONTINUOUS
POINT    (10,000, 45,000,  0,000)
  Attributes: Layer: mainlayer,  Color: BYLAYER Width: BYLAYER Type: BYLAYER
LINE     (25,000, 30,000,  0,000) (100,000, 120,000,  0,000)
  Attributes: Layer: mainlayer,  Color: BYLAYER Width: BYLAYER Type: BYLAYER[/quote]


-----------------------------------
tincho
Viernes, 15 Enero 2016, 18:50

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29667"]Instala la libreria y despues cuéntanos que archivos [i]header[/i] tienes cargados en [i]/usr/include/...[/i] de aquella libreria.[/quote]

Compilacion de la libreria libredwg
sudo apt-get dist-upgrade :mryellow: 
sudo apt-get install git-core git :mryellow: 
sudo apt-get install git-core git :mryellow: 
git clone git://git.sv.gnu.org/libredwg.git :mryellow: 
sudo apt-get install build-essential gcc autoconf libtool
sudo apt-get install swig :mryellow: 
sudo apt-get install texinfo :mryellow: 
sudo apt-get install python-dev :mryellow: 
sh autogen.sh :mryellow: 
./configure --enable-trace :cry:  configure: error: Install libxml-2.0 first
Intento instalar libxml-2.0 y no existe, entonces intento libxm y tampoco va :cry: 

make  :cry:  tampoco funciona, supongo que por lo anterior
make: *** No se especificó ningún objetivo y no se encontró ningún makefile.  Alto.

sudo make install :cry: 
make: *** No hay ninguna regla para construir el objetivo «install».  Alto.

make check :cry: 
make: *** No hay ninguna regla para construir el objetivo «check».  Alto.

[quote user="vuott" post="29667"]Me [i]parece[/i] que el mi programito  con [i]libdxflib[/i] (que antes mencionaste) hace lo que quieres.[/quote]
Creo que si puede servir para hacer eso, pero hace un crash y no puede continuar la ejecucion del mismo.
[img]http://foro.gambas-es.org/files/images/2590/dxf_test.jpg[/img]
saludos.


-----------------------------------
jguardon
Viernes, 15 Enero 2016, 19:56

Re: LibreDWG En Gambas
-----------------------------------
[quote]configure: error: Install libxml-2.0 first[/quote]

No recuerdo en qué sistema estás trabajando, pero si es Debian, Ubuntu o derivados, puedes buscar el paquete de librería con aptitude (recuerda que usamos paquetes de desarrollo con el sufijo -dev)

[cell class=spoiler][font=Courier New]aptitude search libxml.*dev

p   libghc-libxml-sax-dev           - bindings for libXML2 SAX                  
v   libghc-libxml-sax-dev-0.7.2-31f -                                           
v   libglobus-libxml2-dev           -                                           
p   libxml++2.6-dev                 - C++ interface to the GNOME XML library (li
p   libxml-light-ocaml-dev          - mininal XML parser and printer for OCaml (
v   libxml-light-ocaml-dev-bmwk7    -                                           
p   libxml-security-c-dev           - C++ library for XML Digital Signatures (de
p   [highlight=#FFFFAA]libxml2-dev                     - Development files for the GNOME XML librar[/highlight]
p   libxmlada4.1-dev                - XML/Ada, a full XML suite for Ada programm
p   libxmlezout2-dev                - Easy-to-use library for emitting XML from 
p   libxmlm-ocaml-dev               - OCaml xml manipulation module             
v   libxmlm-ocaml-dev-iu033         -                                           
p   libxmlplaylist-ocaml-dev        - Playlist parser for various xml formats   
v   libxmlplaylist-ocaml-dev-yukj2  -                                           
v   libxmlrpc-c++-dev               -                                           
p   libxmlrpc-c++4-dev              - lightweight RPC library based on XML and H
v   libxmlrpc-c-dev                 -                                           
p   libxmlrpc-c3-dev                - lightweight RPC library based on XML and H
p   libxmlrpc-core-c3-dev           - lightweight RPC library based on XML and H
p   libxmlrpc-epi-dev               - Development files for libxmlrpc-epi0, a XM
p   libxmlrpc-light-ocaml-dev       - XmlRpc-Light is an XmlRpc library written 
v   libxmlrpc-light-ocaml-dev-j5a91 -                                           
p   libxmlsec1-dev                  - Development files for the XML security lib
p   libxmltok1-dev                  - XML Parser Toolkit, developer libraries   
p   libxmltooling-dev               - C++ XML parsing library with encryption su[/font][/cell]

Ahora bastaría con hacer [b]sudo apt-get install libxml2-dev[/b]

Luego de eso, creo que ya podrás compilar libredwg

Saludos


-----------------------------------
tincho
Viernes, 15 Enero 2016, 20:04

Re: LibreDWG En Gambas
-----------------------------------
[quote user="jguardon" post="29675"]Ahora bastaría con hacer [b]sudo apt-get install libxml2-dev[/b][/quote]
ok, si es esa, la instale y avance un paso mas, pero ahora estoy estancado en la vinculación con python, ya que me aparece el siguiente error.

[i]configure: error: 
  Could not link test program to Python. Maybe the main Python library has been
  installed in some non-standard library path. If so, pass it to configure,
  via the LDFLAGS environment variable.
  Example: ./configure LDFLAGS="-L/usr/non-standard-path/python/lib"
  ============================================================================
   ERROR!
   You probably have to install the development version of the Python package
   for your distribution.  The exact name of this package varies among them.
  ============================================================================[/i]

Por lo que leo aquí habría que indicar la carpeta de python pero resulta que hay tres, la 2.7 la 3 y la 3.4,  :shock:  cual es la ganadora?
... O tal vez hay que instalar la versión de python que no es de desarrollo?  :???: 

Estoy buscando por diversos sitios alguna respuesta pero no he encontrado nada de momento.

saludos.


-----------------------------------
vuott
Viernes, 15 Enero 2016, 21:50

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29669"]
pero hace un crash y no puede continuar la ejecucion del mismo.
[/quote]

Ahora hay la versión [color=#E50000]0.0.2[/color] (la tuya es 0.0.1).

Prueba con la nueva versión que allì yo he sostituido:
http://foro.gambas-es.org/viewtopic.php?f=1&t=4496

Saludos


-----------------------------------
tincho
Viernes, 15 Enero 2016, 22:29

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29679"]Prueba con la nueva versión que allì yo he sostituido[/quote]
Perfecto crack, funciona.
Mañana me pondre a investigar como usarlo.
Saludos.


-----------------------------------
vuott
Sabado, 16 Enero 2016, 03:09

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29680"]Perfecto crack[/quote]

.......[i]crack[/i] ?   [img]http://forum.ubuntu-it.org/images/smilies/congiuntivite.gif[/img]


-----------------------------------
tincho
Sabado, 16 Enero 2016, 14:34

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29683"].......[i]crack[/i] ?   [img]http://forum.ubuntu-it.org/images/smilies/congiuntivite.gif[/img][/quote]
"crack" en el sentido de crack del futbol, estrella del campeonato, el que marca la diferencia, alguien que destaca en lo que hace por la calidad de su desempeño. ;-)


-----------------------------------
tincho
Sabado, 16 Enero 2016, 17:24

Re: LibreDWG En Gambas
-----------------------------------
Compilación de la librería libreDWG, intento 3, que es el que funciono. :mryellow: 
[b]Pasos a seguir:[/b]
[b]Paquetes[/b]
[code linenumbers=false syntax=gambas]sudo apt-get install git-core git build-essential gcc autoconf libtool swig texinfo python-dev libxml2-dev dejagnu libssl-dev[/code]
[b]Descarga[/b]
[code linenumbers=false syntax=gambas]git clone git://git.sv.gnu.org/libredwg.git[/code]
[b]Compilacion[/b]
[code linenumbers=false syntax=gambas]cd libredwg
sh autogen.sh
./configure --enable-trace (this will enable debugging messages)
make
sudo make install
make check[/code]
[b]Brindis numero uno[/b] :mryellow:


-----------------------------------
vuott
Sabado, 16 Enero 2016, 17:49

Re: LibreDWG En Gambas
-----------------------------------
Vale, ...y ahora ?


-----------------------------------
tincho
Sabado, 16 Enero 2016, 18:29

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29695"]Vale, ...y ahora ?[/quote]
Estoy buscando algún ejemplo en internet de alguien que haya usado la librería para ver como lo hace, de momento encontré esta información.
[url=https://github.com/ArchimedesCAD/libredwg]AchimedesCAD (tu ya lo conoces este sitio, pues lo tensionaste antes en otro post)
[url=http://www.iwriteiam.nl/Ha_HTCABFF.html]How to crack a Binary File Format
[url=http://wiki.xentax.com/index.php/DGTEFF]DGTEFF Exploring and examining file formats

Por lo que estoy analizando, hay dos partes, la parte A que es la de acoplar la librería a gambas, y la parte B de entender internamente como es el archivo dwg.
Para la parte A creo que tu podrás decirnos algo, para la parte B estoy contactando a un amigo que desarrolla programas en C para manejar archivos de Autocad, pero no se cuales preguntas formularle, tal vez seria una ayuda para cuando exista el vinculo entre gambas y libredwg.
Que piensas Vuott? como lo ves?

Bueno ya nos dirás algo, si tienes ganas y tiempo de investigar.

Saludos


-----------------------------------
vuott
Sabado, 16 Enero 2016, 18:40

Re: LibreDWG En Gambas
-----------------------------------
Bueno, vamos " [i]per gradus[/i] ".

Primum:

Puede decirme si en la carpeta " [i]/usr/lib[/i] " o en la carpeta " [i]/usr/lib/x86_64-linux-gnu[/i] " hay alguna referencia a librerias dinamicas [color=#A50000][b].so[/b][/color] del recurso [i]libredwg[/i] ?  Por ejemplo:  un file parecido a  [color=#720000]libredwg.so[/color] ...o nombres similares.


-----------------------------------
tincho
Sabado, 16 Enero 2016, 19:12

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29698"]Puede decirme si en la carpeta " [i]/usr/lib[/i] " o en la carpeta " [i]/usr/lib/x86_64-linux-gnu[/i] " hay alguna referencia a librerias dinamicas [color=#A50000][b].so[/b][/color] del recurso [i]libredwg[/i] ?  Por ejemplo:  un file parecido a  [color=#720000]libredwg.so[/color] ...o nombres similares.[/quote]

/usr/local/lib/libredwg.la
/usr/local/lib/libredwg.so.0.0.0

./libredwg/bindings/python/.libs/_libredwg.so.0.0.0T
./libredwg/bindings/python/.libs/_libredwg.so
./libredwg/bindings/python/.libs/_libredwg.so.0.0.0
./libredwg/bindings/python/.libs/_libredwg.so.0
./libredwg/src/.libs/libredwg.so.0
./libredwg/src/.libs/libredwg.so
./libredwg/src/.libs/libredwg.so.0.0.0


-----------------------------------
vuott
Sabado, 16 Enero 2016, 20:49

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29699"]/usr/local/lib/libredwg.so.0.0.0[/quote]
Encontré esta libreria en internet y la descargué.

Bueno probé este test muuy sencillo:
https://github.com/ArchimedesCAD/libredwg/blob/master/examples/test.c
que solo lee un archivo .dwg .
Aquì la su traducción a Gambas:
[code linenumbers=false syntax=gambas]Library "/usr/local/lib/libredwg:0.0.0"

' int dwg_read_file(char *filename, Dwg_Data * dwg)
Private Extern dwg_read_file(filename As String, dwg As Pointer) As Integer

Public Sub Main()

  Dim filename_in As String
  Dim p_dwg As Pointer
  Dim err As Integer
  
    filename_in = "/ruta/del/archivo.dwg"
    
' Asignación de memoria para el Puntero:
    p_dwg = Alloc(2832)

' Lee el archivo .dwg:
    err = dwg_read_file(filename_in, p_dwg)
    If err Then
      Error.Raise("Imposible leer el archivo " & filename_in & " !")
    Else
      Print "¡La lectura del archivo ha tenido éxito!"
    Endif

' Libera la memoria:
    Free(p_dwg)

End[/code]

Este codigo funziona.


-----------------------------------
tincho
Sabado, 16 Enero 2016, 21:13

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29700"]Este codigo funziona.[/quote]
ok, ya esta, me aparece el mensaje "¡La lectura del archivo ha tenido éxito!"

Ahora como navego o busco por el archivo, puedes orientarme?
Se puede obtener algo así como una string cuando se hace file.load(archivo.txt) ??

saludos.


-----------------------------------
vuott
Sabado, 16 Enero 2016, 21:23

Re: LibreDWG En Gambas
-----------------------------------
No conozco este recurso dwg; [i]supongo[/i] que tu tienes que [i]decodificar[/i] el archivo .dwg cargado.

Debes buscar un exemplo en C de lo que te sirve, asì podremos convertirlo[img]http://discuss.queenonline.com/images/smilies/tomato.gif[/img]en Gambas.


uhmmmm......hace falta entender si algunas informaciones pueden ser extrapoladas por algunos miembros de las Estructuras de la librería [i]libredwg[/i] .


-----------------------------------
vuott
Domingo, 17 Enero 2016, 01:15

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29700"]Aquì la su traducción a Gambas:
.......
Este codigo funziona.[/quote]

Bueno, [i]tincho[/i], busqué esta pagina web:
 https://knowledge.autodesk.com/support/autocad/downloads/caas/downloads/content/autocad-sample-files.html

Tincho, intenta utilizar con el mi programito los archivos ejemplos que estan en:  " [i]AutoCAD 2010 Sample Files[/i] "  y mira la console lo que muestra.

saludos


......

opss   :oops: 
Compartiendo todo eso con los otros miembros del foro.    :roll: 

Bueno, amigos, como probar aquel mi codigo traducido de el C ?

[b]1[/b]) Descargad la libreria .so adjunta abajo (...claramente... descomprimidla).

[b]2[/b]) Pónedla en una carpeta (por ejemplo en: /tmp ).

[b]3[/b]) en un proyecto Gambas pegad este codigo:
[code linenumbers=false syntax=gambas]Library "/tmp/libredwg:0.0.0"      ' He puesto la libreria en /tmp  !!!

' int dwg_read_file(char *filename, Dwg_Data * dwg)
Private Extern dwg_read_file(filename As String, dwg As Pointer) As Integer


Public Sub Main()

  Dim filename_in As String
  Dim p_dwg As Pointer
  Dim err As Integer
  
    filename_in = "/ruta/del/archivo.dwg"
    
' Asignación de memoria para el Puntero:
    p_dwg = Alloc(2832)

' Lee el archivo .dwg:
    err = dwg_read_file(filename_in, p_dwg)
    If err Then
      Error.Raise("Imposible leer el archivo " & filename_in & " !")
    Else
      Print "\n¡La lectura del archivo ha tenido éxito!"
    Endif

' Libera la memoria:
    Free(p_dwg)

End[/code]

[b]4[/b]) descargad un archivo ejemplo en la sección  " [i]AutoCAD 2010 Sample Files[/i] " de esta pagina web:
https://knowledge.autodesk.com/support/autocad/downloads/caas/downloads/content/autocad-sample-files.html

[b]5[/b]) Usadlo en el codigo.

[b]6[/b]) Mirad lo que es escrito en console.


-----------------------------------
tincho
Domingo, 17 Enero 2016, 18:31

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29708"]
[b]1[/b]) Descargad la libreria .so adjunta abajo (...claramente... descomprimidla).
[/quote]
Yo he usado la libreria original de gnu, que descargue y compile como describo antes en [url=http://foro.gambas-es.org/viewtopic.php?f=5&t=5100&start=10]"Compilación de la librería libreDWG, intento 3"

[quote user="vuott" post="29708"]
[b]2[/b]) Pónedla en una carpeta (por ejemplo en: /tmp ).
[/quote]
La ubucación de la libreria es [b]/usr/local/lib/libredwg.so.0.0.0[/b]


[quote user="vuott" post="29708"]
[b]3[/b]) en un proyecto Gambas pegad este codigo:
[/quote]
Ok

[quote user="vuott" post="29708"]
[b]4[/b]) descargad un archivo ejemplo en la sección  " [i]AutoCAD 2010 Sample Files[/i] " de esta pagina web:
[/quote]
ok

[quote user="vuott" post="29708"]
[b]5[/b]) Usadlo en el codigo.
[/quote]
ok
[quote user="vuott" post="29708"]
[b]6[/b]) Mirad lo que es escrito en console.
[/quote]
No escribe nada, devuelve en err = -1

¿Como es el procedimiento que usaste para compilar tu librería .so? ya que tienen diferente tamaño en comparación a la que genera el procedimiento 3 que explico antes.
¿Que es lo que te aparece a ti en la consola?

Saludos.


-----------------------------------
vuott
Domingo, 17 Enero 2016, 20:35

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29712"]¿Como es el procedimiento que usaste para compilar tu librería .so? ya que tienen diferente tamaño en comparación a la que genera el procedimiento 3 que explico antes.[/quote]
Sì, lo vì.
No he compilado la libreria .so que yo usé, la descargué - ya compilada (para Fedora) - desde este enlace:
http://download.opensuse.org/repositories/home:/zhonghuaren/Fedora_23/x86_64/libredwg-0.4-6.1.x86_64.rpm (Binary package)


[quote user="tincho" post="29712"]¿Que es lo que te aparece a ti en la consola?[/quote]
El texto es muuy largo.

Ahora he usado el file " plot_screening_and_fill_patterns.dwg ", que puedes hallar en la sección [i]AutoCAD 20[color=#B20000]10[/color] Sample Files[/i] de esta pagina web:
https://knowledge.autodesk.com/support/autocad/downloads/caas/downloads/content/autocad-sample-files.html

Bueno, abajo como adjunto un archivo de texto donde puedes ver lo que apareció en la console.

Saludos


-----------------------------------
tincho
Domingo, 17 Enero 2016, 23:39

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29715"]...he usado el file " plot_screening_and_fill_patterns.dwg[/quote]
este archivo funciono, supongo que porque es versión 2007, y antes estaba probando con otro que es 2011.
Para verificar la version del dwg hay que abrir el archivo con nano, y al principio del archivo esta alguno de los siguientes textos:
[b]AC1024[/b] AutoCAD 2011
AC1024 AutoCAD 2010
[b]AC1021[/b] AutoCAD 2007/2008/2009
AC1018 AutoCAD 2004/2005/2006
AC1015 AutoCAD 2000/2000i/2002
AC1014 Release 14
AC1012 Release 13
AC1009 Release 11/12
AC1006 Release 10
La libreria es compatible hasta erchivos [b]AC1021[/b] pero no tengo en clario si para 2008/2009, pues solo se mensiona 2007.

Luego, también instale la librería [b]pslib[/b] (en linuxmint) supongo que en debian también. y me aparecieron los textos que comentas.
Una pregunta, ¿Debería aparecer por alguna parte algun fichero .ps? yo no he encontrado ninguno.

Esto va tomando color eh!! en cualquier momento tenemos un CAD gambas que lea dwg.

Saludos.


-----------------------------------
vuott
Lunes, 18 Enero 2016, 01:05

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29716"] antes estaba probando con otro que es 2011.[/quote]
Lo sospeché.    :roll:



[quote user="tincho" post="29716"][b]AC1021[/b] AutoCAD 2007/2008/2009[/quote]
Es como un [i]magic number[/i] del fichero.
Para verlo con Gambas puedes usar este simple codigo:
[code linenumbers=false syntax=gambas]Public Sub Main()

  Dim s As String
  
    s = File.Load("/ruta/del/archivo.dwg")

    Print Left(s, 6)

End[/code]


[quote user="tincho" post="29716"]Una pregunta, ¿Debería aparecer por alguna parte algun fichero .ps? yo no he encontrado ninguno.[/quote]
No comprendo la pregunta. Es decir ?  :neutral: 
Vas buscando en internet ficheros .ps ? O que ?


-----------------------------------
tincho
Lunes, 18 Enero 2016, 10:57

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29717"]Para verlo con Gambas puedes usar este simple codigo[/quote]
Si es un especie de número mágico, que permite hacer una primera verificación de versión de archivo y el código que propones lo voy a incluir en [b]Destornishador[/b] para "leer" esa información del archivo dwg.
Lo del archivo .ps te lo preguntaba por si el código anterior lo generaba, pero veo que no, que esa es la etapa siguiente cuando logremos "traducir" [b]dwg_ps.c[/b]
Por cierto. ¿Como puedo hacer para traducir un [b]archivo.c[/b] a [b]gambas.class[/b]? ¿Hay un método? ¿Puedes darme un pequeño cursillo para hacer el intento de traducción por mi cuenta?

Saludos.


-----------------------------------
vuott
Lunes, 18 Enero 2016, 13:12

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29719"]¿Como puedo hacer para traducir un [b]archivo.c[/b] a [b]gambas.class[/b]? ¿Hay un método? ¿Puedes darme un pequeño cursillo para hacer el intento de traducción por mi cuenta?[/quote]

Muy simple, tincho: .......estudiar y aprender el lenguaje [color=#B20000]C[/color] !    :grin: 


Saludos


-----------------------------------
tincho
Lunes, 18 Enero 2016, 15:03

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29720"]Muy simple, tincho: .......estudiar y aprender el lenguaje [color=#B20000]C[/color] !    :grin: [/quote]
Lo sabia , jajaja!!! :lol:


-----------------------------------
vuott
Martes, 19 Enero 2016, 17:58

Re: LibreDWG En Gambas
-----------------------------------
[i]tincho[/i] me pedió que volviera disponible para Gambas, usando [i]Shell[/i], este programa escrito en C:
   https://github.com/ArchimedesCAD/libredwg/blob/master/examples/load_dwg.c

Bueno, he modificado un po' aquel codigo y añadí unas lineas para completarlo y para permitir a Gambas que coja unas informaciones enviadas por aquella aplicación escrita en C.

[u]Hace falta por supuesto que sea instalado[/u] el recurso [i]LibreDWG[/i], como fue explicado en estos enlances:
http://foro.gambas-es.org/show_post.php?p=29669
http://foro.gambas-es.org/show_post.php?p=29675
http://foro.gambas-es.org/show_post.php?p=29676

El nuevo codigo en C será:
[code linenumbers=false syntax=c]/*****************************************************************************/
/*  LibreDWG - free implementation of the DWG file format                    */
/*                                                                           */
/*  Copyright (C) 2009 Free Software Foundation, Inc.                        */
/*  Copyright (C) 2010 Thien-Thi Nguyen                                      */
/*                                                                           */
/*  This library is free software, licensed under the terms of the GNU       */
/*  General Public License as published by the Free Software Foundation,     */
/*  either version 3 of the License, or (at your option) any later version.  */
/*  You should have received a copy of the GNU General Public License        */
/*  along with this program.  If not, see <http://www.gnu.org/licenses/>.    */
/*****************************************************************************/

/*
 * load_dwg.c: load a DWG, get lines, text and circles
 * written by Felipe Castro
 * modified by Felipe Corrêa da Silva Sances
 * modified by Thien-Thi Nguyen
 * mutatum a vuott (www.gambas-it.org, foro.gambas-es.org)
 */

#include <dwg.h>
#include <stdio.h>

void
add_line(double x1, double y1, double x2, double y2)
{
  
	printf("%lf", x1);
	printf("%lf", y1);
	printf("%lf", x2);
	printf("%lf", y2);

}

void
add_circle(double x, double y, double R)
{
  
	printf("%lf", x);
	printf("%lf", y);
	printf("%lf", R);

}

void
add_text(double x, double y, char *txt)
{
  
	printf("%lf", x);
	printf("%lf", y);
	printf("%s", txt);

}


int main (int argc, char *argv[]) {
  unsigned int i;
  int success;
  Dwg_Data dwg;

  dwg.num_objects = 0;
  success = dwg_read_file(argv[1], &dwg);
  if (success) {
	printf("Imposible cargar el archivo %s !\n", argv[1]);
        return success;
  }

  for (i = 0; i < dwg.num_objects; i++)
    {
      Dwg_Entity_LINE *line;
      Dwg_Entity_CIRCLE *circle;
      Dwg_Entity_TEXT *text;

      switch (dwg.object[i].type)
        {
      case DWG_TYPE_LINE:
        line = dwg.object[i].tio.entity->tio.LINE;
        add_line(line->start.x, line->end.x, line->start.y, line->end.y);
        break;
      case DWG_TYPE_CIRCLE:
        circle = dwg.object[i].tio.entity->tio.CIRCLE;
        add_circle(circle->center.x, circle->center.y, circle->radius);
        break;
      case DWG_TYPE_TEXT:
        text = dwg.object[i].tio.entity->tio.TEXT;
        add_text(text->insertion_pt.x, text->insertion_pt.y, text->text_value);
        break;
        }
    }

  dwg_free(&dwg);

  return (0);

}[/code]
Guardamos este codigo en un simple archivo de texto, por ejemplo en la ruta: [color=#0072FF]/tmp/load_dwg.c[/color] 
Este codigo debe ser compilado como sigue:
 [color=#BF0000]gcc -o /tmp/load_dwg /tmp/load_dwg.c -lredwg[/color]


El codigo Gambas para coger los valores enviados por la aplicación [i]load.dwg.c[/i] será muy sencillo:
[code linenumbers=false syntax=gambas]Private pr As Process


Public Sub Main()

' Abre el programa "load_dwg", pasandole un archivo .dwg, y lo maneja con "Process" poniendolo tambien en "observación":
  pr = Shell "/tmp/load_dwg /ruta/de/un/archivo.dwg" For Read As "Lee"

End


Public Sub Lee_Read()   ' Si estan entrando datos, será activata esta sub-routine

  Dim s As String

   Read #pr, s, -256
   Print s

End[/code]


Gracias a [i]tincho[/i] por sus test de estos codigos.


-----------------------------------
tincho
Martes, 19 Enero 2016, 19:22

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29735"]Gracias a [i]tincho[/i] por sus test de estos códigos.[/quote]
El que debo dar las gracias soy yo. aprendí a usar las librerías de [b]C[/b] desde la consola, es mas, acá pongo una modificación de [b]load_dwg[/b] para que saque la información mas ordenada (no se si sera el estilo mas adecuado de usar printf).

[code linenumbers=false syntax=c]void
add_line(double x1, double y1, double x2, double y2)
{
printf("[Lin]|");
printf("X1:");
printf("%lf", x1);
printf("|");

printf("Y1:");
printf("%lf", y1);
printf("|");

printf("X2:");
printf("%lf", x2);
printf("|");

printf("Y2: ");
printf("%lf", y2);
printf("\n");

}

void
add_circle(double x, double y, double R)
{

printf("[Cir]|");

printf("X:");
printf("%lf", x);
printf("|");

printf("Y:");
printf("%lf", y);
printf("|");

printf("R:");
printf("%lf", R);
printf("\n");

}

void
add_text(double x, double y, char *txt)
{

printf("[Tex]|");

printf("X:");
printf("%lf", x);
printf("|");

printf("Y:");
printf("%lf", y);
printf("|");

printf("T:");
printf("%s", txt);
printf("\n");

}

void
add_insert(double x, double y)
{

printf("[Blk]|");

printf("X:");
printf("%lf", x);
printf("|");

printf("Y:");
printf("%lf", y);
//printf("|");

//printf("N:");
//printf("%s", txt);
// Aca le quiero agregar el nombre del bloque pero no se como todavia.
printf("\n");[/code]

y luego esta

[code linenumbers=false syntax=c]case DWG_TYPE_INSERT:
insert = dwg.object[i].tio.entity->tio.INSERT;
add_insert(insert->ins_pt.x, insert->ins_pt.y);
break;[/code]

Saludos.


-----------------------------------
vuott
Martes, 19 Enero 2016, 23:09

Re: LibreDWG En Gambas
-----------------------------------
[i]vuottincho[/i] siempre gana !   :grin:


-----------------------------------
tincho
Miercoles, 20 Enero 2016, 01:19

Re: LibreDWG En Gambas
-----------------------------------
Vuottt, puedes poner tu código de [b]dwg_ps.c[/b] por favor, ya que el original mio no funciona, ni siquiera me saca el .ps ahora, o tal vez estoy haciendo algo mal.

Otro tema:
Estoy tratando de dibujar las lineas del dwg en un DrawingArea, pero me tope con dos problemas, el primero es mm a pixeles y el segundo es el sistema de coordenadas, en el dwg el eje X va de izquierda a derecha el eje Y va de abajo hacia arriba, pero en el DrawingArea el eje Y va al revés, o sea de arriba hacia abajo.

¿Alguien puede decirme por donde ir para generar pdf desde dibujos de DrawingArea?

saludos.


-----------------------------------
vuott
Miercoles, 20 Enero 2016, 01:35

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29738"]Otro tema:
Estoy tratando de dibujar las lineas del dwg en un DrawingArea, pero me tope con dos problemas....[/quote]
[img]http://www.mortalkombatunited.com/public/style_emoticons/default//images/smilies2/SmileySuicide.gif[/img]


-----------------------------------
vuott
Jueves, 21 Enero 2016, 14:15

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29716"]Luego, también instale la librería [b]pslib[/b][/quote]
tincho me pidió hacer disponible para Gambas este programa
  https://github.com/ArchimedesCAD/libredwg/blob/master/examples/dwg_ps.c

Yo he escrito una aplicación con recursos Gambas, funciones externas y un po' de puro C.
Hace falta instalar en el sistema la libreria [i]pslib[/i].
[code linenumbers=false syntax=gambas]Private Const H As Integer = 2000


Library "libredwg:0.0.0"

' int dwg_read_file(char *filename, Dwg_Data * dwg)
' Open filename and decode it, saving information into dwg.
Private Extern dwg_read_file(filename As String, dwg As Pointer) As Integer

' double dwg_model_x_min(Dwg_Data *)
Private Extern dwg_model_x_min(Dwg_Data As Pointer) As Float

' double dwg_model_x_max(Dwg_Data *)
Private Extern dwg_model_x_max(Dwg_Data As Pointer) As Float

' double dwg_model_y_min(Dwg_Data *)
Private Extern dwg_model_y_min(Dwg_Data As Pointer) As Float

' double dwg_model_y_max(Dwg_Data *)
Private Extern dwg_model_y_max(Dwg_Data As Pointer) As Float


Library "libps:0.4.5"

' void PS_boot(void)
' Initialize library.
Private Extern PS_boot()

' PSDoc * PS_new(void)
' Creating a new PostScript document object.
Private Extern PS_new() As Pointer

' int PS_open_file(PSDoc *psdoc, const char *filename)
' Opens a file for output.
Private Extern PS_open_file(psdoc As Pointer, filename As String) As Integer

' void PS_set_info(PSDoc *p, const char *key, const char *val)
' Sets information fields of document.
Private Extern PS_set_info(p As Pointer, key As String, valS As String)

' void PS_begin_page(PSDoc *psdoc, float width, float height)
' Start a new page.
Private Extern PS_begin_page(psdoc As Pointer, width As Single, height As Single)

' void PS_scale(PSDoc *psdoc, float x, float y)
' Sets scaling factor.
Private Extern PS_scale(psdoc As Pointer, x As Single, y As Single)

' void PS_translate(PSDoc *psdoc, float x, float y)
' Sets translation.
Private Extern PS_translate(psdoc As Pointer, x As Single, y As Single)

' void PS_circle(PSDoc *psdoc, float x, float y, float radius)
' Draws a circle.
Private Extern PS_circle(psdoc As Pointer, x As Single, y As Single, radius As Single)

' void PS_moveto(PSDoc *psdoc, float x, float y)
' Sets current point.
Private Extern PS_moveto(psdoc As Pointer, x As Single, y As Single)

' void PS_lineto(PSDoc *psdoc, float x, float y)
' Draws a line.
Private Extern PS_lineto(psdoc As Pointer, x As Single, y As Single)

' void PS_stroke(PSDoc *psdoc)
' Draws the current path.
Private Extern PS_stroke(psdoc As Pointer)

' void PS_end_page(PSDoc *psdoc)
' End a page.
Private Extern PS_end_page(psdoc As Pointer)

' void PS_close(PSDoc *psdoc)
' Closes a PostScript document.
Private Extern PS_close(psdoc As Pointer)

' void PS_delete(PSDoc *psdoc)
' Deletes all resources of a PostScript document.
Private Extern PS_delete(psdoc As Pointer)

' void PS_shutdown(void)
' Final clean up of library.
Private Extern PS_shutdown()


Library "/tmp/libadhoc"

' int Dim_dwg()
' Obtiene la dimensión de la Estructura '_dwg_struct'.
Private Extern Dim_dwg() As Integer

' void Itera_entidades(struct _dwg_struct *dwg)
' Iterar todas las entidades.
Private Extern Itera_entidades(_dwg As Pointer)


Public Sub Main()

  Dim i, rit As Integer
  Dim filename_in, filename_out As String
  Dim p_dwg As Pointer
  
    CreaSo()
  
' Obtiene la dimensión de la Estructura '_dwg_struct' y asigna memoria para el Puntero a la Estructura:
    i = Dim_dwg()
    If i = 0 Then Error.Raise("Error al obtener la dimensión !")
    p_dwg = Alloc(i)
    
    filename_in = "/ruta/del/archivo.dwg"
    
' Lee el archivo .dwg:
    rit = dwg_read_file(filename_in, p_dwg)
    If rit Then
      Error.Raise("Imposible leer el archivo " & filename_in & " !")
    Else
      Print "¡La lectura del archivo ha tenido éxito!"
    Endif
    
    filename_out = File.BaseName(filename_in) & ".ps"
    
    Crea_Postscript(p_dwg, filename_out)

' Libera la memoria:
    Free(p_dwg)

End


Private Procedure Crea_Postscript(dwg As Pointer, exitus As String)
  
  Dim dx, dy, scale_x, scale_y, scale As Single
  Dim rit As Integer
  Dim ps As Pointer
  
' Inizialización de la libreria ps:
    PS_boot()
    ps = PS_new()
    
    rit = PS_open_file(ps, exitus)
    If rit < 0 Then Error.Raise("Imposible escribir un archivo PostScript !")
    
    PS_set_info(ps, "Creator", "dwg_ps")
    PS_set_info(ps, "Author", "LibreDWG example")
    PS_set_info(ps, "Title", "DWG to Postscript example")
    PS_set_info(ps, "Keywords", "dwg, postscript, conversion, CAD, plot")
    
    dx = (dwg_model_x_max(dwg) - dwg_model_x_min(dwg))
    dy = (dwg_model_y_max(dwg) - dwg_model_y_min(dwg))
    scale_x = dx / (dwg_model_x_max(dwg) - dwg_model_x_min(dwg))
    scale_y = dy / (dwg_model_y_max(dwg) - dwg_model_y_min(dwg))
    scale = 25.4 / 72                                            ' pt: mm
    PS_begin_page(ps, dx / scale, dy / scale)
    scale *= IIf(scale_x > scale_y, scale_x, scale_y)
    PS_scale(ps, scale, scale)
    PS_translate(ps, - dwg_model_x_min(dwg), - dwg_model_y_min(dwg))
  
    PS_circle(ps, 0, 0, H)
    PS_moveto(ps, 0, H)
    PS_lineto(ps, 0, - H)
    PS_moveto(ps, - H, 0)
    PS_lineto(ps, H, 0)
    PS_stroke(ps)
    
    Itera_entidades(dwg, ps)
    
' Terminando:
    PS_end_page(ps)
    PS_close(ps)
    PS_delete(ps)
    PS_shutdown()
    
End


Private Procedure CreaSo()
  
  File.Save("/tmp/libadhoc.c", "#include <stdio.h>\n" &
            "#include <dwg.h>\n" &
            "#include <libps/pslib.h>" &
            "\n\n" &
          "int Dim_dwg() {\n" &
            "   return sizeof(struct _dwg_struct);\n}" &
            "\n\n" &
          "void Itera_entidades(struct _dwg_struct *dwg, PSDoc *ps){\n" &
            "   Dwg_Object *obj;\n" &
            "   int i;\n" &
            "   for (i = 0; i < dwg->num_objects; i++) {\n" &
            "     obj = &dwg->object[i];\n" &
            "     if (obj->supertype = DWG_SUPERTYPE_UNKNOWN)\n" &
            "       continue;\n" &
            "     if (obj->type = DWG_SUPERTYPE_OBJECT)\n" &
            "       continue;\n" &
            "     if (obj->tio.entity->entity_mode == 0)\n" &
            "       continue;\n" &
            "     if (obj->type == DWG_TYPE_LINE) {\n" &
            "       Dwg_Entity_LINE* line;\n" &
            "       line = obj->tio.entity->tio.LINE;\n" &
            "       PS_moveto(ps, line->start.x, line->start.y);\n" &
            "       PS_lineto(ps, line->end.x, line->end.y);\n" &
            "       PS_stroke(ps);\n     }\n   }\n}")

  Shell "gcc -o /tmp/libadhoc.so /tmp/libadhoc.c -shared -lredwg -lps" Wait 
  
End[/code]


-----------------------------------
tincho
Jueves, 21 Enero 2016, 23:16

Re: LibreDWG En Gambas
-----------------------------------
Bueno probé el código, pero me dice que "H" no esta definido. :shock: 
¿H es la altura de la hoja?

saludos.


-----------------------------------
vuott
Jueves, 21 Enero 2016, 23:39

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29777"]pero me dice que "H" no esta definido. :shock:[/quote]

 :shock: No está definido ?
Cómo puede no estar definido? El símbolo H es una [i]Constante[/i] de tipo [i]Integer[/i] y está definido arriba, al principio del código !!!


-----------------------------------
tincho
Jueves, 21 Enero 2016, 23:58

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29778"][quote user="tincho" post="29777"]pero me dice que "H" no esta definido. :shock:[/quote]

 :shock: No está definido ?
Como puede no estar definido ? La variable H es una [i]Costante[/i] de tipo [i]Integer[/i] y está definida arriba, al principio del código !!![/quote]

Tienes razón  :roll: olvide copiar esa linea.


-----------------------------------
vuott
Sabado, 23 Enero 2016, 00:35

Re: LibreDWG En Gambas
-----------------------------------
:roll:


-----------------------------------
tincho
Domingo, 24 Enero 2016, 17:32

Re: LibreDWG En Gambas
-----------------------------------
[b]Vuott[/b]: He probado el código para convertir [b]dwg[/b] en [b]ps[/b] pero no ha funcionado, no se si por algún otro olvido por mi parte o por la librería o alguna otra razón.

[b]Comunidad[/b]: Les propongo avanzar un casillero mas y que, entre los que deseen sumarse, estudiemos la forma de conseguir los datos de mas elementos del archivo dwg, para, en principio, listarlos en un archivo de texto de unos 16 campos, pero que luego si hace falta se pueden ampliar, y luego con esos datos de forma ordenada y fácilmente manejable pasarlos a otros formatos como postcript, dxf, pdf, svg. para ello estoy trabajando con la librería [b]load_dwg.c[/b] que a su vez usa la libreria [b]dwg.c[/b]
[u]Resumen de el estado actual:[/u]
Basándonos en una librería llamada [b]libredwg[/b] que es [b]GPLv3[/b] que hay que descargar y compilar ya explicado [url=http://foro.gambas-es.org/viewtopic.php?f=5&t=5100&start=10]Compilación de la librería libreDWG, intento 3antes. logramos mediante otras librerías escritas en [b]C[/b] acceder al fichero dwg y extraer cierta información de este.
Elementos que actualmente se logran extraer: Línea, Circulo, Texto, Insert (son los bloques, pero solo sus coordenadas)
Elementos que faltarían: Arco, polilínea, multitexto, poligonos, Atributos de bloque. etc.
Además no he logrado de momento extraer el layer, color y tipo de linea de cada uno de estos elementos. ya que están en otro parte distinta al elemento y hay que analizar como estan vinculados mediante un índice o header, pero como no se nada del lenguaje [b]C[/b]
Sitios de interés: [url=https://www.gnu.org/software/libredwg/]libredwg y [url=Archimedes]https://github.com/ArchimedesCAD/libredwg
Si alguno puede mirar por favor la librería [b]load_dwg.c[/b] que puede descargar la original desde el sitio de archimedes y la que yo adjunto la que modifique para generar el extracto y ver si se da cuenta de como agregar mas elementos gráficos o agregar layer, tipo de linea y color seria de gran ayuda.

Saludos.


-----------------------------------
vuott
Martes, 26 Enero 2016, 10:45

Re: LibreDWG En Gambas
-----------------------------------
Para crear un file de formato .PS, tú podrías tambien usar los recursos del Componente [i]gb.cairo[/i] de Gambas.


-----------------------------------
tincho
Martes, 26 Enero 2016, 12:40

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29909"]Para crear un file de formato .PS, tú podrías tambien usar los recursos del Componente [i]gb.cairo[/i] de Gambas.[/quote]
si por que no?, pero de momento voy a experimentar con opengl. luego podre incursionar en cairo.
saludos.


-----------------------------------
tincho
Miercoles, 27 Enero 2016, 13:23

Re: LibreDWG En Gambas
-----------------------------------
De momento con las librerías load_dwg se puede extraer lineas, circulos, textos, inserts, y sus coordenadas (lo que esta en letras negras en la tabla) pero no logro dar con los colores, los etilos de linea y para el caso particular del insert, con el nombre del bloque.
Alguien que entienda de C y que sea italiano  :mryellow:  podría mirar las librerías dwg_ps y load_dwg?
Aquí hay una tabla de las propiedades que es necesario extraer para dibujar luego en gambas (con cairo, opengl, etc.) el documento.
Luego vendrá la etapa de como guardar dicha información, que supongo que sera en dxf por lo que se estuvo conversando en el post dxf vs dwg.
 [img]http://foro.gambas-es.org/files/images/2590/tabla_propiedades_entidades.png[/img] 

Lo interesante de extraer esa información es que luego el dibujo se puede parametrizar en una tabla sqlite por ejemplo y dibujar el formato mas una plantilla usando los datos que estén guardados en la tabla y cambiando los valores del texto, por ejemplo y así de un plumazo se pueden crear cientos de planos con un click. También se pueden medir distancias entre elementos como bloques por ejemplo, o contar cantidades de elementos para hacer cómputos de materiales.
Todo esto se podría hacer si encontráramos la forma de extraer el COLOR el LAYER y el BLOCKNAME.

Saludos.


-----------------------------------
tincho
Miercoles, 27 Enero 2016, 17:47

Re: LibreDWG En Gambas
-----------------------------------
Luego de leer mas informacion encontre que LibreDWG esta detenida, y que la que esta mas actualizada es [url=http://libdwg.sourceforge.net/en/index.html]LibDWG (que era la original que se reactivo).
Bueno el caso es que esta libreria (LibDWG) tiene un programa C que se llama [b]dwg-dump[/b] que me parece que es lo que estamos necesitando para obtener la informacion del dwg para trabajarlo en gambas.

El problema es que al intentar compilarla me dio un error y no se como continuar. (Vuott, ayuda por favor ! !)

Saludos.


-----------------------------------
vuott
Jueves, 28 Enero 2016, 00:08

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29951"]El problema es que al intentar compilarla me dio un error y no se como continuar. (Vuott, ayuda por favor ! !)[/quote]

Si no dices [u]que error[/u] te da, como te puedo ayudar ?   :mad:


-----------------------------------
tincho
Jueves, 28 Enero 2016, 00:38

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29962"][quote user="tincho" post="29951"]El problema es que al intentar compilarla me dio un error y no se como continuar. (Vuott, ayuda por favor ! !)[/quote]

Si no dices [u]que error[/u] te da, como te puedo ayudar ?   :mad:[/quote]

Es verdad, mira el adjunto que tiene la salida de la terminal.
Miira al final que estan los errores lugo de hacer make, ./configure parece que va bien.

Saludos


-----------------------------------
vuott
Jueves, 28 Enero 2016, 01:22

Re: LibreDWG En Gambas
-----------------------------------
Uh !  Error en la instalación !
No soy capáz de ayudarte.  :sad: 

[i]recipe for target 'auto_variables.c' failed[/i]
creo que no encuentra este archivo fuente.


-----------------------------------
tincho
Jueves, 28 Enero 2016, 11:00

Re: LibreDWG En Gambas
-----------------------------------
[quote user="vuott" post="29969"]Uh !  Error en la instalación !
No soy capáz de ayudarte.  :sad: 

[i]recipe for target 'auto_variables.c' failed[/i]
creo que no encuentra este archivo fuente.[/quote]

El caso es que si esta ese archivo, se encuentra en la ruta /src/auto_variables.c


-----------------------------------
vuott
Jueves, 28 Enero 2016, 14:52

Re: LibreDWG En Gambas
-----------------------------------
[quote user="tincho" post="29974"]El caso es que si esta ese archivo, se encuentra en la ruta /src/auto_variables.c[/quote]

Sí lo vi. [i]Quizás[/i] tienes que decirle adónde ir a [i]tomar[/i] aquel archivo.
No se...    :sad:


-----------------------------------
tincho
Jueves, 28 Enero 2016, 22:20

Re: LibreDWG En Gambas
-----------------------------------
Hoy me contesto el desarrollador de la librería pero no logre solucionarlo con lo que me dijo, seguiré probando.
Saludos.


-----------------------------------
tincho
Jueves, 04 Junio 2020, 22:26

Re: LibreDWG En Gambas
-----------------------------------
Bueno hay novedades en la librería ya esta en versión 0.0.10 y hay un API
Mira Vuott:
https://www.gnu.org/software/libredwg/refman/dwg_8h_source.html
Le dirijo a Vuott porque era el que estaba en este tema pero ahora tal vez alguien mas se interese.
Saludos.


