Skip to content

Commit

Permalink
Merge branch 'fury-gl:master' into cube_viz
Browse files Browse the repository at this point in the history
  • Loading branch information
robinroy03 authored Mar 2, 2024
2 parents 6feeeb0 + ea0fb16 commit d4b3344
Show file tree
Hide file tree
Showing 78 changed files with 2,005 additions and 332 deletions.
14 changes: 14 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Set update schedule for GitHub Actions

version: 2
updates:

- package-ecosystem: "github-actions"
directory: "/"
schedule:
# Check for updates to GitHub Actions every week
interval: "weekly"
groups:
actions:
patterns:
- "*"
4 changes: 2 additions & 2 deletions .github/workflows/codespell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Codespell
uses: codespell-project/actions-codespell@v1
uses: codespell-project/actions-codespell@v2
6 changes: 3 additions & 3 deletions .github/workflows/doc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ jobs:
matrix:
python-version: [3.9]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install Dependencies
Expand Down Expand Up @@ -62,5 +62,5 @@ jobs:
ssh-key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
repository-name: fury-gl/fury-website
folder: ./docs/build/html-web-only
target-folder: v0.9.x
target-folder: v0.10.x
clean: false
14 changes: 7 additions & 7 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,10 @@ jobs:
PRE_WHEELS: "https://pypi.anaconda.org/scipy-wheels-nightly/simple"

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/cache@v2
- uses: actions/cache@v4
if: startsWith(runner.os, 'Linux')
with:
path: |
Expand All @@ -66,22 +66,22 @@ jobs:
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- uses: actions/cache@v2
- uses: actions/cache@v4
if: startsWith(runner.os, 'macOS')
with:
path: ~/Library/Caches/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- uses: actions/cache@v2
- uses: actions/cache@v4
if: startsWith(runner.os, 'Windows')
with:
path: ~/.pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Set up Virtualenv
Expand All @@ -90,7 +90,7 @@ jobs:
python -m pip install --upgrade pip virtualenv
virtualenv $VENV_ARGS venv
- name: Setup Miniconda
uses: conda-incubator/setup-miniconda@v2
uses: conda-incubator/setup-miniconda@v3
if: ${{ matrix.install-type == 'conda' }}
with:
auto-update-conda: true
Expand All @@ -113,7 +113,7 @@ jobs:
ci/run_tests.sh
fi
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
uses: codecov/codecov-action@v4
if: ${{ matrix.coverage }}
with:
token: ${{ secrets.CODECOV_TOKEN }}
Expand Down
2 changes: 2 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -61,3 +61,5 @@ Sreekar Chigurupati <[email protected]> sreekar chigurupati <chigurup
Johny Daras <[email protected]> lej0hn <[email protected]>
Francois Rheault <[email protected]> frheault <[email protected]>
Dwij Raj Hari <[email protected]> Dwij Raj Hari <[email protected]>
Tania Castillo <[email protected]> tvcastillod <[email protected]>
Tania Castillo <[email protected]> Tania Castillo <[email protected]>
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2023, FURY - Free Unified Rendering in Python. All rights reserved.
Copyright (c) 2024, FURY - Free Unified Rendering in Python. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/_valid_examples.toml
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ readme = "file: _animation.rst"
position = 10
enable = true
files = [
"viz_interpolators.py",
# "viz_interpolators.py",
"viz_bezier_interpolator.py",
"viz_introduction.py",
"viz_camera.py",
Expand Down
7 changes: 5 additions & 2 deletions docs/examples/viz_card_sprite_sheet.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,11 @@
First, some imports.
"""
import os
from tempfile import TemporaryDirectory as InTemporaryDirectory

from fury import ui, window
from fury.data import fetch_viz_icons
from fury.io import load_image, load_sprite_sheet, save_image
from tempfile import TemporaryDirectory as InTemporaryDirectory

##############################################################################
# First we need to fetch some icons that are included in FURY.
Expand All @@ -23,7 +24,9 @@

fetch_viz_icons()

sprite_sheet = load_sprite_sheet('https://i.imgur.com/0yKFTBQ.png', 5, 5)
sprite_sheet = load_sprite_sheet('https://raw.githubusercontent.com/fury-gl/'
'fury-data/master/unittests/fury_sprite.png',
5, 5)
CURRENT_SPRITE_IDX = 0

vtk_sprites = []
Expand Down
10 changes: 5 additions & 5 deletions docs/examples/viz_chain.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,15 +92,15 @@
basePosition,
baseOrientation,
linkMasses=link_Masses,
linkCollisionShapeIndices=linkCollisionShapeIndices,
linkVisualShapeIndices=linkVisualShapeIndices,
linkCollisionShapeIndices=linkCollisionShapeIndices.astype(int),
linkVisualShapeIndices=linkVisualShapeIndices.astype(int),
linkPositions=linkPositions,
linkOrientations=linkOrientations,
linkInertialFramePositions=linkInertialFramePositions,
linkInertialFrameOrientations=linkInertialFrameOrns,
linkParentIndices=indices,
linkJointTypes=jointTypes,
linkJointAxis=axis,
linkParentIndices=indices.astype(int),
linkJointTypes=jointTypes.astype(int),
linkJointAxis=axis.astype(int),
)

###############################################################################
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/viz_interaction.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@
Notes
-----
If you don't have ffmpeg installed, you need to install it to use WebRTC
Linux
Expand All @@ -29,6 +28,7 @@
OS X
`brew install ffmpeg opus libvpx pkg-config`
"""

import multiprocessing
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/viz_skinning.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@

# After we get the timeline object, We want to initialise the skinning process.
# You can set `bones=true` to visualize each bone transformation. Additionally,
# you can set `lenght` of bones in the `initialise_skin` method.
# you can set `length` of bones in the `initialise_skin` method.
# Note: Make sure to call this method before you initialize ShowManager, else
# bones won't be added to the scene.

Expand Down
3 changes: 2 additions & 1 deletion docs/examples/viz_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,9 @@
`brew install ffmpeg opus libvpx pkg-config`
Notes
------
-----
For this example your python version should be 3.8 or greater
"""

import asyncio
Expand Down
18 changes: 9 additions & 9 deletions docs/examples/viz_wrecking_ball.py
Original file line number Diff line number Diff line change
Expand Up @@ -177,15 +177,15 @@
basePosition,
baseOrientation,
linkMasses=link_Masses,
linkCollisionShapeIndices=linkCollisionShapeIndices,
linkVisualShapeIndices=linkVisualShapeIndices,
linkPositions=linkPositions,
linkOrientations=linkOrientations,
linkInertialFramePositions=linkInertialFramePositions,
linkInertialFrameOrientations=linkInertialFrameOrns,
linkParentIndices=indices,
linkJointTypes=jointTypes,
linkJointAxis=axis,
linkCollisionShapeIndices=linkCollisionShapeIndices.astype(int),
linkVisualShapeIndices=linkVisualShapeIndices.astype(int),
linkPositions=linkPositions.astype(int),
linkOrientations=linkOrientations.astype(int),
linkInertialFramePositions=linkInertialFramePositions.astype(int),
linkInertialFrameOrientations=linkInertialFrameOrns.astype(int),
linkParentIndices=indices.astype(int),
linkJointTypes=jointTypes.astype(int),
linkJointAxis=axis.astype(int),
)

###############################################################################
Expand Down
2 changes: 1 addition & 1 deletion docs/experimental/viz_canvas.py
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ def test_sh():
vec3 lin = 2.5*occ*vec3(1.0,1.00,1.00)*(0.6+0.4*nor.y);
lin += 1.0*sss*vec3(1.0,0.95,0.70)*occ;
// surface-light interacion
// surface-light interaction
col = mate.xyz * lin;
}
Expand Down
1 change: 1 addition & 0 deletions docs/experimental/viz_molecular_demo.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
Importing necessary modules
"""

import os
Expand Down
1 change: 1 addition & 0 deletions docs/experimental/viz_shader_canvas.py
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,7 @@ def rectangle2(centers, colors, use_vertices=False, size=(2, 2)):
centers : ndarray, shape (N, 3)
colors : ndarray (N,3) or (N, 4) or tuple (3,) or tuple (4,)
RGB or RGBA (for opacity) R, G, B and A should be at the range [0, 1]
"""
if np.array(colors).ndim == 1:
colors = np.tile(colors, (len(centers), 1))
Expand Down
3 changes: 1 addition & 2 deletions docs/experimental/viz_shader_frag_fract.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
"""
This simple example demonstrates how to use shaders to modify the fragments in
"""This simple example demonstrates how to use shaders to modify the fragments in
your scene. We will use the AddShaderReplacement() function to modify the
fragment shader with VTK's shader template system.
Expand Down
7 changes: 6 additions & 1 deletion docs/source/_static/versions_switcher.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,13 @@
"url": "https://fury.gl/dev/index.html"
},
{
"name": "v0.9.x (stable)",
"name": "v0.10.x (stable)",
"version": "stable",
"url": "https://fury.gl/v0.10.x/index.html"
},
{
"name": "v0.9.x",
"version": "v0.9.x",
"url": "https://fury.gl/v0.9.x/index.html"
},
{
Expand Down
5 changes: 1 addition & 4 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -341,9 +341,6 @@
'scipy': ('https://docs.scipy.org/doc/scipy/', None),
'pandas': ('https://pandas.pydata.org/docs/', None),
'matplotlib': ('https://matplotlib.org/stable/', None),
'dipy': (
'https://dipy.org/documentation/latest',
'https://dipy.org/documentation/latest/objects.inv/',
),
'dipy': ('https://docs.dipy.org/stable', None),
'scikit-learn': ('https://scikit-learn.org/stable/', None),
}
7 changes: 4 additions & 3 deletions docs/source/ext/apigen.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
"""
Attempt to generate templates for module reference with Sphinx.
"""Attempt to generate templates for module reference with Sphinx.
To include extension modules, first identify them as valid in the
``_uri2path`` method, then handle them in the ``_parse_module_with_import``
Expand All @@ -15,6 +14,7 @@
This is a modified version of a script originally shipped with the PyMVPA
project, then adapted for use first in NIPY and then in skimage. PyMVPA
is an MIT-licensed project.
"""

# Stdlib imports
Expand All @@ -29,7 +29,8 @@

class ApiDocWriter:
"""Class for automatic detection and parsing of API docs
to Sphinx-parsable reST format."""
to Sphinx-parsable reST format.
"""

# only separating first two levels
rst_section_levels = ['*', '=', '-', '~', '^']
Expand Down
1 change: 0 additions & 1 deletion docs/source/ext/build_modref_templates.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ def generate_api_reference_rst(

def setup(app):
"""Setup sphinx extension for API reference generation."""

app.connect('builder-inited', generate_api_reference_rst)
# app.connect('build-finished', summarize_failing_examples)

Expand Down
2 changes: 0 additions & 2 deletions docs/source/ext/github.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ def make_link_node(rawtext, app, type, slug, options):
:param slug: ID of the thing to link to
:param options: Options dictionary passed to role func.
"""

try:
base = app.config.github_project_url
if not base:
Expand Down Expand Up @@ -68,7 +67,6 @@ def ghissue_role(name, rawtext, text, lineno, inliner, options={}, content=[]):
:param options: Directive options for customization.
:param content: The directive content for customization.
"""

try:
issue_num = int(text)
if issue_num <= 0:
Expand Down
2 changes: 1 addition & 1 deletion docs/source/posts/2021/2021-06-28-gsoc-devmessias-4.rst
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ must have a way to lock the write/read if the memory resource is busy.
Meanwhile the
`multiprocessing.Arrays <https://docs.python.org/3/library/multiprocessing.html#multiprocessing.Array>`__
already has a context which allows lock (.get_lock()) SharedMemory
dosen’t[2]. The use of abstract class allowed me to deal with those
doesn’t[2]. The use of abstract class allowed me to deal with those
peculiarities. `commit
358402e <https://github.com/fury-gl/fury/pull/437/commits/358402ea2f06833f66f45f3818ccc3448b2da9cd>`__

Expand Down
2 changes: 1 addition & 1 deletion docs/source/posts/2021/2021-07-05-gsoc-devmessias-5.rst
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ tasks related with this PR:
`#424`_ now is possible to control all the visual characteristics at
runtime.
- 2D Layout: Meanwhile 3d network representations are very usefully
for exploring a dataset is hard to convice a group of network
for exploring a dataset is hard to convince a group of network
scientists to use a visualization system which doesn't allow 2d
representations. Because of that I started to coding the 2d behavior
in the network visualization system.
Expand Down
2 changes: 1 addition & 1 deletion docs/source/posts/2021/2021-08-23-final-work-antriksh.rst
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ Objectives Completed

- **Add Accordion2D UI element to the UI sub-module**

Added Accordion2D to the UI sub-module. This Ui element allows users to visulize data in a tree with depth of one. Each node has a title and a content panel. The children for each node can be N if and only if the children are not nodes themselves. The child UIs can be placed inside the content panel by passing some coordinates, which can be absolute or normalized w.r.t the node content panel size. Tests and two demos were added for this UI element. Below is a screenshot for reference
Added Accordion2D to the UI sub-module. This Ui element allows users to visualize data in a tree with depth of one. Each node has a title and a content panel. The children for each node can be N if and only if the children are not nodes themselves. The child UIs can be placed inside the content panel by passing some coordinates, which can be absolute or normalized w.r.t the node content panel size. Tests and two demos were added for this UI element. Below is a screenshot for reference

.. image:: https://camo.githubusercontent.com/9395d0ea572d7f253a051823f02496450c9f79d19ff0baf32841ec648b6f2860/68747470733a2f2f692e696d6775722e636f6d2f7854754f645a742e706e67
:width: 200
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ Other Objectives

- **Grouping Shapes**

Many times we need to perform some actions on a group of shapes so here we are with the grouping feature using which you can group shapes together, reposition them, rotate them and delete them together. To activate grouping of shapes you have to be on selection mode then by holding **Ctrl** key select the required shapes and they will get highlighted. To remove shape from the group just hold the **Ctrl** and click the shape again it will get deselected. Then once eveything is grouped you can use the normal transformation as normal i.e. for translation just drag the shapes around and for rotation the rotation slider appears at usual lower left corner which can be used.
Many times we need to perform some actions on a group of shapes so here we are with the grouping feature using which you can group shapes together, reposition them, rotate them and delete them together. To activate grouping of shapes you have to be on selection mode then by holding **Ctrl** key select the required shapes and they will get highlighted. To remove shape from the group just hold the **Ctrl** and click the shape again it will get deselected. Then once everything is grouped you can use the normal transformation as normal i.e. for translation just drag the shapes around and for rotation the rotation slider appears at usual lower left corner which can be used.

*Pull Requests:*

Expand Down
Loading

0 comments on commit d4b3344

Please sign in to comment.