{"action":"created","issue":{"url":"https://api.github.com/repos/JuliaGeometry/Meshes.jl/issues/37","labels_url":"https://api.github.com/repos/JuliaGeometry/Meshes.jl/issues/37/labels{/name}","comments_url":"https://api.github.com/repos/JuliaGeometry/Meshes.jl/issues/37/comments","events_url":"https://api.github.com/repos/JuliaGeometry/Meshes.jl/issues/37/events","html_url":"https://github.com/JuliaGeometry/Meshes.jl/issues/37","id":58230957,"number":37,"title":"Mesh Loading Improvements","user":{"login":"sjkelly","id":2086412,"avatar_url":"https://avatars.githubusercontent.com/u/2086412?v=3","gravatar_id":"","url":"https://api.github.com/users/sjkelly","html_url":"https://github.com/sjkelly","followers_url":"https://api.github.com/users/sjkelly/followers","following_url":"https://api.github.com/users/sjkelly/following{/other_user}","gists_url":"https://api.github.com/users/sjkelly/gists{/gist_id}","starred_url":"https://api.github.com/users/sjkelly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sjkelly/subscriptions","organizations_url":"https://api.github.com/users/sjkelly/orgs","repos_url":"https://api.github.com/users/sjkelly/repos","events_url":"https://api.github.com/users/sjkelly/events{/privacy}","received_events_url":"https://api.github.com/users/sjkelly/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-02-19T16:25:37Z","updated_at":"2015-02-23T22:31:59Z","closed_at":null,"body":"I have been digging through the import code in recent days to try and make things more compatible with Meshes2.\r\n\r\nI think in general, the parsing could be more efficient. Likewise, there are lot of while loops which prevent us from really knowing state well. e.g. if an STL has only 2 vertices in a face, we have no way of knowing and warning the user.\r\n\r\nI think the general approach will be a couple parts:\r\n\r\n1. use more stateful parsing so we can warn if the file is corrupt\r\n2. create file format types (e.g. STLFile, OBJFile) that let us preserve the full information given in the file.\r\n3. make convert methods from these types to the Mesh type."},"comment":{"url":"https://api.github.com/repos/JuliaGeometry/Meshes.jl/issues/comments/75652043","html_url":"https://github.com/JuliaGeometry/Meshes.jl/issues/37#issuecomment-75652043","issue_url":"https://api.github.com/repos/JuliaGeometry/Meshes.jl/issues/37","id":75652043,"user":{"login":"sjkelly","id":2086412,"avatar_url":"https://avatars.githubusercontent.com/u/2086412?v=3","gravatar_id":"","url":"https://api.github.com/users/sjkelly","html_url":"https://github.com/sjkelly","followers_url":"https://api.github.com/users/sjkelly/followers","following_url":"https://api.github.com/users/sjkelly/following{/other_user}","gists_url":"https://api.github.com/users/sjkelly/gists{/gist_id}","starred_url":"https://api.github.com/users/sjkelly/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sjkelly/subscriptions","organizations_url":"https://api.github.com/users/sjkelly/orgs","repos_url":"https://api.github.com/users/sjkelly/repos","events_url":"https://api.github.com/users/sjkelly/events{/privacy}","received_events_url":"https://api.github.com/users/sjkelly/received_events","type":"User","site_admin":false},"created_at":"2015-02-23T22:31:59Z","updated_at":"2015-02-23T22:31:59Z","body":"related:\r\n\r\n```\r\njulia> using Meshes\r\n\r\njulia> m = mesh(\"empty.stl\")\r\nERROR: EOFError: read end of file\r\n in show at ./show.jl\r\n```\r\n\r\nempty.stl is an empty file."}}