Files
pymol/plugin/config.py
2024-09-07 09:12:14 +08:00

42 lines
1.9 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
'''
@file :myconfig.py
@Description: :定义一些常用的配置
@Date :2023/09/24 13:09:19
@Author :lyzeng
@Email :pylyzeng@gmail.com
@version :1.0
'''
from dataclasses import dataclass, field, fields
from typing import Tuple
@dataclass
class colorp():
color1: Tuple[Tuple[str, str], str] = field(default=(('color1', '[186,182,217]'), 'purple'))
color2: Tuple[Tuple[str, str], str] = field(default=(('color2', '[233,195,153]'), 'yellow'))
color3: Tuple[Tuple[str, str], str] = field(default=(('color3', '[43,113,216]'), 'blue_N'))
color4: Tuple[Tuple[str, str], str] = field(default=(('color4', '[206,155,198]'), 'purple'))
color5: Tuple[Tuple[str, str], str] = field(default=(('color5', '[251,187,62]'), 'orange'))
color6: Tuple[Tuple[str, str], str] = field(default=(('color6', '[245,157,158]'), 'red'))
color7: Tuple[Tuple[str, str], str] = field(default=(('color7', '[133,188,135]'), 'green'))
color8: Tuple[Tuple[str, str], str] = field(default=(('color8', '[30,230,30]'),'green_CL')) # Cl卤素配色
color9: Tuple[Tuple[str, str], str] = field(default=(('color9', '[141,215,247]'),'blue_C')) # C配色
color10:Tuple[Tuple[str, str], str] = field(default=(('color10', '[0,132,55]'),'green_F')) # F卤素配色
grey1: Tuple[str, str] = field(default=('grey1','[224,224,224]'))
colors: list = field(default_factory=list, init=False) # init=False 表示不在 __init__ 方法中初始化
def __post_init__(self):
self.colors = [getattr(self, f.name) for f in fields(self) if f.name.startswith('color') and getattr(self, f.name)]
@dataclass
class font():
font_size:int = field(default=28) # 单位就是正常的px。你也可以用负值则单位是Å
@dataclass
class mole():
stick_radius: float = field(default=0.10)
@dataclass
class atom():
size: float = field(default=0.28)