Source documentation/es: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Created page with "Luego siga los mismos pasos que seguiría para compilar FreeCAD, como se describe en la página Compilar en Linux y se resume aquí para mayor comodidad. * Obtenga el código fuente de FreeCAD y colóquelo en su propio directorio {{incode|freecad-source}}. * Crea otro directorio {{incode|freecad-build}} en el que compilarás FreeCAD y su documentación. * Configure las fuentes con {{incode|cmake}}, asegurándose de indicar el directorio de fuen...")
 
(49 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{docnav|Extra python modules|List of Commands}}


{{Docnav/es
The online source documentation is located at http://www.freecadweb.org/api/
|[[Extra python modules/es|Módulos extra python]]
|[[Contributors/es|Contribuidores]]
}}


{{TOCright}}
<div class="mw-translate-fuzzy">
El código fuente de FreeCAD está comentado para permitir la generación automática de la documentación html con [http://www.doxygen.org Doxygen].
</div>


==Vista general==
<div class="mw-translate-fuzzy">
El código fuente de FreeCAD se comenta para permitir la generación automática de documentación de programación usando [[Doxygen/es|Doxygen]], un popular sistema de documentación de código fuente. Doxygen puede documentar tanto la parte C++ como la parte Python de FreeCAD, dando como resultado páginas HTML con hipervínculos a cada función y clase documentada.
Para aquellos que quieran seguir de cerca las últimas versiones svn de FreeCAD, y que intenten echar un vistazo a la parte de c++, el primer vistazo al código fuente puede dar la sensación de que estas viendo a un erizo: no puedes discriminar de los pies a la cabeza y no sabes realmente como gogerlo!
</div>


La documentación está alojada en línea en el [https://freecad.github.io/SourceDoc/ Sitio web de FreeCAD API]. Tenga en cuenta que esta documentación puede no estar siempre actualizada; si necesita más detalles, descargue el último código fuente de FreeCAD y compile la documentación usted mismo. Si tienes preguntas urgentes sobre el código, por favor, pregúntalas en la sección de desarrolladores del [https://forum.freecadweb.org/index.php Foro de FreeCAD].
<div class="mw-translate-fuzzy">
En complemento a la wiki, la ''documentación del código fuente'' esperamos que pueda aliviar esta sensación, proporcionando un punto de entrada, y permitiendo de forma sencilla navegar a través de las docenas de archivos y directorios.
</div>


La compilación de la documentación de la API sigue los mismos pasos generales que la compilación del ejecutable de FreeCAD, como se indica en la página [[Compile_on_Linux/es|Compilar en Linux]].
<div class="mw-translate-fuzzy">
==== Construcción de la documentación del código fuente ====
</div>


[[File:FreeCAD_documentation_compilation_workflow.svg|800px]]
Si tienes Doxygen instalado, es muy sencillo construir la documentación. Vete al directorio de construcción de FreeCAD, configura tu código fuente con CMake, ejecuta

{{Caption|Flujo de trabajo general para compilar la documentación de programación de FreeCAD. Los paquetes Doxygen y Graphviz deben estar en el sistema, así como el propio código fuente de FreeCAD. CMake configura el sistema de manera que con una sola instrucción de fabricación la documentación de todo el proyecto se compila en muchos archivos HTML con diagramas.}}

<span id="Build_source_documentation"></span>
== Construcción de la documentación del código fuente ==

<span id="Complete_documentation"></span>
=== Documentación completa ===

Si tienes Doxygen instalado, es muy fácil construir la documentación. También instala [https://www.graphviz.org/ Graphviz] para poder producir diagramas que muestren las relaciones entre las diferentes clases y bibliotecas en el código de FreeCAD. Graphviz también es utilizado por [[Std_DependencyGraph/es|Gráfico de dependencia]] de FreeCAD para mostrar las relaciones entre diferentes objetos.
{{Code|code=
{{Code|code=
sudo apt install doxygen graphviz
make DevDoc
}}
}}
<div class="mw-translate-fuzzy">
y consulta los archivos html resultantes empezando por Doc/SourceDocu/html/index.html
(nota: el objetivo de DevDoc no es válido para la construcción con autotools)
</div>


Luego siga los mismos pasos que seguiría para compilar FreeCAD, como se describe en la página [[Compile_on_Linux/es|Compilar en Linux]] y se resume aquí para mayor comodidad.
The DevDoc make target above will, if graphviz is installed on your system, generate a 2Gb+ volume of data. An alternative, smaller version (~500Mb), that is the version used on http://www.freecadweb.org/api/ can also be generated by issuing instead:
* Obtenga el código fuente de FreeCAD y colóquelo en su propio directorio {{incode|freecad-source}}.
* Crea otro directorio {{incode|freecad-build}} en el que compilarás FreeCAD y su documentación.
* Configure las fuentes con {{incode|cmake}}, asegurándose de indicar el directorio de fuentes y especificar las opciones requeridas para su compilación.
* Activa la creación de la documentación usando {{incode|make}}.
{{Code|code=
{{Code|code=
git clone https://github.com/FreeCAD/FreeCAD.git freecad-source
mkdir freecad-build
cd freecad-build
cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 ../freecad-source
}}

Mientras estás dentro del directorio de construcción, da la siguiente instrucción para crear sólo la documentación.
{{Code|code=
make -j$(nproc --ignore=2) DevDoc
}}
Como se mencionó en [[Compiling (Speeding up)/es|Compilación (aceleración)]], la {{incode|-j}} opción establece el número de núcleos de CPU utilizados para la compilación. Los archivos de documentación resultantes aparecerán en el directorio.
{{Code|code=
freecad-build/doc/SourceDocu/html/
}}

El punto de entrada a la documentación es el archivo {{incode|index.html}}, que se puede abrir con un navegador web:
{{Code|code=
xdg-open freecad-build/doc/SourceDocu/html/index.html
}}

El objetivo {{incode|DevDoc}} generará una cantidad significativa de datos, alrededor de 5 GB de nuevos archivos, particularmente debido a los diagramas creados por Graphviz.

<span id="Reduced_documentation"></span>
=== Documentación reducida ===

La documentación completa usa alrededore de 3Gb de espacio en disco. Se puede generar una versión alternativa y más pequeña de la documentación, que sólo requiere unos 600 MB, con un objetivo diferente. Esta es la versión que se muestra en el [https://freecad.github.io/SourceDoc/ sitio web de FreeCAD API].
{{Code|code=
make -j$(nproc --ignore=2) WebDoc
}}

La documentación en el [https://freecad.github.io/SourceDoc/ sitio web de FreeCAD API] se genera automáticamente desde https://github.com/FreeCAD/SourceDoc. Cualquiera puede reconstruirlo y enviar un pull request:

* Bifurca el repositorio en https://github.com/FreeCAD/SourceDoc
* en su máquina: clone el código FreeCAD (si aún no lo ha hecho), cree un directorio de compilación para el documento y clone el repositorio de SourceDoc anterior en él. Ese SourceDoc se actualizará cuando reconstruyas el documento y podrás confirmar y enviar los resultados después:
{{Code|code=
git clone https://github.com/FreeCAD/FreeCAD
cd FreeCAD
mkdir build
cd build
mkdir -p doc/SourceDocu/html
cd doc/SourceDocu/html
git clone your-fork-url
cd ../../..
cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 ..
make WebDoc
make WebDoc
cd doc/SourceDocu/html
git commit
git push
}}
}}
* Vaya a su bifurcación en línea y cree un pull request.


== Otras versiones ==
Por naturaleza, la documentación del código fuente es, y siempre será, un trabajo en curso. No dudes en reconstruirla tan frecuentemente como necesites. Si caes en una inadecuación obstensible, eres libre de publicarla en los foros (nota: Sólo está realmente comprobado por completo con el proceso de construcción con cMake).
[https://iesensor.com/FreeCADDoc/0.19/ Desarrollo de FreeCAD 0.19] documentación creada por [http://forum.freecadweb.org/viewtopic.php?t=12613 qingfeng.xia].


<span id="Integrate_Coin3D_documentation"></span>
<div class="mw-translate-fuzzy">
== Integrar la documentación de Coin3D ==
Como una alternativa, la documentación es generada de vez en cuando y accesible en sourceforge [http://free-cad.sf.net/SrcDocu/index.html aquí]
</div>


En los sistemas Unix es posible vincular la documentación de origen de Coin3D con la de FreeCAD. Esto permite una navegación más fácil y diagramas de herencia completos para las clases derivadas de Coin.
Here is another FreeCAD Doxygen [http://iesensor.com/FreeCADDoc/0.16-dev/ documentation] generate by [http://forum.freecadweb.org/viewtopic.php?t=12613 qingfeng.xia].


*Instale el paquete {{incode|libcoin-doc}}, {{incode|libcoin80-doc}}, o un paquete de nombre similar.
<div class="mw-translate-fuzzy">
*Descomprima el archivo {{incode|coin.tar.gz}} ubicado en {{incode|/usr/share/doc/libcoin-doc/html}}; los archivos pueden estar ya descomprimidos en su sistema.
==== Documentación de Coin3D integrada ====
*Genera de nuevo la documentación de fuente.
</div>


Si no instalas el paquete de documentación de Coin, se generarán los enlaces para acceder a la documentación en línea en [https://coin3d.bitbucket.io/Coin/ BitBucket]. Esto sucederá si un archivo de etiquetas de Doxygen puede ser descargado en tiempo de configuración con {{incode|wget}}.
En sistemas unix, es posible vincular la documentación del código fuente de Coin3D con la de FreeCAD.
Esto permite una navegación más sencilla y diagramas de herencia completos para las clases derivadas de Coin.


<span id="Using_Doxygen"></span>
* En Debian y sistemas derivados:
== Usando Doxygen ==
: - Instala el paquete libcoin60-doc
: - Descomprime el archivo /usr/share/doc/libcoin60-doc/html/coin.tag.gz
: - Regenera la documentación del código fuente
: Ya estás listo para navegar offline.


Vea la página [[Doxygen/es|Doxygen]] para una extensa explicación sobre cómo comentar el código fuente de C++ y Python para que pueda ser procesado por Doxygen para crear automáticamente la documentación.
* Si no quieres o no puedes instalar el paquete de documentación de Coin, los vínculos serán generados para acceder a la documentación online de Coin en doc.coin3D.org, si los archivos de etiquetas de doxygen pueden ser descargados y configurados en el momento de configuración (wget).


Esencialmente, un bloque de comentarios, comenzando con {{incode|/**}} o {{incode|///}} para C++, o {{incode|##}} para Python, debe aparecer antes de cada definición de clase o función, para que sea recogido por Doxygen. Muchos [[Doxygen/es#Doxygen markup|comandos especiales]], que comienzan con {{incode||}} o {{incode|@}}, pueden ser usados para definir partes del código y dar formato a la salida. [[Doxygen#Markdown support/es|Markdown sintaxis]] también se entiende dentro del bloque de comentarios, lo que hace conveniente enfatizar ciertas partes de la documentación.
== How to integrate doxygen in to the FreeCAD source code ==
{{Code|code=
{{VeryImportantMessage|This is a Work In Progress. See [[Doxygen]]}}
/**
Example of a complete doxygen page: (from another project)
* Returns the name of the workbench object.
*/
std::string name() const;


/**
doxygen: http://www.vtk.org/doc/nightly/html/classvtkArrayCoordinates.html
* Set the name to the workbench object.
*/
void setName(const std::string&);


/// remove the added TaskWatcher
source: https://github.com/Kitware/VTK/blob/master/Common/Core/vtkArrayCoordinates.h
void removeTaskWatcher(void);
}}


{{docnav/es|Extra python modules/es|List of Commands/es}}


{{Docnav/es
{{Userdocnavi}}
|[[Extra python modules/es|Módulos extra python]]
|[[Contributors/es|Contribuidores]]
}}


{{Userdocnavi{{#translation:}}}}
[[Category:Developer Documentation/es]]
[[Category:Developer Documentation{{#translation:}}]]
{{clear}}
{{clear}}

Latest revision as of 19:05, 31 October 2023

Vista general

El código fuente de FreeCAD se comenta para permitir la generación automática de documentación de programación usando Doxygen, un popular sistema de documentación de código fuente. Doxygen puede documentar tanto la parte C++ como la parte Python de FreeCAD, dando como resultado páginas HTML con hipervínculos a cada función y clase documentada.

La documentación está alojada en línea en el Sitio web de FreeCAD API. Tenga en cuenta que esta documentación puede no estar siempre actualizada; si necesita más detalles, descargue el último código fuente de FreeCAD y compile la documentación usted mismo. Si tienes preguntas urgentes sobre el código, por favor, pregúntalas en la sección de desarrolladores del Foro de FreeCAD.

La compilación de la documentación de la API sigue los mismos pasos generales que la compilación del ejecutable de FreeCAD, como se indica en la página Compilar en Linux.

Flujo de trabajo general para compilar la documentación de programación de FreeCAD. Los paquetes Doxygen y Graphviz deben estar en el sistema, así como el propio código fuente de FreeCAD. CMake configura el sistema de manera que con una sola instrucción de fabricación la documentación de todo el proyecto se compila en muchos archivos HTML con diagramas.

Construcción de la documentación del código fuente

Documentación completa

Si tienes Doxygen instalado, es muy fácil construir la documentación. También instala Graphviz para poder producir diagramas que muestren las relaciones entre las diferentes clases y bibliotecas en el código de FreeCAD. Graphviz también es utilizado por Gráfico de dependencia de FreeCAD para mostrar las relaciones entre diferentes objetos.

sudo apt install doxygen graphviz

Luego siga los mismos pasos que seguiría para compilar FreeCAD, como se describe en la página Compilar en Linux y se resume aquí para mayor comodidad.

* Obtenga el código fuente de FreeCAD y colóquelo en su propio directorio freecad-source.
* Crea otro directorio freecad-build en el que compilarás FreeCAD y su documentación.
* Configure las fuentes con cmake, asegurándose de indicar el directorio de fuentes y especificar las opciones requeridas para su compilación.
* Activa la creación de la documentación usando make.
git clone https://github.com/FreeCAD/FreeCAD.git freecad-source
mkdir freecad-build
cd freecad-build
cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 ../freecad-source

Mientras estás dentro del directorio de construcción, da la siguiente instrucción para crear sólo la documentación.

make -j$(nproc --ignore=2) DevDoc

Como se mencionó en Compilación (aceleración), la -j opción establece el número de núcleos de CPU utilizados para la compilación. Los archivos de documentación resultantes aparecerán en el directorio.

freecad-build/doc/SourceDocu/html/

El punto de entrada a la documentación es el archivo index.html, que se puede abrir con un navegador web:

xdg-open freecad-build/doc/SourceDocu/html/index.html

El objetivo DevDoc generará una cantidad significativa de datos, alrededor de 5 GB de nuevos archivos, particularmente debido a los diagramas creados por Graphviz.

Documentación reducida

La documentación completa usa alrededore de 3Gb de espacio en disco. Se puede generar una versión alternativa y más pequeña de la documentación, que sólo requiere unos 600 MB, con un objetivo diferente. Esta es la versión que se muestra en el sitio web de FreeCAD API.

make -j$(nproc --ignore=2) WebDoc

La documentación en el sitio web de FreeCAD API se genera automáticamente desde https://github.com/FreeCAD/SourceDoc. Cualquiera puede reconstruirlo y enviar un pull request:

* en su máquina: clone el código FreeCAD (si aún no lo ha hecho), cree un directorio de compilación para el documento y clone el repositorio de SourceDoc anterior en él.  Ese SourceDoc se actualizará cuando reconstruyas el documento y podrás confirmar y enviar los resultados después:
git clone https://github.com/FreeCAD/FreeCAD
cd FreeCAD
mkdir build
cd build
mkdir -p doc/SourceDocu/html
cd doc/SourceDocu/html
git clone your-fork-url
cd ../../..
cmake -DBUILD_QT5=ON -DPYTHON_EXECUTABLE=/usr/bin/python3 ..
make WebDoc
cd doc/SourceDocu/html
git commit
git push
  • Vaya a su bifurcación en línea y cree un pull request.

Otras versiones

Desarrollo de FreeCAD 0.19 documentación creada por qingfeng.xia.

Integrar la documentación de Coin3D

En los sistemas Unix es posible vincular la documentación de origen de Coin3D con la de FreeCAD. Esto permite una navegación más fácil y diagramas de herencia completos para las clases derivadas de Coin.

  • Instale el paquete libcoin-doc, libcoin80-doc, o un paquete de nombre similar.
  • Descomprima el archivo coin.tar.gz ubicado en /usr/share/doc/libcoin-doc/html; los archivos pueden estar ya descomprimidos en su sistema.
  • Genera de nuevo la documentación de fuente.

Si no instalas el paquete de documentación de Coin, se generarán los enlaces para acceder a la documentación en línea en BitBucket. Esto sucederá si un archivo de etiquetas de Doxygen puede ser descargado en tiempo de configuración con wget.

Usando Doxygen

Vea la página Doxygen para una extensa explicación sobre cómo comentar el código fuente de C++ y Python para que pueda ser procesado por Doxygen para crear automáticamente la documentación.

Esencialmente, un bloque de comentarios, comenzando con /** o /// para C++, o ## para Python, debe aparecer antes de cada definición de clase o función, para que sea recogido por Doxygen. Muchos comandos especiales, que comienzan con o @, pueden ser usados para definir partes del código y dar formato a la salida. Markdown sintaxis también se entiende dentro del bloque de comentarios, lo que hace conveniente enfatizar ciertas partes de la documentación.

/**
 * Returns the name of the workbench object.
 */
std::string name() const;

/**
 * Set the name to the workbench object.
 */
void setName(const std::string&);

/// remove the added TaskWatcher
void removeTaskWatcher(void);