{"id":20586631,"url":"https://github.com/ebadier/bezierloader","last_synced_at":"2025-10-10T19:37:09.244Z","repository":{"id":15159614,"uuid":"17887240","full_name":"ebadier/BezierLoader","owner":"ebadier","description":"A C++ application which can load an OBJ file and render the Bezier curves it contains","archived":false,"fork":false,"pushed_at":"2021-01-31T22:55:18.000Z","size":27328,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-06T13:17:02.108Z","etag":null,"topics":["bezier-curves","cplusplus","obj-files","obj-format","ogre3d","rendering"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ebadier.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-03-19T00:36:46.000Z","updated_at":"2021-03-07T20:55:00.000Z","dependencies_parsed_at":"2022-08-29T01:30:29.632Z","dependency_job_id":null,"html_url":"https://github.com/ebadier/BezierLoader","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ebadier/BezierLoader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ebadier%2FBezierLoader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ebadier%2FBezierLoader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ebadier%2FBezierLoader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ebadier%2FBezierLoader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ebadier","download_url":"https://codeload.github.com/ebadier/BezierLoader/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ebadier%2FBezierLoader/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279005033,"owners_count":26083827,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","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":["bezier-curves","cplusplus","obj-files","obj-format","ogre3d","rendering"],"created_at":"2024-11-16T07:12:21.494Z","updated_at":"2025-10-10T19:37:09.208Z","avatar_url":"https://github.com/ebadier.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"![alt text](doc/bezier.jpg)\n\nBezierLoader\n============\nAn application which can load an OBJ format file, containing one or more Bezier curves, into some internal format. \nThe application should then render the curves.\nNotes:\n- The application is written in C++.\n- The loader handles any valid Bezier curve in the OBJ format.\n- The loader report an error if non-Bezier primitives are found in the file.\n- This project use Ogre3D for the rendering part.\n- Bezier curves are computed using a Bernstein polynomial.\n- Curves are described with a set of controls points and some parameters depending on the rendering technique used:\n\t- Constant Parametric Subdivision\n\t- Constant Space Subdivision\n\t- Curvature Dependent Subdivision\n\nRepository structure\n============\n- bin : the last released.\n- doc : documentation about the BezierLoader project.\n- externals : external librairies used in this project.\n- media : some assets used to render objects.\n- src : the source code.\n- vs2010 : a solution to compile the project with Visual Studio 2010.\n\t- BezierLoader.vcxproj generate a static library\n\t- BezierLoaderTest.vcxproj generate an exe to test the functionalities provided by BezierLoader static library.\n\t\nTest Application\n============\nYou can launch the last release by double-clicking on the \"test.bat\" file.\nCheck the \"test.bat\" file to see how to load your own .obj file.\n\t\nThe application load the curves in the .obj file.\nEach curve is rendered with a particular random colour.\nControl points are rendered as small spheres.\nThe curves are rendered as more or less broken lines, depending on the resolution. \nYou can switch and focus on each curve pressing space bar.\n\n- Controls:\n\t- W,S,A,D + mouse to move the camera.\n\t- Left_Shift : speed up translation.\t\t\n\t- Space : switch to the next curve (the camera focus automatically on the next curve).\n\t- Enter : show all curves.\n\t- Esc : Exit.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Febadier%2Fbezierloader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Febadier%2Fbezierloader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Febadier%2Fbezierloader/lists"}