ProteinMotion
Reference navigation
On this page

CLASS · v0.9.1

RegionHighlight

Draw a sphere, wire box, or atom halos around a region.

python
from proteinmotion import RegionHighlight

Constructor

python
RegionHighlight(
    region,
    *,
    style='sphere',
    color='#f2ba67',
    opacity=None,
    padding=None,
    line_width=0.12,
)

Parameters

ParameterDefaultDescription
regionRequiredRegion selection attached to a protein.
stylekeyword only'sphere'"sphere", "box", or "atoms".
colorkeyword only'#f2ba67'Hex color or RGB values. For tint setters, None restores the representation’s base palette.
opacitykeyword onlyNoneOpacity in [0, 1]. None uses 0.9 for a box and 0.18 otherwise.
paddingkeyword onlyNoneExtra size in ångströms. None uses 0.3 for atoms and 2.0 otherwise.
line_widthkeyword only0.12Box edge radius in ångströms.

Notes

The highlight follows the region’s coordinates and parent transform. Animate its opacity; apply movement to the parent protein. Highlight geometry describes a region boundary.

Example and output

This excerpt runs inside a scene’s construct() method. The full example file includes imports, structure loading, and camera setup. Run it from a repository checkout.

Code Scene excerpt
python
p = ubiquitin()
frame(self, p)
helix = p.select(residues=(23, 34))
for style in ("sphere", "box", "atoms"):
    marker = helix.highlight(
        style=style,
        color="#f2ba67",
        padding=1.0,
        opacity=0.3,
    )
    self.play(FadeIn(marker), run_time=0.6)
    self.wait(1.2)
    self.play(FadeOut(marker), run_time=0.6)
Output Preview · 7.2 s · 60 fps
3D highlights

Sphere, box, and atom highlights on the same helix.

Methods and properties

NameDescription
copy()methodCreate another region.highlight() for independent styling. Calling copy() raises ValueError.
select()method · inherited from ProteinSelect atoms by author chain, residue number, and atom name.
label_residues()method · inherited from ProteinCreate labels for the selected residues. Extra options go to ResidueLabels.
hydrogen_bonds()method · inherited from ProteinCreate a hydrogen-bond analysis. Options go to HydrogenBonds.
electrostatics()method · inherited from ProteinCreate a screened Coulomb analysis. Options go to Electrostatics.
from_file()class method · inherited from ProteinLoad PDB or mmCIF coordinates and retain all models with matching atom identities.
from_trajectory()class method · inherited from ProteinCreate a protein from the trajectory’s topology and first frame.
positionsproperty · inherited from ProteinCurrent atom coordinates in the protein’s local coordinate frame.
atom_progressproperty · inherited from ProteinCurrent interpolation fraction for each atom.
atom_opacitiesproperty · inherited from ProteinCurrent per-atom opacity, including global opacity and residue fades.
set_positions()method · inherited from ProteinReplace coordinates while preserving atom identities and topology.
center()method · inherited from ProteinMove the molecular centroid to the world origin.
shift()method · inherited from ProteinTranslate the object by an offset.
rotate()method · inherited from ProteinRotate around the molecular centroid.
scale()method · inherited from ProteinScale around the molecular centroid.
set_opacity()method · inherited from ProteinSet or animate opacity in [0, 1].
set_color()method · inherited from ProteinApply a tint across all representations. None restores the base palette.
color_by()method · inherited from ProteinApply residue property colors and optional cartoon thickness before adding the protein to a scene.
color_residues()method · inherited from ProteinApply a tint to the selected residues in every representation.
set_residue_opacity()method · inherited from ProteinSet opacity on the selected residues.
surface()method · inherited from ProteinShow a van der Waals, solvent-accessible, or voxel solvent-excluded surface.
cartoon()method · inherited from ProteinShow helices, sheet arrows, and coils as a cartoon.
ribbon()method · inherited from ProteinShow a continuous backbone ribbon.
ball_and_stick()method · inherited from ProteinShow element-colored atom spheres and covalent bond cylinders.
with_secondary_structure()method · inherited from ProteinAssign helix, sheet, and coil labels before adding the protein to a scene.
animateproperty · inherited from ProteinCreate a builder for protein transforms, opacity, and color animation.
model_matrixproperty · inherited from ProteinCurrent 4 × 4 transform from local to world coordinates.
snapshot()method · inherited from ProteinCapture the current state for deterministic timeline evaluation.
restore()method · inherited from ProteinRestore a state produced by snapshot().
python
RegionHighlight.copy()

Create another region.highlight() for independent styling. Calling copy() raises ValueError.

