{"id":19927403,"url":"https://github.com/juanse77/sist_plan","last_synced_at":"2026-04-17T05:02:07.484Z","repository":{"id":112257211,"uuid":"245468007","full_name":"juanse77/Sist_Plan","owner":"juanse77","description":"Solar system simulator","archived":false,"fork":false,"pushed_at":"2022-10-02T23:46:57.000Z","size":51474,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-01T10:46:17.574Z","etag":null,"topics":["java","opengl","processing"],"latest_commit_sha":null,"homepage":"","language":"Processing","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/juanse77.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-03-06T16:30:27.000Z","updated_at":"2024-07-18T19:30:03.000Z","dependencies_parsed_at":"2023-04-09T23:49:46.357Z","dependency_job_id":null,"html_url":"https://github.com/juanse77/Sist_Plan","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/juanse77/Sist_Plan","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanse77%2FSist_Plan","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanse77%2FSist_Plan/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanse77%2FSist_Plan/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanse77%2FSist_Plan/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juanse77","download_url":"https://codeload.github.com/juanse77/Sist_Plan/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juanse77%2FSist_Plan/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31915900,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T18:22:33.417Z","status":"online","status_checked_at":"2026-04-17T02:00:06.879Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","opengl","processing"],"created_at":"2024-11-12T22:33:24.061Z","updated_at":"2026-04-17T05:02:07.476Z","avatar_url":"https://github.com/juanse77.png","language":"Processing","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003chtml\u003e\r\n\u003chead\u003e\r\n\u003c/head\u003e\r\n\u003cbody\u003e\r\n\u003ch1\u003eSistema solar con nave:\u003c/h1\u003e\r\n\r\n\u003cp\u003eEste proyecto es una extensi�n del anterior, en el que se gener� una simulaci�n del sistema solar. La novedad en este trabajo es la introducci�n de una nave capaz de viajar a trav�s del sistema. El objetivo que se buscaba con esto era la utilizaci�n de una c�mara que se moviese junto con la nave y que proporcionase al usuario una visi�n en primera persona.\u003c/p\u003e\r\n\r\n\u003ch2\u003eControles\u003c/h2\u003e\r\n\r\n\u003cp\u003eEl usuario puede hacer uso de las teclas de direcci�n para orientar la nave y de las teclas de aceleraci�n (a) y frenado (f) de la misma. Tambi�n puede utilizar la tecla (c) para cambiar de modo de visualizaci�n, pasando alternativamente de la visi�n panor�mica a la visi�n en primera persona.\u003c/p\u003e\r\n\r\n\u003cp\u003eLa visi�n panor�mica se puede rotar hacia arriba (u) y hacia abajo (d), esta funcionalidad s�lo permanece activa en el modo de visualizaci�n panor�mico. Como en el anterior trabajo se ha mantenido la funci�n de pausa la cual se activa con la tecla (espacio). Para salir pulse (escape).\u003c/p\u003e\r\n\r\n\u003ch2\u003eDetalles de implementaci�n\u003c/h2\u003e\r\n\r\n\u003cp\u003eLa aplicaci�n se ha realizado en Processing y en ella se ha utilizado los m�todos pushMatrix, popMatrix, rotate y translate, ya introducidos en la anterior pr�ctica, y como novedad se ha hecho uso del m�todo camera. Este m�todo es el que posibilita cambiar la perspectiva del usuario y navegar por el sistema planetario.\u003c/p\u003e\r\n\r\n\u003cp\u003eEn la generaci�n de los planetas y sat�lites se ha utilizado una clase que posee como atributos principales: el radio del planeta, el radio de la �rbita, la velocidad de traslaci�n, la velocidad de rotaci�n y la posici�n inicial dentro de su �rbita que se generar� aleat�riamente.\u003c/p\u003e\r\n\r\n\u003cp\u003eAdem�s, esta clase contiene el m�todo getAngulo que calcula el nuevo �ngulo de traslaci�n mediante una suma acumulativa del �ngulo actual m�s su velocidad de traslaci�n en cada iteraci�n, lo cual permite hacer el c�lculo de su posici�n relativa. La posici�n relativa ser� accesible mediante un m�todo accesor p�blico de modo que si un planeta posee sat�lite podr� pasar su posici�n relativa a la del sat�lite para que este se pueda dibujar rot�ndo sobre �l.\u003c/p\u003e\r\n\r\n\u003cp\u003ePara los c�lculos de la posici�n absoluta de la nave y de su trayectoria se ha utilizado la combinaci�n de las matrices de rotaci�n Y-X. La trayectoria es la suma acumulativa del resultado del producto del m�dulo de la velocidad por las componentes que a su vez son resultado de transformar el vector (0, 0, -1) mediante la combinaci�n de las matrices de rotaci�n. El vector (0, 0, -1) indica que la nave siempre se mover� hacia delante y la direcci�n absoluta que tome se calcular� teniendo en cuenta la rotaci�n Y y la rotaci�n X que posea la nave en cada momento.\u003c/p\u003e\r\n\r\n\u003cp\u003ePara la correcta visualizaci�n de las etiquetas se ha utilizado un procedimiento distinto para cada modo de visualizaci�n. En el modo panor�mico simplemente se deshace la rotaci�n del eje X que se le haya aplicado.\u003c/p\u003e\r\n\r\n\u003cp\u003eEn el modo de visualizaci�n en primera persona y para la correcta orientaci�n de las etiquetas, se ha calculado el �ngulo mediante el producto escalar del vector (0, 0, 1), que es la direcci�n normal de la etiqueta, por el vector que une los puntos de la nave y cada planeta, despejando el �ngulo y aplicando el arcocoseno al producto escalar dividido entre el producto de los m�dulos de los vectores. Para el c�lculo del �ngulo final de la etiqueta se ha despreciado la componente Y del vector nave-planeta en el c�lculo del m�dulo, ya que �ngulo que se busca es el que forma este vector con el plano XZ que pasa por el planeta.\u003c/p\u003e \r\n\r\n\u003cdiv align=\"center\"\u003e\r\n\t\u003cp\u003e\u003cimg src=\"./sistema_solar.gif\" alt=\"Sistema solar interactivo 3D\" /\u003e\u003c/p\u003e\r\n\u003c/div\u003e\r\n\r\n\u003cp\u003eEsta aplicaci�n se ha desarrollado como cuarta pr�ctica evaluable para la asignatura de \"Creando Interfaces de Usuarios\" de la menci�n de Computaci�n del grado de Ingenier�a Inform�tica de la Universidad de Las Palmas de Gran Canaria en el curso 2019/20 y en fecha de 9/3/2020 por el alumno Juan Sebasti�n Ram�rez Artiles.\u003c/p\u003e\r\n\r\n\u003cp\u003eReferencias a los recursos utilizados:\u003c/p\u003e\r\n\u003cul\u003e\r\n\t\u003cli\u003eTextura Sol: \"https://pixabay.com/es/illustrations/el-fondo-textura-el-sol-3d-1017060/\"\u003c/li\u003e\r\n\t\u003cli\u003eTextura Mercurio: \"https://gruponexus.wordpress.com/2009/06/11/mercurio/\"\u003c/li\u003e\r\n\t\u003cli\u003eTextura Venus: \"https://pxhere.com/es/photo/1262003?__cf_chl_jschl_tk__=5be6c88ab8d4c14ea30d9cfa03ac3a592246373c-1582116013-0-AYmbg47Dsx6x7QM6k9_FcjZhS6n8hWy1pbDBb3UscT1zbKQuFZEXGn_wcGAKhlL9XbAfWahNizzjJhFr1-yjOYuoXeeve_MW_l-g5fiKO2ILtkG5HMAeLBV0_QK021XbGc_X5lOAWrm4A-TRmqGUKaU9HcM8WxfoGI2i5M75cIH89iTiCL6N9XbACv2I7CacZ5QxiFta3zzP55Q6tX-G-hWTt7E4Hwt_hBVW17Ns0DTuDCz_z-6P4oRbZbtx7IocMXFzHoh4yQWx3CQKLonne6nhYmpbbUr-vXzSP1WGO-MZ\"\u003c/li\u003e\r\n\t\u003cli\u003eTextura Tierra: \"https://es.123rf.com/photo_7005552_alta-resoluci%C3%B3n-de-la-planeta-tierra-pint%C3%B3-la-textura-.html\"\u003c/li\u003e\r\n\t\u003cli\u003eTextura Luna: \"https://www.canstockphoto.es/superficie-seamless-textura-luna-35589436.html\"\u003c/li\u003e\r\n\t\u003cli\u003eTextura Marte: \"https://es.123rf.com/photo_38509113_marte-ilustraci%C3%B3n-cient%C3%ADfica-textura-de-planeta-lejano-en-el-espacio-profundo.html\"\u003c/li\u003e\r\n\t\u003cli\u003eTextura J�piter: \"https://josevicentediaz.com/2015/11/26/jupiter-en-4k-ultra-hd/\"\u003c/li\u003e\r\n\t\u003cli\u003eTextura Gan�medes: \"https://pijamasurf.com/2015/03/un-viaje-a-traves-de-las-texturas-de-los-planetas-y-lunas-del-sistema-solar-fotos/\"\u003c/li\u003e\r\n\u003c/ul\u003e\r\n\u003c/body\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuanse77%2Fsist_plan","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuanse77%2Fsist_plan","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuanse77%2Fsist_plan/lists"}