Source code for wolfhece.PyVertex

"""
PyVertex — Vertex and cloud-of-vertices package for WOLF.

Provides:

- :class:`wolfvertex` — Single 3D vertex with associated values.
- :class:`Cloud_Styles` — Enum of rendering styles (POINT, CIRCLE, CROSS, QUAD).
- :class:`cloudproperties` — Visual properties for a cloud of vertices.
- :class:`cloud_vertices` — Collection of vertices with I/O, KDTree, rendering.
- :func:`getRGBfromI` / :func:`getIfromRGB` — RGB <-> integer color conversion.
- :func:`circle` / :func:`cross` / :func:`quad` — OpenGL drawing primitives.

When wxPython/OpenGL is not available, ``cloud_vertices`` and ``cloudproperties``
fall back to model-only versions (no rendering, no wx dialogs).
"""

from ._model import wolfvertex
from ._model import cloud_vertices as cloud_vertices_model
from ._model import cloudproperties as cloudproperties_model
from ._model import cloud_of_clouds as cloud_of_clouds_model

# Re-export color helpers (now canonical home is color_constants)
from ..color_constants import getRGBfromI, getIfromRGB

try:
    from ._gui import (cloud_vertices, cloudproperties,
                        circle, cross, quad, Cloud_Styles, Cloud_OGLRenderer,
                        cloud_of_clouds)
except ImportError:
[docs] cloud_vertices = cloud_vertices_model
cloudproperties = cloudproperties_model cloud_of_clouds = cloud_of_clouds_model Cloud_Styles = None Cloud_OGLRenderer = None # OpenGL drawing primitives not available without OpenGL def circle(*args, **kwargs): pass def cross(*args, **kwargs): pass def quad(*args, **kwargs): pass __all__ = ['wolfvertex', 'Cloud_Styles', 'Cloud_OGLRenderer', 'cloud_vertices', 'cloud_vertices_model', 'cloudproperties', 'cloudproperties_model', 'cloud_of_clouds', 'cloud_of_clouds_model', 'getRGBfromI', 'getIfromRGB', 'circle', 'cross', 'quad']