Inherited from protein.Protein.

python
RegionHighlight.select(*, chain=None, residues=None, atoms=None)

Select atoms by author chain, residue number, and atom name.

ParameterDefaultDescription
chainkeyword onlyNoneAuthor chain ID or a collection of IDs; None selects all chains.
residueskeyword onlyNoneAuthor residue number, inclusive (first, last) tuple, or list of individual numbers.
atomskeyword onlyNoneAtom name or list of names, such as "CA"; None selects all atom names.

Returns: Region

A residue tuple is an inclusive range. A list selects individual numbers. Empty selections raise ValueError.

Inherited from protein.Protein.

python
RegionHighlight.label_residues(*, chain=None, residues=None, **kwargs)

Create labels for the selected residues. Extra options go to ResidueLabels.

ParameterDefaultDescription
chainkeyword onlyNoneAuthor chain ID or a collection of IDs; None selects all chains.
residueskeyword onlyNoneAuthor residue number, inclusive (first, last) tuple, or list of individual numbers.
**kwargsAdditional keyword options described below or in the linked constructor.

Returns: ResidueLabels

Inherited from protein.Protein.

python
RegionHighlight.hydrogen_bonds(**kwargs)

Create a hydrogen-bond analysis. Options go to HydrogenBonds.

ParameterDefaultDescription
**kwargsAdditional keyword options described below or in the linked constructor.

Returns: HydrogenBonds

Inherited from protein.Protein.

python
RegionHighlight.electrostatics(charges='formal', **kwargs)

Create a screened Coulomb analysis. Options go to Electrostatics.

ParameterDefaultDescription
charges'formal'"formal" side-chain templates or one charge per atom, in elementary charge units.
**kwargsAdditional keyword options described below or in the linked constructor.

Returns: Electrostatics

Inherited from protein.Protein.

python
RegionHighlight.from_file(path, **kwargs)

Load PDB or mmCIF coordinates and retain all models with matching atom identities.

ParameterDefaultDescription
pathRequiredInput or output file path, as specified by the operation.
**kwargsAdditional keyword options described below or in the linked constructor.

Returns: Protein

Keyword options: chains=None, include_water=False, include_hydrogens=False. Other hetero atoms are retained.

Inherited from protein.Protein.

python
RegionHighlight.from_trajectory(trajectory)

Create a protein from the trajectory’s topology and first frame.

ParameterDefaultDescription
trajectoryRequiredTrajectory with the same atom identities and order; None uses the protein’s trajectory.

Returns: Protein

Inherited from protein.Protein.

python
RegionHighlight.positions

Current atom coordinates in the protein’s local coordinate frame.

Returns: Array with shape (selected atoms, 3), in ångströms.

Inherited from protein.Protein.

python
RegionHighlight.atom_progress

Current interpolation fraction for each atom.

Inherited from protein.Protein.

python
RegionHighlight.atom_opacities

Current per-atom opacity, including global opacity and residue fades.

Inherited from protein.Protein.

python
RegionHighlight.set_positions(xyz)

Replace coordinates while preserving atom identities and topology.

ParameterDefaultDescription
xyzRequiredFinite coordinates with shape (atoms, 3), in ångströms.

Returns: The protein.

Inherited from protein.Protein.

python
RegionHighlight.center()

Move the molecular centroid to the world origin.

Returns: The protein.

Inherited from protein.Protein.

python
RegionHighlight.shift(vector)

Translate the object by an offset.

ParameterDefaultDescription
vectorRequiredFinite 3D translation vector in ångströms.

Returns: The object or animation builder.

Inherited from protein.Protein.

python
RegionHighlight.rotate(angle, axis=(0, 1, 0))

Rotate around the molecular centroid.

ParameterDefaultDescription
angleRequiredRotation angle in radians.
axis(0, 1, 0)Nonzero 3D rotation axis; it is normalized internally.

Returns: The protein or animation builder.

Inherited from protein.Protein.

python
RegionHighlight.scale(factor)

Scale around the molecular centroid.

ParameterDefaultDescription
factorRequiredPositive scale or zoom factor.

Returns: The protein or animation builder.

Inherited from protein.Protein.

python
RegionHighlight.set_opacity(opacity)

Set or animate opacity in [0, 1].

ParameterDefaultDescription
opacityRequiredOpacity in [0, 1], from transparent to opaque.

Returns: The object or animation builder.

Inherited from protein.Protein.

python
RegionHighlight.set_color(color)

Apply a tint across all representations. None restores the base palette.

ParameterDefaultDescription
colorRequiredHex color or RGB values. For tint setters, None restores the representation’s base palette.

