HSF / HSF/phoenix

Be able to load zipped version of event/geometry files in a generic way

Open
#441 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
TypeScript
Stars
88
Forks
105
Avg merge
16h 15m
Merged PRs (30d)
34

Description

- 'moved' and adapted from phoenix-helpers repo where it was created initially by mistake -

The gain in size is typically around a factor 10, so for a web based application, it would make sense to be able to use zipped versions of our data files, both for events and geometry. Now I had a look at the code, and the thressjs GLTFLoader does not seem to support it natively, so we would have to write it ourselves

answer from @9inpachi

We already do this but only in the event data import, not through the URL or anywhere else. The same logic could be extracted and reused though.

https://github.com/HSF/phoenix/blob/c6a91537c2f4bea406d6885fa562fe851bce7037/packages/phoenix-ng/projects/phoenix-ui-components/lib/components/ui-menu/io-options/io-options-dialog/io-options-dialog.component.ts#L177

summary of discussion

This is for now Atlas specific and event specific. It should be available to all and also for geometry ideally

Steps remaining :

  • allow zip files for default event files
  • allow zipped geometries

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the existing event-data import logic in packages/phoenix-ng/projects/phoenix-ui-components/lib/components/ui-menu/io-options/io-options-dialog/io-options-dialog.component.ts around line 177, and review how three.js GLTFLoader handles geometry. Extract the reusable zip-loading behavior, then verify that default event files and geometry files can both be loaded in zipped form.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, three.js, typescript
Domain
frontend, web-dev
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.