Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
FSL
fslpy
Commits
1f3fa431
Commit
1f3fa431
authored
Jan 27, 2020
by
Paul McCarthy
🚵
Browse files
Merge branch 'bf/mesh_indices' into 'master'
Bf/mesh indices See merge request fsl/fslpy!185
parents
90fcc75d
0ab31648
Pipeline
#4875
canceled with stages
in 13 seconds
Changes
4
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
CHANGELOG.rst
View file @
1f3fa431
...
...
@@ -34,6 +34,9 @@ Fixed
* Improved the algorithm used by the :func:`.mesh.needsFixing` function.
* The :meth:`.fslmaths.run` method now accepts :attr:`.wrappers.LOAD` as an
output specification.
* Fixed a bug in the :class:`.Mesh` class to prevent indices from being loaded
as floating point type.
* Fixed a bug in the :func:`.resample` function.
Deprecated
...
...
fsl/data/mesh.py
View file @
1f3fa431
...
...
@@ -154,14 +154,6 @@ class Mesh(notifier.Notifier, meta.Meta):
"""
def
__new__
(
cls
,
*
args
,
**
kwargs
):
"""Create a ``Mesh``. We must override ``__new__``, otherwise the
:class:`Meta` and :class:`Notifier` ``__new__`` methods will not be
called correctly.
"""
return
super
(
Mesh
,
cls
).
__new__
(
cls
,
*
args
,
**
kwargs
)
def
__init__
(
self
,
indices
,
name
=
'mesh'
,
...
...
@@ -189,7 +181,7 @@ class Mesh(notifier.Notifier, meta.Meta):
self
.
__name
=
name
self
.
__dataSource
=
dataSource
self
.
__nvertices
=
indices
.
max
()
+
1
self
.
__nvertices
=
int
(
indices
.
max
()
)
+
1
self
.
__selected
=
None
# We potentially store two copies of
...
...
@@ -197,7 +189,7 @@ class Mesh(notifier.Notifier, meta.Meta):
# orders. The vindices dict stores refs
# to one or the other for each vertex
# set.
self
.
__indices
=
np
.
asarray
(
indices
).
reshape
((
-
1
,
3
))
self
.
__indices
=
np
.
asarray
(
indices
,
dtype
=
np
.
int32
).
reshape
((
-
1
,
3
))
self
.
__fixedIndices
=
None
self
.
__vindices
=
collections
.
OrderedDict
()
...
...
fsl/utils/image/resample.py
View file @
1f3fa431
...
...
@@ -47,9 +47,9 @@ def resampleToReference(image, reference, matrix=None, **kwargs):
along the spatial (first three) dimensions.
:arg image: :class:`.Image` to resample
:arg matrix: Optional world-to-world affine alignment matrix
:arg reference: :class:`.Nifti` defining the space to resample ``image``
into
:arg matrix: Optional world-to-world affine alignment matrix
"""
oldShape
=
list
(
image
.
shape
)
...
...
@@ -204,9 +204,10 @@ def resample(image,
if
matrix
is
None
:
matrix
=
affine
.
rescale
(
data
.
shape
,
newShape
,
origin
)
# identity matrix? the image
# doesn't need to be resampled
if
np
.
all
(
np
.
isclose
(
matrix
,
np
.
eye
(
len
(
newShape
)
+
1
))):
# same shape and identity matrix? the
# image doesn't need to be resampled
if
np
.
all
(
np
.
isclose
(
data
.
shape
,
newShape
))
and
\
np
.
all
(
np
.
isclose
(
matrix
,
np
.
eye
(
len
(
newShape
)
+
1
))):
return
data
,
image
.
voxToWorldMat
newShape
=
np
.
array
(
np
.
round
(
newShape
),
dtype
=
np
.
int
)
...
...
requirements-extra.txt
View file @
1f3fa431
indexed_gzip>=0.7.0
wxpython==4.*
trimesh>=2.37.29
rtree
=
=0.8.3
rtree
>
=0.8.3
Pillow>=3.2.0
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment