{"id":22965536,"url":"https://github.com/cllspy/let-it-go","last_synced_at":"2025-07-10T19:37:16.795Z","repository":{"id":246303669,"uuid":"820692136","full_name":"CllsPy/Let-It-Go","owner":"CllsPy","description":"just another Go repo.","archived":false,"fork":false,"pushed_at":"2024-07-18T22:53:23.000Z","size":55,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-02T04:29:19.255Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","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/CllsPy.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":"2024-06-27T01:53:10.000Z","updated_at":"2024-07-18T22:53:27.000Z","dependencies_parsed_at":"2024-07-22T07:46:40.722Z","dependency_job_id":null,"html_url":"https://github.com/CllsPy/Let-It-Go","commit_stats":null,"previous_names":["cllspy/let-it-go"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/CllsPy/Let-It-Go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CllsPy%2FLet-It-Go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CllsPy%2FLet-It-Go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CllsPy%2FLet-It-Go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CllsPy%2FLet-It-Go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CllsPy","download_url":"https://codeload.github.com/CllsPy/Let-It-Go/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CllsPy%2FLet-It-Go/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264640071,"owners_count":23642338,"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","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":[],"created_at":"2024-12-14T20:14:54.226Z","updated_at":"2025-07-10T19:37:16.634Z","avatar_url":"https://github.com/CllsPy.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Introduction\n**Ray Tracing** is an algorithm used to create realistic graphics.\n\n## Sub-problem No. 1\nAny Ray Tracing algorithm requires the representation of objects in a 3D space.\n\nA vector is a line segment that extends from point A to point B in a 2D or 3D plane.\n\nWe need to be able to operate on vectors.\n\nNormalizing a vector involves scaling its magnitude/size to 1 while retaining its direction. This can be useful for other operations such as distance calculation or clustering.\n\nThe formula for the cross product is given by:\n![image](image_2.png)\n\nTo implement the calculation, the following steps were taken:\n\n- Create an empty list called `new_result`\n- Iterate over the vector `result`\n- In each iteration, add the previous value to the next one\n- Store this result in `new_result`\n- Display `new_result`\n\nTo calculate the magnitude of a vector:\n\n### Steps\n- Iterate over the vector elements\n- Square each element\n- Sum the squared values\n- Take the square root of the resulting value\n\n### Resources\n- `for` loop\n- `math.Pow(2, 10)`\n- `append`\n\n### Plan\n- Iterate over the vector `v1[x]`\n- Square each `v1[x]`\n- Store the squared values in another vector `[x]`\n- Sum the values in this new vector `[x]`\n\n## Useful Links\n- [Tour for Go](https://go.dev/tour/moretypes/6) ![Go Tour](https://img.shields.io/badge/Go_Tour-%2300ADD8.svg?style=flat-square\u0026logo=go)\n- [Vector Representation in Go](https://www.netguru.com/blog/vector-operations-in-go) ![Netguru Blog](https://img.shields.io/badge/Netguru_Blog-%2300B9F2.svg?style=flat-square\u0026logo=netguru)\n- [Vector Normalization](https://www.khanacademy.org/computing/computer-programming/programming-natural-simulations/programming-vectors/a/vector-magnitude-normalization) ![Khan Academy](https://img.shields.io/badge/Khan_Academy-%23F2B000.svg?style=flat-square\u0026logo=khan-academy)\n- [OOP in Golang](https://www.tutorialspoint.com/golang-program-to-create-a-class-and-object#:~:text=Structs%20%E2%88%92%20Go%20language%20does%20not,same%20or%20different%20data%20type.) ![TutorialsPoint](https://img.shields.io/badge/TutorialsPoint-%236D0F8C.svg?style=flat-square\u0026logo=tutorialspoint)\n- [Machine Learning with Go: Matrices and Vectors | packtpub.com](https://www.youtube.com/watch?v=rzYzsdKImEs) ![PacktPub](https://img.shields.io/badge/PacktPub-%23B4006F.svg?style=flat-square\u0026logo=youtube)\n- [Sum Vector JS Solution](https://spellbox.app/spells/javascript/two-functions-that-make-sum-two-vectors-and-make-their-dot-product-in-javascript) ![Spellbox](https://img.shields.io/badge/Spellbox-%23F8E71C.svg?style=flat-square\u0026logo=spellbox)\n- [Golang - Append Function](https://dev.to/andyhaskell/a-closer-look-at-go-s-slice-append-function-3bhb) ![Dev.to](https://img.shields.io/badge/Dev.to-%23F7DF1E.svg?style=flat-square\u0026logo=dev)\n- [Passing \u0026 Returning Array To \u0026 From a Function | Go Tutorial](https://www.youtube.com/watch?v=_mVLhNgQ7_8) ![YouTube](https://img.shields.io/badge/YouTube-%23FF0000.svg?style=flat-square\u0026logo=youtube)\n- [The Vector Product](https://www.mathcentre.ac.uk/resources/uploaded/mc-ty-vectorprod-2009-1.pdf) ![Math Centre](https://img.shields.io/badge/Math_Centre-%2318C5C5.svg?style=flat-square\u0026logo=math)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcllspy%2Flet-it-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcllspy%2Flet-it-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcllspy%2Flet-it-go/lists"}