Source code for trescope.config.VectorField3DConfig

from typing import List

from trescope.config import Config, AnchorType, AnchorCM
from trescope.core.Utils import toListIfNumpyOrTensorArray


[docs]class VectorField3DConfig(Config): """Config for :py:meth:`trescope.Output.plotVectorField3D`""" def __init__(self): super().__init__() self.__sizeFactor: float = .5 self.__autoScaleByLocation = False self.__colorScale = [[0, 0x88000000], [1, 0x88000000]] self.__x: List[float] = [] self.__y: List[float] = [] self.__z: List[float] = [] self.__anchor: str = str(AnchorCM)
[docs] def sizeFactor(self, sizeFactor: float): """ Specify size factor . :param sizeFactor: size factor , default .5 :return: self , for chain call """ self.__sizeFactor = sizeFactor return self
[docs] def anchor(self, anchor: AnchorType): """ Specify anchor type . :param anchor: anchor :return: self , for chain call """ self.__anchor = str(anchor) return self
[docs] def autoScaleByLocation(self, autoScale: bool): """ Specify auto scale or not . :param autoScale: auto scale , default `False` :return: self , for chain call """ self.__autoScaleByLocation = autoScale return self
[docs] def locations(self, x: List[float], y: List[float], z: List[float]): """ Specify locations . :param x: x :param y: y :param z: z :return: self , for chain call """ self.__x, self.__y, self.__z = x, y, z return self
[docs] def color(self, color: int): """ Specify color . :param color: color :return: self , for chain call """ self.__colorScale = [[0, color], [1, color]] return self
def toDict(self): return { **super().toDict(), 'sizeFactor': self.__sizeFactor, 'autoScaleByLocation': self.__autoScaleByLocation, 'colorScale': self.__colorScale, 'locationX': toListIfNumpyOrTensorArray(self.__x), 'locationY': toListIfNumpyOrTensorArray(self.__y), 'locationZ': toListIfNumpyOrTensorArray(self.__z), 'anchor': self.__anchor }