pooltool.physics.resolve.resolver

Resolve collisions and transitions

Overview

Classes

Resolver

A physics engine component that characterizes event resolution

Function

default_resolver()

The default resolver.

Attributes

RESOLVER_PATH

The location of the resolver path YAML.

Classes

class pooltool.physics.resolve.resolver.Resolver(ball_ball: BallBallCollisionStrategy, ball_linear_cushion: BallLCushionCollisionStrategy, ball_circular_cushion: BallCCushionCollisionStrategy, ball_pocket: BallPocketStrategy, stick_ball: StickBallCollisionStrategy, transition: BallTransitionStrategy, version: int | None = None)[source]

A physics engine component that characterizes event resolution

Important

For everything you need to know about this class, see :doc:`Modular Physics </resources/custom_physics>`_.

Methods:

resolve(shot: pooltool.system.datatypes.System, event: pooltool.events.datatypes.Event) None[source]

Resolve an event for a system

classmethod default() Resolver[source]

Load ~/.config/pooltool/physics/resolver.yaml if exists, create otherwise

Return type:

Resolver

Functions

pooltool.physics.resolve.resolver.default_resolver() Resolver[source]

The default resolver.

This default resolver will be used and written to the resolver YAML if:

  1. There is no resolver YAML

  2. The resolver YAML is corrupt

  3. The resolver YAML version doesn’t match VERSION

The resolver YAML is found at RESOLVER_PATH.

Return type:

Resolver

Attributes

pooltool.physics.resolve.resolver.RESOLVER_PATH

The location of the resolver path YAML.