Returns: The object or a Colorize animation.

Inherited from protein.Protein.

python
RegionHighlight.color_by(values, *, scale=None, thickness=None)

Apply residue property colors and optional cartoon thickness before adding the protein to a scene.

ParameterDefaultDescription
valuesRequiredNumerical input values; see the shape and missing-value rules for this object.
scalekeyword onlyNoneColorScale shared by the structure, plots, and legend. None derives limits from finite values.
thicknesskeyword onlyNoneOptional (minimum, maximum) positive cartoon cross-section scale factors. Missing values use 1.

Inherited from protein.Protein.

python
RegionHighlight.color_residues(color, *, chain=None, residues=None)

Apply a tint to the selected residues in every representation.

ParameterDefaultDescription
colorRequiredHex color or RGB values. For tint setters, None restores the representation’s base palette.
chainkeyword onlyNoneAuthor chain ID or a collection of IDs; None selects all chains.
residueskeyword onlyNoneAuthor residue number, inclusive (first, last) tuple, or list of individual numbers.

Returns: The protein.

Inherited from protein.Protein.

python
RegionHighlight.set_residue_opacity(opacity, *, chain=None, residues=None)

Set opacity on the selected residues.

ParameterDefaultDescription
opacityRequiredOpacity in [0, 1], from transparent to opaque.
chainkeyword onlyNoneAuthor chain ID or a collection of IDs; None selects all chains.
residueskeyword onlyNoneAuthor residue number, inclusive (first, last) tuple, or list of individual numbers.

Returns: The protein.

Inherited from protein.Protein.

python
RegionHighlight.surface(
    *,
    kind='ses',
    probe_radius=1.4,
    resolution=0.7,
    color='secondary',
    update='rebuild',
    **kwargs,
)

Show a van der Waals, solvent-accessible, or voxel solvent-excluded surface.

ParameterDefaultDescription
kindkeyword only'ses'Surface type: "vdw", "sas", or "ses".
probe_radiuskeyword only1.4Solvent probe radius in ångströms.
resolutionkeyword only0.7Surface grid spacing in ångströms; smaller values increase detail and cost.
colorkeyword only'secondary'Base palette: "secondary", "rainbow", "chain", or a fixed color.
updatekeyword only'rebuild'"rebuild" recalculates the surface as coordinates change; "deform" moves the reference mesh.
**kwargsAdditional keyword options described below or in the linked constructor.

Returns: The protein.

Additional option: max_voxels=8000000 limits the grid size. Configure surface settings before the first play() call. The ses surface is a voxel approximation.

Inherited from protein.Protein.

python
RegionHighlight.cartoon(*, color='secondary')

Show helices, sheet arrows, and coils as a cartoon.

ParameterDefaultDescription
colorkeyword only'secondary'Base palette: "secondary", "rainbow", "chain", or a fixed color.

Returns: The protein.

Inherited from protein.Protein.

python
RegionHighlight.ribbon(*, color='rainbow', width=1.05)

Show a continuous backbone ribbon.

ParameterDefaultDescription
colorkeyword only'rainbow'Base palette: "secondary", "rainbow", "chain", or a fixed color.
widthkeyword only1.05Ribbon width in ångströms.

Returns: The protein.

Inherited from protein.Protein.

python
RegionHighlight.ball_and_stick(*, atom_scale=0.3, bond_radius=0.14)

Show element-colored atom spheres and covalent bond cylinders.

ParameterDefaultDescription
atom_scalekeyword only0.3Multiplier applied to element van der Waals radii for ball-and-stick atoms.
bond_radiuskeyword only0.14Covalent bond cylinder radius in ångströms.

Returns: The protein.

Inherited from protein.Protein.

python
RegionHighlight.with_secondary_structure(assignments)

Assign helix, sheet, and coil labels before adding the protein to a scene.

ParameterDefaultDescription
assignmentsRequiredOne "H", "E", or "C" code per topology residue for helix, sheet, or coil.

Returns: The protein.

Inherited from protein.Protein.

python
RegionHighlight.animate

Create a builder for protein transforms, opacity, and color animation.

Returns: Animate

Inherited from protein.Protein.

python
RegionHighlight.model_matrix

Current 4 × 4 transform from local to world coordinates.

Inherited from protein.Protein.

python
RegionHighlight.snapshot()

Capture the current state for deterministic timeline evaluation.

Returns: State dictionary.

Inherited from protein.Protein.

python
RegionHighlight.restore(s)

Restore a state produced by snapshot().

ParameterDefaultDescription
sRequiredState returned by snapshot().

Returns: None