"""Enum constants for the FieldView Python package."""
from enum import Enum, IntEnum
__all__ = [
"Axis",
"Plane",
"Axes",
"Coloring",
"BoundaryTypeSelection",
"Material",
"LineType",
"ContourColoring",
"LegendType",
"LegendLabelsPerLine",
"LegendLabelsColorMode",
"LegendAnnotationPosition",
"AnnotationTextAlign",
"AnnotationArrowPoint",
"DisplayType",
"PathsDisplayType",
"AnimationDirection",
"CalculationDirection",
"StreamlinesSeedCoord",
"SweepDirection",
"VectorHeadType",
"VectorShaftType",
"VectorProjectionType",
"CurvedVectorDisplayType",
"NumericalFormat",
"Font",
"AnnotationTextDirection",
"ColormapName",
"Scale",
"GeometricColor",
"ServerType",
"ServerConfig",
"InputMode",
"GridProcessing",
"Plot3dFileFormat",
"Plot3dCoords",
"DuplicateOperation",
"VortexCoreMethod",
"SurfaceFlowMode",
"SurfaceFlowSeeding",
"Plot2DSamplingMode",
"Plot2DHorizontalAxis",
"Plot2DPathStyle",
"Plot2DLineStyle",
"Plot2DBorderLayout",
"Plot2DPathKind",
]
[docs]
class Axis(str, Enum):
"""Single-axis identifier (x/y/z)."""
X = "x"
Y = "y"
Z = "z"
[docs]
class Plane(str, Enum):
"""Single-axis identifier (x/y/z/r/t/i/j/k)."""
X = "x"
Y = "y"
Z = "z"
R = "r"
T = "t"
I = "i"
J = "j"
K = "k"
[docs]
class Axes(str, Enum):
"""Axis combinations for mirror/translate operations."""
X = "x"
Y = "y"
Z = "z"
XY = "xy"
XZ = "xz"
YZ = "yz"
XYZ = "xyz"
[docs]
class Coloring(str, Enum):
"""Surface coloring mode identifier."""
GEOMETRIC = "geometric"
SCALAR = "scalar"
MATERIAL = "material"
[docs]
class BoundaryTypeSelection(str, Enum):
"""Boundary type selection keywords."""
ALL = "all"
NONE = "none"
[docs]
class LineType(str, Enum):
"""Line type identifier."""
THIN = "thin"
MEDIUM = "medium"
THICK = "thick"
[docs]
class ContourColoring(str, Enum):
"""Contour coloring identifier."""
NONE = "none"
BLACK = "black"
WHITE = "white"
GEOMETRIC = "geometric"
SCALAR = "scalar"
[docs]
class LegendType(str, Enum):
"""Legend type identifier."""
SPECTRUM = "spectrum"
CONTOUR = "contour"
[docs]
class LegendLabelsPerLine(str, Enum):
"""Contour legend labels-per-line."""
SINGLE = "single"
MULTI = "multi"
[docs]
class LegendLabelsColorMode(str, Enum):
"""Legend labels color mode."""
GEOMETRIC = "geometric"
SCALAR = "scalar"
[docs]
class LegendAnnotationPosition(str, Enum):
"""Legend annotation relative position."""
LEFT = "left"
RIGHT = "right"
TOP = "top"
BOTTOM = "bottom"
[docs]
class AnnotationTextAlign(str, Enum):
"""Annotation text alignment."""
LEFT = "left"
TOP = "top"
CENTER = "center"
MIDDLE = "middle"
RIGHT = "right"
BOTTOM = "bottom"
[docs]
class AnnotationArrowPoint(str, Enum):
"""Annotation arrow endpoint key."""
TIP = "tip"
TAIL = "tail"
[docs]
class DisplayType(str, Enum):
"""Surface display type identifier.
Values:
CONSTANT: Constant shading.
FACETED: Faceted shading.
SMOOTH: Smooth shading.
MESH: Mesh display.
CONTOURS: Contour lines.
CRINKLE: Crinkle display.
VERTICES: Unlit vertices.
SHADED_VERTICES: Lit vertices.
VECTORS: Vector display mode.
"""
CONSTANT = "constant"
FACETED = "faceted"
SMOOTH = "smooth"
MESH = "mesh"
CONTOURS = "contours"
OUTLINES = "outlines"
CRINKLE = "crinkle"
VERTICES = "vertices"
SHADED_VERTICES = "shaded_vertices"
VECTORS = "vectors"
[docs]
class PathsDisplayType(str, Enum):
"""Streamline display type identifier."""
COMPLETE = "complete"
FILAMENT = "filament"
FILAMENT_ARROWS = "filament_arrows"
FILAMENT_SPHERES = "filament_spheres"
GROWING = "growing"
SPHERES_AND_LINES = "spheres_and_lines"
SPHERES = "spheres"
POLYSPHERES = "polyspheres"
DOTS = "dots"
LINES_OF_SPHERES = "lines_of_spheres"
LINES_OF_DOTS = "lines_of_dots"
RIBBONS = "ribbons"
[docs]
class Plot2DSamplingMode(str, Enum):
"""2D plot path sampling mode."""
CELL_CROSSINGS = "cell_crossings"
UNIFORM = "uniform"
[docs]
class Plot2DHorizontalAxis(str, Enum):
"""2D plot horizontal axis mode."""
DISTANCE = "distance"
X = "x"
Y = "y"
Z = "z"
R = "r"
T = "t"
[docs]
class Plot2DPathStyle(str, Enum):
"""2D plot path drawing style."""
LINES = "lines"
SYMBOLS = "symbols"
LINES_AND_SYMBOLS = "lines_and_symbols"
[docs]
class Plot2DLineStyle(str, Enum):
"""2D plot line style."""
SOLID = "solid"
DASHED = "dashed"
[docs]
class Plot2DBorderLayout(str, Enum):
"""2D plot border layout."""
ALL_SIDES = "all_sides"
ACTIVE_AXES = "active_axes"
[docs]
class Plot2DPathKind(str, Enum):
"""2D plot path kind."""
VOLUME_LINE = "volume_line"
IMPORTED = "imported"
[docs]
class AnimationDirection(str, Enum):
"""Streamline animation direction."""
FORWARD = "forward"
BACKWARD = "backward"
[docs]
class CalculationDirection(str, Enum):
"""Streamline calculation direction."""
FORWARD = "forward"
BACKWARD = "backward"
BOTH = "both"
[docs]
class StreamlinesSeedCoord(str, Enum):
"""Streamline seed coordinate type."""
IJK = "ijk"
IJK_REAL = "ijk_real"
XYZ = "xyz"
[docs]
class SweepDirection(str, Enum):
"""Sweep direction identifier."""
UP = "up"
DOWN = "down"
BOUNCE = "bounce"
[docs]
class VectorHeadType(str, Enum):
"""Vector head type identifier.
Values:
HEAD2D: 2D heads.
HEAD3D: 3D heads.
"""
HEAD2D = "2d"
HEAD3D = "3d"
[docs]
class VectorShaftType(str, Enum):
"""Vector shaft type identifier.
Values:
STRAIGHT: Straight shafts.
CURVED: Curved shafts.
"""
STRAIGHT = "straight"
CURVED = "curved"
[docs]
class VectorProjectionType(str, Enum):
"""Vector projection type identifier.
Values:
TOTAL: Total vector.
YZ: Project to YZ.
XZ: Project to XZ.
XY: Project to XY.
PROJECTED: Projected vector.
"""
TOTAL = "total"
YZ = "yz"
XZ = "xz"
XY = "xy"
PROJECTED = "projected"
[docs]
class CurvedVectorDisplayType(str, Enum):
"""Curved vector display type identifier.
Values:
COMPLETE: Complete display.
FILAMENT: Filament display.
GROWING: Growing display.
"""
COMPLETE = "complete"
FILAMENT = "filament"
GROWING = "growing"
[docs]
class Font(str, Enum):
"""Text font identifier."""
LEE = "lee"
LEE_BOLD = "lee bold"
LEE_ITALIC = "lee italic"
LEE_BOLD_ITALIC = "lee bold italic"
LEEMONO = "leemono"
LEEMONO_BOLD = "leemono bold"
LEEMONO_ITALIC = "leemono italic"
LEEMONO_BOLD_ITALIC = "leemono bold italic"
LEESE = "leese"
LEESE_BOLD = "leese bold"
NOTO = "noto"
NOTO_SANS_REGULAR = "noto sans regular"
ROMAN_SANS_SERIF = "roman sans serif"
ROMAN = "roman"
ITALICS = "italics"
SCRIPT = "script"
[docs]
class AnnotationTextDirection(str, Enum):
"""Annotation text direction."""
HORIZONTAL = "horizontal"
VERTICAL = "vertical"
[docs]
class ColormapName(str, Enum):
"""Colormap name identifiers."""
SPECTRUM = "spectrum"
NASA_1 = "nasa-1"
NASA_2 = "nasa-2"
GRAY_SCALE = "gray scale"
COLOR_STRIPED = "color striped"
BLACK_AND_WHITE = "black & white"
STRIPED = "striped"
ZEBRA = "zebra"
ACHROMATIC_VISION_1 = "achromatic vision 1"
ACHROMATIC_VISION_2 = "achromatic vision 2"
BANDED_BLUE_TO_RED_DARK = "banded blue to red dark"
BANDED_BLUE_TO_RED_LIGHT = "banded blue to red light"
BANDED_GRAYSCALE = "banded grayscale"
BIG_DIFFERENCE = "big difference"
BIO_SPECTRUM_1 = "bio spectrum 1"
BIO_SPECTRUM_2 = "bio spectrum 2"
BLOODFLOW_DOPPLER = "bloodflow doppler"
BLUE_CHROME = "blue chrome"
CAMOUFLAGE = "camouflage"
CCM_BLUE_RED = "ccm blue red"
CCM_COOL_WARM = "ccm cool warm"
CCM_HIGH_CONTRAST = "ccm high contrast"
CCM_SPECTRUM = "ccm spectrum"
CD_SPECTRUM = "cd spectrum"
CD_STRIPED = "cd striped"
CHROME = "chrome"
COLD = "cold"
DARK_RADIATION = "dark radiation"
DARK_SPECTRUM = "dark spectrum"
DARK_GREEN_GRADIENT = "dark green gradient"
FLAME_TRANSITION = "flame transition"
GOLD = "gold"
HIGH_CONTRAST = "high contrast"
HOT = "hot"
HOT_TO_COLD_DIFF = "hot to cold diff"
INDIGO_FLAME = "indigo flame"
LEAF_COLOR = "leaf color"
RADIATION_COLORS = "radiation colors"
RED_TO_BLUE_DIFF = "red to blue diff"
RED_TO_PURPLE_DIFF = "red to purple diff"
RELIEF_MAP = "relief map"
RELIEF_MAP_LAND = "relief map land"
RELIEF_MAP_OCEAN = "relief map ocean"
SIMPLE_FLUX = "simple flux"
SMALL_DIFFERENCE = "small difference"
SPECTRUM_DIFF_GRAY = "spectrum diff gray"
SPECTRUM_DIFF_WHITE = "spectrum diff white"
STEEL_BLUE = "steel blue"
TEAL_BLACK_GRADIENT = "teal black gradient"
INFERNO = "inferno"
MAGMA = "magma"
PLASMA = "plasma"
VIRIDIS = "viridis"
[docs]
class Scale(str, Enum):
"""Colormap scale."""
LINEAR = "linear"
LOG = "log"
[docs]
class GeometricColor(IntEnum):
"""FV geometric color ids (1-10)."""
BLACK = 1
WHITE = 2
RED = 3
GREEN = 4
BLUE = 5
CYAN = 6
MAGENTA = 7
YELLOW = 8
PURPLE = 9
GRAY = 10
[docs]
class Material(str, Enum):
"""Boundary material preset names."""
ALUMINUM = "Aluminum"
BRASS = "Brass"
BRONZE = "Bronze"
CHROME = "Chrome"
COPPER = "Copper"
GOLD = "Gold"
IRON = "Iron"
SILVER = "Silver"
STEEL = "Steel"
TITANIUM = "Titanium"
GLOSSY_PAINT = "Glossy Paint"
MATTE_PAINT = "Matte Paint"
SHINY_PLASTIC = "Shiny Plastic"
DULL_PLASTIC = "Dull Plastic"
GLASS = "Glass"
RUBBER = "Rubber"
[docs]
class ServerType(str, Enum):
"""Execution mode for dataset operations."""
STANDARD = "standard"
SHMEM = "shmem"
P4 = "p4"
[docs]
class ServerConfig(str, Enum):
"""Server configuration selector.
Use ``LOCAL``/``LOCAL_PARALLEL`` or pass a configuration name string
(without the ``.srv`` extension) found under the sconfig folder.
"""
LOCAL = "local"
LOCAL_PARALLEL = "local_parallel"
[docs]
class GridProcessing(str, Enum):
"""Balance between preprocessing cost and load speed."""
LESS = "less"
BALANCED = "balanced"
MORE = "more"
[docs]
class Plot3dCoords(str, Enum):
"""Coordinate dimensionality for Plot3D inputs."""
D2 = "2d"
D3 = "3d"
[docs]
class DuplicateOperation(str, Enum):
"""Duplicate operation to apply to the dataset."""
NONE = "none"
MIRROR = "mirror"
ROTATE = "rotate"
TRANSLATE = "translate"
[docs]
class VortexCoreMethod(str, Enum):
"""Vortex core detection method."""
VORTICITY_ALIGNMENT = "vorticity alignment"
EIGENMODE_ANALYSIS = "eigenmode analysis"
[docs]
class SurfaceFlowMode(str, Enum):
"""Surface flow calculation mode."""
NO_SLIP = "no_slip"
EULER = "euler"
OFFSET = "offset"
[docs]
class SurfaceFlowSeeding(str, Enum):
"""Surface flow seeding mode."""
LOW_DENSITY = "low_density"
MEDIUM_DENSITY = "medium_density"
HIGH_DENSITY = "high_density"
FROM_FILE = "from_file"