Skip to content

Commit

Permalink
[geom] Implement __value_attrs__
Browse files Browse the repository at this point in the history
  • Loading branch information
holl- committed Mar 27, 2024
1 parent 9520481 commit 89559aa
Show file tree
Hide file tree
Showing 7 changed files with 27 additions and 0 deletions.
3 changes: 3 additions & 0 deletions phi/geom/_box.py
Original file line number Diff line number Diff line change
Expand Up @@ -319,6 +319,9 @@ def __hash__(self):
def __variable_attrs__(self):
return '_lower', '_upper'

def __value_attrs__(self):
return ()

@property
def shape(self):
if self._lower is None or self._upper is None:
Expand Down
6 changes: 6 additions & 0 deletions phi/geom/_geom.py
Original file line number Diff line number Diff line change
Expand Up @@ -549,6 +549,12 @@ def normal(self) -> Tensor:
def __repr__(self):
return f"~{self.geometry}"

def __variable_attrs__(self):
return self.geometry.__variable_attrs__

def __value_attrs__(self):
return self.geometry.__value_attrs__


def invert(geometry: Geometry):
"""
Expand Down
6 changes: 6 additions & 0 deletions phi/geom/_geom_ops.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,12 @@ def __init__(self, geometries: Union[Tensor, Geometry]):
def geometries(self):
return self._geometries

def __variable_attrs__(self):
return '_geometries',

def __value_attrs__(self):
return '_geometries',

@property
def object_dims(self):
return object_dims(self._geometries)
Expand Down
3 changes: 3 additions & 0 deletions phi/geom/_graph.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ def __init__(self, nodes: Union[Geometry, Tensor], connectivity: Tensor, boundar
def __variable_attrs__(self):
return '_nodes', '_deltas', '_distances'

def __value_attrs__(self):
return '_nodes',

@property
def connectivity(self) -> Tensor:
return self._connectivity
Expand Down
3 changes: 3 additions & 0 deletions phi/geom/_grid.py
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,9 @@ def __repr__(self):
def __variable_attrs__(self):
return ()

def __value_attrs__(self):
return ()

def __with_attrs__(self, **attrs):
if not attrs:
return self
Expand Down
3 changes: 3 additions & 0 deletions phi/geom/_heightmap.py
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,9 @@ def __repr__(self):
def __variable_attrs__(self):
return '_height', '_bounds', '_max_dist', '_fill_below', '_extrapolation', '_faces'

def __value_attrs__(self):
return ()

def __getitem__(self, item):
item = slicing_dict(self, item)
return Heightmap(self._height[item], self._bounds[item], self._max_dist[item], self._fill_below[item], self._extrapolation[item] if self._extrapolation is not None else None, math.slice(self._faces, item))
Expand Down
3 changes: 3 additions & 0 deletions phi/geom/_sphere.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,9 @@ def scaled(self, factor: Union[float, Tensor]) -> 'Geometry':
def __variable_attrs__(self):
return '_center', '_radius'

def __value_attrs__(self):
return ()

def __getitem__(self, item):
item = slicing_dict(self, item)
return Sphere(self._center[_keep_vector(item)], self._radius[item])
Expand Down

0 comments on commit 89559aa

Please sign in to comment.