-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Volume management hackathon #1765
Comments
All geometries in the back-end are now stored as PostGIS TIN Geometry. This allows for more consistency and a cleaner API. Implemented together with @aschampion, @clbarnes, @Willp24. See #1765 Fixes #1581
I have a branch of catpy with some code to convert the x3d string into a bunch of triangles which would be helpful for either meshio or our own writers. Now that all our meshes are triangular, this is very easy. Some simple issues with meshio which I'd want to resolve (either as PRs or on our own branch):
|
Blocked by
|
All geometries in the back-end are now stored as PostGIS TIN Geometry. This allows for more consistency and a cleaner API. Implemented together with @aschampion, @clbarnes, @Willp24. See #1765 Fixes #1581
Meshio is kind of lame, I'm all in on |
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Note that we've decided currently to not update volume class instance name's when the (spatial) volume's name is updated, since it's not clear the CI name will ever be used. |
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
Regarding PRing this, I'm leaning towards:
|
I've pushed a commit reverting the API change and its downstream usages and have left a todo. |
All geometries in the back-end are now stored as PostGIS TIN Geometry. This allows for more consistency and a cleaner API. Implemented together with @aschampion, @clbarnes, @Willp24. See catmaid#1765 Fixes catmaid#1581
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See catmaid#1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See catmaid#1765
Changes made with @tomka see catmaid#1765
All geometries in the back-end are now stored as PostGIS TIN Geometry. This allows for more consistency and a cleaner API. Implemented together with @aschampion, @clbarnes, @Willp24. See #1765 Fixes #1581
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
I rebased the |
All geometries in the back-end are now stored as PostGIS TIN Geometry. This allows for more consistency and a cleaner API. Implemented together with @aschampion, @clbarnes, @Willp24. See #1765 Fixes #1581
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
All geometries in the back-end are now stored as PostGIS TIN Geometry. This allows for more consistency and a cleaner API. Implemented together with @aschampion, @clbarnes, @Willp24. See #1765 Fixes #1581
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
Add an ontology class for volumes, create class instances for all existing volumes, and relate volume class instances to volume rows via a `volume_class_instance` table. Also move the `model_of` relation from the needed classes for the tracing tool to the default project needed classes. Written with @tomka, @clbarnes, and @Willp24. See #1765.
Add front-end and back-end functionality to add annotations to a set of volumes. A new checkbox column has been added to the volume table and an "Annotate" button, that allows to annotate all selected volumes. Worked on together with @aschampion, @clbarnes and @Willp24. See #1765
I rebased this a couple more times and fixed a few small things (e.g. migrations)---sorry for all the notifications due to mentions in the commit messages. I opted against removing the migration 0018 test for now, because I think it is a nice example for doing something like that (we could also keep it with an I also removed the latest commit, which was the reversal of the volume API change. I now agree that this change is reasonable and the new API better. This API change and all others I could find in this branch are now also explained in the Before filing a PR for this, I'd like to check the handedness of all triangles like suggested above. Other remaining issues in this ticket can be implemented in |
This is run now by default for the catmaid_check_db_integrity management command. The --tracing [true|false] and --volumes [true|false] command line parameters now allow to explicitly test only some parts of the database. By default all is tested. Please enter the commit message for your changes. Lines starting See #1765
If the 'trimesh' library is installed, the 'check_db_integretiy' management command will now also check if all triangles that make up CATMAID volumes have the same orientation (per volume). See #1765
While I believe the
This should return no results and it indeed doesn't after the migrations of this branch is applied and before the migration is applied only box volumes were returned by this (which makes sense, because we stored them as polyhedral surfaces). To test the winding, I added a second test to the
With the help of this management command I checked both L1 and FAFBv14 before and after the volume migrations. All volumes have a consistent winding before and after the migration is applied. I also imported different STL files and created boxes---the winding stayed consistent. This makes me confident enough in these changes and means all the PR TODOs above are implemented, I will open a PR for the |
Going to close this, as the remaining issues are now rather distinct:
|
Ideas
Mesh representation
EITHER
OR
Formats
Binary format is required
obj
is probably too extensive, binary format is poorly supportedx3d
is poorly supportedstl
is commonly supported, but contains a normal vertex and is not indexedLabel volume support
Volume annotation/search
3D viewer volume UI
Mesh visualisation
Tasks
Extension
PR TODOs
The text was updated successfully, but these errors were encountered: