GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — cameras and controllers refactor by kushalkolar · Pull Request #382 · fastplotlib/fastplotlib

Conversation

@kushalkolar

@kushalkolar kushalkolar commented Nov 26, 2023 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

superseeds #280 #267
closes #381, closes #383

PlotArea allows changing the controller types, so all plots and subplots can have their controllers changed at any time. In gridplots, if the same controller is used for multiple subplots then it will change the controller for the other respective subplots too if it's changed for only one of the subplots within that synced-subset. Slightly inelegant implementation, we can make it better later.

Merged layouts._defaults into layouts._utils.

Adds the new controllers from pygfx:

  • panzoom
  • fly (new)
  • orbit
  • trackball (new)

Gridplot handles controllers differently now. I think the implementation isn't too complex, I realized we have no reason to have consecutive integers for controller_ids so that makes life easier! @clewis7 @ArjunPutcha please let me know asap!!

controller_types: str, list or np.ndarray, optional
            list or array that specifies the controller type for each subplot.

        controller_ids: str, list or np.ndarray of int or str ids, optional
            | If `None` a unique controller is created for each subplot
            | If "sync" all the subplots use the same controller
            | If ``numpy.array``, its shape must be the same as ``grid_shape``.

            This allows custom assignment of controllers

            | Example with integers:
            | sync first 2 plots, and sync last 2 plots: [[0, 0, 1], [2, 3, 3]]
            | Example with str subplot names:
            | list of lists of subplot names, each sublist is synced: [[subplot_a, subplot_b], [subplot_f, subplot_c]]
            | this syncs subplot_a and subplot_b together; syncs subplot_e and subplot_c together

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@kushalkolar
reorganize camera and controller initialization, allow setting them, WIP
cd49cd2
This was referenced Nov 26, 2023
Sync Subplots by Name #267
Closed
More controllers #280
Closed
kushalkolar added 8 commits November 26, 2023 03:38
@kushalkolar
controllers named sync done, not tested yet
c0c37ec
@kushalkolar
new controllers work, ids also works, changing controllers works
9e9af57
@kushalkolar
bugfix
b72fcd7
@kushalkolar
update nb examples
7e23337
@kushalkolar
update nbs
723354c
@kushalkolar
controller changes for imagewidget
5e384ab
@kushalkolar
fix type annotation
92cae59
@kushalkolar
update example
4b4a31d
@kushalkolar
kushalkolar marked this pull request as ready for review November 26, 2023 10:55
kushalkolar added 2 commits November 26, 2023 06:04
@kushalkolar
update example
5954740
@kushalkolar
update quickstart nb
7f6e5dc
@kushalkolar
kushalkolar requested review from ArjunPutcha and clewis7 November 26, 2023 11:07
@kushalkolar
update screenshot
5052629
@kushalkolar kushalkolar mentioned this pull request Nov 26, 2023
Roadmap Fall 2023 #130
Closed
16 of 17 tasks
@kushalkolar
use perspective camera for everything
6963679
clewis7
clewis7 reviewed Nov 29, 2023
View reviewed changes
Comment thread fastplotlib/layouts/_gridplot.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread fastplotlib/layouts/_gridplot.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread fastplotlib/layouts/_gridplot.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread fastplotlib/layouts/_gridplot.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread fastplotlib/layouts/_gridplot.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread fastplotlib/layouts/_gridplot.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread fastplotlib/layouts/_gridplot.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

Comment thread fastplotlib/layouts/_subplot.py Resolved

Uh oh!

There was an error while loading. Please reload this page.

kushalkolar and others added 4 commits November 29, 2023 12:33
@kushalkolar @clewis7
typo
6cec1e8
Co-authored-by: Caitlin Lewis <[email protected]>
@kushalkolar @clewis7
typo
91c9dfc
Co-authored-by: Caitlin Lewis <[email protected]>
@kushalkolar
more detailed exception
c9c2339
@kushalkolar
better names
071bef4
@kushalkolar
kushalkolar merged commit 21762a5 into main Nov 30, 2023
@kushalkolar
kushalkolar deleted the more-controllers-attempt-2 branch December 10, 2023 05:15
@kushalkolar kushalkolar mentioned this pull request Jan 23, 2024
sync subsets of controllers in GridPlot using subplot names #218
Closed
@kushalkolar kushalkolar mentioned this pull request Mar 6, 2024
Directly pass Controller instances to GridPlot #425
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@clewis7 clewis7 clewis7 left review comments
@ArjunPutcha ArjunPutcha Awaiting requested review from ArjunPutcha

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Use PerspectiveCamera for everything Allow changing the cameras and controllers dynamically

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@kushalkolar @clewis7
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.