Skip to content
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

iso-surface finalist with caps, slices & spaceframe display on uniform or non-uniform coordinates #3438

Merged
merged 169 commits into from
Jan 22, 2019

Conversation

archmoj
Copy link
Contributor

@archmoj archmoj commented Jan 15, 2019

Supersedes #3340 i.e. using neither gl-isosurface3d nor isosurface modules!
Totally rewritten and based on plotly.js most recent source code for mesh3d trace.
Iso-surfacea, caps, horizontal & vertical slices as well as 3-D spaceframe between iso-min & iso-max ranges of volume data could be visualised using this new trace.
Now non-uniform coordinates are also supported.

Various options and data could be tested using this demo.

gl3d_isosurface_xycaps_volume_slices

@plotly/plotly_js

@archmoj archmoj changed the title iso-surface finalist with caps, slices & volume display on parametric coordinates iso-surface finalist with caps, slices & spaceframe display on uniform or non-uniform coordinates Jan 21, 2019
@archmoj
Copy link
Contributor Author

archmoj commented Jan 21, 2019

@etpinard simply for your info:
Now the slices perform interpolations between axis points thanks to 436c0d9.
Later on the road, the function may possibly be applied for creating slices in directions other than (x|y|z) and with inclination.

@etpinard
Copy link
Contributor

@archmoj You're getting really close! I think the only thing missing a one "simple" mock with multiple isosurface traces on the same scene.

@etpinard
Copy link
Contributor

Oh and one more thing: add one isosurface mock (I'd pick the one that renders the fastest) to this list

var glMockList = [
['gl2d_heatmapgl', require('@mocks/gl2d_heatmapgl.json')],
['gl2d_line_dash', require('@mocks/gl2d_line_dash.json')],
['gl2d_parcoords_2', require('@mocks/gl2d_parcoords_2.json')],
['gl2d_pointcloud-basic', require('@mocks/gl2d_pointcloud-basic.json')],
['gl3d_annotations', require('@mocks/gl3d_annotations.json')],
['gl3d_set-ranges', require('@mocks/gl3d_set-ranges.json')],
['gl3d_world-cals', require('@mocks/gl3d_world-cals.json')],
['gl3d_cone-autorange', require('@mocks/gl3d_cone-autorange.json')],
['gl3d_streamtube-simple', require('@mocks/gl3d_streamtube-simple.json')],
['glpolar_style', require('@mocks/glpolar_style.json')],
];

archmoj and others added 2 commits January 21, 2019 18:05
- by adding _lenght=null to disable transforms
- by making _x, _y, _z instead of mutating fullData[i].(x|y|z)
- by linking _i, _j, _k and _intensity in fullData[i] instead
  of i,j,k and intensity
@etpinard
Copy link
Contributor

Ok. Tests are passing!

Time to merge this thing! 💃 💃 💃

Awesome work @archmoj !!

@archmoj
Copy link
Contributor Author

archmoj commented Jan 22, 2019

Many thanks @etpinard for the help & review.
Merging...

@archmoj archmoj merged commit 741f958 into master Jan 22, 2019
@archmoj archmoj deleted the isosurface-volume branch January 22, 2019 00:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature something new
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants