Progetto Open3D

Questa pagina contiene i dettagli di un progetto di scrittura tecnica accettato per la stagione di Documenti Google.

Riepilogo del progetto

Organizzazione open source:
Open3D
Redattore tecnico:
Rohan Rathi
Nome del progetto:
Documentazione tecnica dell'API Python e C++
Durata del progetto:
Durata standard (3 mesi)

Project description

Trama:

Il progetto sarà diviso in 4 parti: Guida per i collaboratori di Open3D per l'upgrade e l'estensione Documentazione completa dell'API Python Documentazione completa dell'API C++ Documentazione di alto livello delle strutture di dati di base

Descrizione:

Nel mio progetto ho intenzione di suddividerlo in 4 parti:

Intendo completare e aggiornare la guida per i collaboratori per i nuovi arrivati, che fornisce una guida passo passo esaustiva su come creare il codice sorgente e la documentazione e unirsi alla community di sviluppatori. Oltre a una guida scritta, intendo realizzare un video che mostri i passaggi esatti per compilare il codice sorgente del canale YouTube. Aggiungerò anche una guida su come i nuovi sviluppatori possono contribuire alla documentazione apportando modifiche al codice sorgente creato da Sphinx utilizzando pybind e doxygen.

Estendere la documentazione dell'API Python. Attualmente l'API Python contiene docstring di base per le classi e le funzioni membro che forniscono una descrizione vaga della funzionalità. Ho intenzione di riformulare la documentazione dell'API Python per rendere l'API più facile da comprendere e la funzionalità più chiara. Inoltre, intendo aggiungere link ai concetti di grafica 3D pertinenti utilizzati in aree diverse (ad es. la matrice intrinseca utilizzata nella fotocamera)

Consulta la documentazione dell'API C++. Al momento, nella documentazione C++ non sono presenti docstring equivalenti rispetto alla documentazione Python. Ho intenzione di documentare in dettaglio le classi e le relative funzioni membro e membri di dati associati .

Documenti di alto e basso livello delle strutture di dati di base. Intendo capire il codice di varie strutture di dati come TriangleMesh, LineSet e Octree e aggiungere commenti nel codebase, sia per i nuovi sviluppatori che per qualsiasi utente. Inoltre, fornirà documentazione di alto livello sull'utilizzo e sui concetti coinvolti nelle strutture migliorando i tutorial. Fornirò esempi dettagliati di utilizzo e aggiungerò link pertinenti ai concetti coinvolti nelle strutture. Se il tempo lo consente, lavorerò sulle attività più semplici, come la documentazione su come eseguire determinate attività che possono aiutare i nuovi utenti ad affiliarsi al software.

Programma del progetto:

1° agosto - 1° settembre:

Fatti conoscere al mio mentore e discuti in modo più approfondito del livello di documentazione richiesto nelle diverse parti della base di codice e anche di quanto debba essere approfondita la documentazione a livello basso rispetto a quella di alto livello. Inoltre, userò questo tempo per comprendere la base di codice e studiare i concetti in modo da poterli documentare meglio.

Settimane 1 e 2:

Aggiornerò ed estenderò la guida per i collaboratori. Migliorerò la documentazione su come compilare il codice sorgente. Aggiungerò anche una sezione per i documentatori su come i nuovi collaboratori possono contribuire alla documentazione. Creerò anche un video di YouTube in cui viene spiegato dettagliatamente come creare il codice sorgente.

3ª - 5ª settimana:

Mi occuperò di estendere l'API Python. Riformula la documentazione esistente e descrivi in dettaglio la documentazione degli abbonati esistenti. Aggiungerò anche link pertinenti a concetti correlati per consentire agli utenti di familiarizzare meglio con i concetti in questione.

Settimana 6-8:

Gli attuali documenti C++ sono incompleti per la maggior parte della libreria, quindi dedicherò la maggior parte del tempo a compilare i documenti C++

Settimane 9-11:

Durante questo periodo lavorerò alle strutture di dati di base. Ristrutturare i tutorial di ogni struttura di dati, fornire una panoramica generale e documentare i dettagli di utilizzo degli esempi.

Settimana finale:

Userò l'ultima settimana per preparare il mio rapporto finale sul lavoro svolto durante il periodo di documentazione di 12 settimane. Inoltre, ne approfitterò per rivedere e finalizzare la documentazione.