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

brushing overplotted points #118

Closed
dicook opened this issue Jul 8, 2024 · 3 comments
Closed

brushing overplotted points #118

dicook opened this issue Jul 8, 2024 · 3 comments

Comments

@dicook
Copy link
Collaborator

dicook commented Jul 8, 2024

when points are overplotted the ones underneath fail to get coloured.

@casperhart
Copy link
Owner

casperhart commented Jul 8, 2024

There should be room to improve this, but I don't think it can be solved with the way brushing works.

Currently two scenes are rendered: the main one which is displayed, and a 'picking' scene which is invisible. The invisible scene has points filled with a colour corresponding to the ID, e.g. 0x000001, 0x000002, etc. When you select the points, it gets the distinct colours within the rectangle which is drawn, and those are the IDs which are selected. So if a point isn't visible, it won't be selected. To improve this, I could try making the points in the picking scene smaller so there's less chance of overlap, but it won't be perfect.

Ideally, the selection box would be translated to a shape in 3D space and then check if each point lies within that shape, but that would be quite a big task to implement.

@casperhart
Copy link
Owner

casperhart commented Jul 9, 2024

Try this:

remotes::install_github("casperhart/detourr@picking-improvements")

Using the example from #117, selecting points at basis one then moving to basis 2, this is before:
image

And this is after:
image

@casperhart
Copy link
Owner

fixed by #119

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants