Projekt Open3D

Ta strona zawiera szczegółowe informacje na temat projektu technicznego przyjęta do programu Sezon Dokumentów Google.

Podsumowanie projektu

Organizacja open source:
Open3D
Pisarz techniczny:
Rohan Rathi
Nazwa projektu:
Dokumentacja techniczna Python i C++ API
Długość projektu:
Standardowa długość (3 miesiące)

Opis projektu

Streszczenie:

Projekt zostanie podzielony na 4 części: Uaktualnienie i rozszerzanie Przewodnika dla współtwórców Open3D Pełna dokumentacja interfejsu API Pythona Pełna dokumentacja interfejsu API C++ Ogólna dokumentacja podstawowych struktur danych

Opis:

W swoim projekcie planuję podzielić projekt na 4 części:

Zamierzam wypełnić i zaktualizować przewodnik dla początkujących, który zawiera szczegółowe instrukcje tworzenia kodu źródłowego, tworzenia dokumentacji i dołączania do społeczności deweloperów. Oprócz pisemnej lekcji chcę stworzyć film z dokładnymi instrukcjami tworzenia kodu źródłowego kanału YouTube. Dodam także przewodnik, z którego dowiesz się, jak nowi deweloperzy mogą wnosić swój wkład do dokumentacji, wprowadzając zmiany w kodzie źródłowym stworzonym przez sfinksa za pomocą programów pybind i doxygen.

Rozszerz dokumentację interfejsu Python API. Obecnie interfejs Python API zawiera podstawowe dokumenty doc. klas i funkcji członkowskich, które zapewniają niejasny opis tych funkcji. Planuję przeformułować dokumentację interfejsu Python API, aby była bardziej zrozumiała i wygodna. Zamierzam też dodać linki do odpowiednich zagadnień związanych z grafią 3D wykorzystywanych w różnych dziedzinach (np. matryca wewnętrzna używana w aparacie).

Wypełnij dokumentację interfejsu API C++. Obecnie w dokumentacji C++ nie ma odpowiednika docstringów w porównaniu z dokumentacją Pythona. Zamierzam szczegółowo udokumentować zajęcia oraz powiązane z nimi funkcje członkowskie i dane użytkowników .

Dokumentacja wysokiego i niskiego poziomu podstawowych struktur danych. Zamierzam zapoznać się z kodem różnych struktur danych, takich jak TriangleMesh, LineSet, Octree, i dodawać komentarze w bazie kodu. Jest to przydatne zarówno dla programistów, jak i użytkowników. Ulepszamy też samouczki, aby zapewnić ogólną dokumentację zastosowania i zagadnień związanych ze strukturami. Podam szczegółowe przykłady użycia i dodam odpowiednie linki do pojęć związanych ze strukturami. Jeśli pozwoli na to czas, zajmę się prostszymi zadaniami, takimi jak dokumentowanie sposobu wykonywania pewnych czynności, które mogą pomóc nowym użytkownikom w zaznajomieniu się z oprogramowaniem.

Harmonogram projektu–

1 sierpnia – 1 września:

Zapoznaj się z mentorem i omów szczegółowo poziom dokumentacji wymaganej w różnych częściach bazy kodu, a także omów szczegółowość dokumentacji niskopoziomowej i wysokiej. Spędzam też czas na poznawaniu bazy kodu i poznawaniu koncepcji, aby lepiej je udokumentować.

Tydzień 1 i 2:

Będę aktualizować i rozszerzać przewodnik dla współtwórców. Udoskonalę dokumentację dotyczącą tworzenia kodu źródłowego. Dodam też sekcję poświęconą dokumentowaniu, w której nowi współtwórcy mogą pomagać użytkownikom. Utworzę także film w YouTube zawierający instrukcje krok po kroku, jak stworzyć kod źródłowy.

Tydzień 3–5:

Będę pracować nad rozszerzeniem interfejsu API Pythona. Przeredaguj obecną dokumentację i w szczególności dodaj informacje dla obecnych członków. Dodam także odpowiednie linki do powiązanych pojęć, aby użytkownicy mogli je lepiej poznać.

Tydzień 6–8:

Obecna dokumentacja C++ jest niekompletna w większości części biblioteki, więc będę poświęcać większość czasu na wypełnianie dokumentów w C++

Tydzień 9–11:

W tym czasie będę zajmować się podstawowymi strukturami danych. Przygotuj samouczki dotyczące każdej struktury danych i zaprezentuj ogólne omówienie oraz szczegółowe informacje o przykładach użycia.

Ostatni tydzień:

W ostatnim tygodniu posłużę się przygotowaniem ostatecznego raportu o pracy wykonanej w trakcie 12-tygodniowego okresu dokumentacji. Poświęcę też czas na sprawdzenie i sfinalizowanie dokumentacji.