Skip to content

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

Merged
archmoj merged 169 commits into
masterfrom
isosurface-volume
Jan 22, 2019
Merged

iso-surface finalist with caps, slices & spaceframe display on uniform or non-uniform coordinates#3438
archmoj merged 169 commits into
masterfrom
isosurface-volume

Conversation

@archmoj

@archmojarchmoj commented Jan 15, 2019

Copy link
Copy Markdown
Contributor

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

@archmojarchmoj changed the title iso-surface finalist with caps, slices & volume display on parametric coordinatesiso-surface finalist with caps, slices & spaceframe display on uniform or non-uniform coordinatesJan 21, 2019
@archmoj

Copy link
Copy Markdown
ContributorAuthor

@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.

Comment threadsrc/traces/isosurface/attributes.js Outdated
@etpinard

Copy link
Copy Markdown
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.

Comment threadtest/jasmine/tests/isosurface_test.js Outdated
@etpinard

Copy link
Copy Markdown
Contributor

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

varglMockList=[
['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')],
];

Comment threadtest/image/mocks/gl3d_isosurface_out_of_iso_range_case.json
Comment threadsrc/traces/isosurface/index.js Outdated
archmojand 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
Comment threadtest/jasmine/assets/mock_lists.js
@etpinard

Copy link
Copy Markdown
Contributor

Ok. Tests are passing!

Time to merge this thing! 💃 💃 💃

Awesome work @archmoj !!

@archmoj

Copy link
Copy Markdown
ContributorAuthor

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

@archmoj
archmoj merged commit 741f958 into masterJan 22, 2019
@archmoj
archmoj deleted the isosurface-volume branch January 22, 2019 00:07
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

featuresomething new

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@archmoj@alexcjohnson@etpinard