holusion / ecorpus Goto Github PK
View Code? Open in Web Editor NEWThis project forked from smithsonian/dpo-voyager
3D Explorer and interface
Home Page: https://ethesaurus.holusion.com
This project forked from smithsonian/dpo-voyager
3D Explorer and interface
Home Page: https://ethesaurus.holusion.com
if an unauthenticated user hits a private page it will get a 404 (as it should : otherwise it would be a privacy breach).
However it should be possible to login from this page to get its actual content if allowed.
Login form autofill doesn't work through shadow DOM boundaries.
See BitWarden bitwarden/clients#713.
For chrome: https://groups.google.com/a/chromium.org/g/blink-dev/c/RY9leYMu5hI?pli=1 and https://bugs.chromium.org/p/chromium/issues/detail?id=649162
Might fix itself over time.
Allow the user to capture scene setup on scene instead of having to manually go to capture mode
it makes no sense to not save an in-progress article when clicking on the main "save" button.
would make additional sense if #23 is merged.
At least in certain cases, like if they are the last admin of this scene
currently, the ?lang=XX
queryString is generally ignored in favor of setups[0].language
However it's not clear for users how this property is changed.
Furthermore, it should probably be set to the user's language on creation to prevent defaults being filled-in from some default value later-on.
TODO:
setups[0].language
is setcurrently we systematically ask for a confirmation in onbeforeunload
It would be a better behaviour to check for changes. Additionally it would prevent filling the history with copies of the same document
Example file:
Dauphin Perrusson.ply.zip
See also: potree
Start by checking threeJS support for this file with PLYLoader
Collection display has cache issues
As seen in 71e2041, for await (let chunk of stream)
can lead to unexpectedly high memory usage.
Check if this applies to zip() generation before it bites us.
Allowing collaboration on a scene would require some new features.
In short the process would be :
The main building block missing here is the ability to compare a change against its reference. It could be done client-side by saving the Etag header to send it back as If-Match on save. It's a slightly unorthodox use of the If-Match header.
Another option is to send a Set-Cookie header on GET that references the current version, then get the cookie's value on PUT. That's slightly invasive, in particular if we do it on every scene requests. It might be acceptable because it's session cookies so it at least won't cause too much privacy concerns.
A third option would be to embed a unique ID into the document. It would be sent as-is to the client and then be parsed back on PUT, hinting at the reference's version. There would be practically no additional overhead because we have to parse the document on save anyways if we want to compute a diff so it's no big deal inserting a nonce into it before serialization.
the second and third options would require little to no client code change.
Some export from blender have corrupted texture on import.
This is compared to import to https://threejs.org/editor/
Specular
Only value of 0.5 is tolerated.
Spec map as input is not tolerated.
(No issue on the ThreeJS viewer)
spec_bug.zip
Specular Tint
Specular Tint map is not supported
(No issue on the ThreeJS viewer)
SpecTint.zip
Vertex Paint
Some models exported by scanners have their texture twice : as a material and as a vertex paint
(This issue also exist on the ThreeJS viewer)
VertexPaint.zip
Value on metalness
Export from Blender. Issue when PBR shader only have a value for metalness instead of a map
(No issue on the ThreeJS viewer)
metal.zip
The multiplication of save buttons is a problem. It would ease things to have a save-and-capture button right in the task bar instead of hidden in the "capture" tab
Also, #23
document.setup[0].navigation.orbit
Bearer tokens would allow more flexibility, permitting the generation of direct-connect links.
It would be possible to only implement jwt to provide this functionality.
Log:
1) GET /scenes/:scene/:filename(.*)
can abort responses:
AssertionError: expected promise to be rejected with an error matching /socket hang up/ but it was fulfilled with { Object (_events, _eventsCount, ...) }
2) GET /scenes/:scene/:filename(.*)
"after each" hook for "can abort responses":
Uncaught Error: aborted
at connResetException (node:internal/errors:720:14)
at Socket.socketCloseListener (node:_http_client:455:19)
at Socket.emit (node:events:526:35)
at TCP.<anonymous> (node:net:337:12)
3) GET /scenes/:scene/:filename(.*)
"after each" hook for "can abort responses":
Error: done() called multiple times in hook <GET /scenes/:scene/:filename(.*) "after each" hook for "can abort responses"> of file /Users/sebastien/repositories/eCorpus/source/server/routes/scenes/get/file.test.ts
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.