Class Project¶
project(studio)
level = ‘studio’
Данные хранимые в БД (имя столбца : тип данных):
projects_keys = {
'name': 'text',
'path': 'text',
'status': 'text',
'project_database': 'json',
'chat_img_path': 'text',
'list_of_assets_path': 'text',
'preview_img_path': 'text',
'fps': 'real',
'units': 'text',
}
Создание экземпляра класса:¶
import edit_db as db
project = db.project()
Атрибуты¶
name: | (str) - имя проекта (уникально). |
---|---|
path: | (str) - путь до директории проекта. |
status: | (str) - ['active', 'none'] |
project_database: | |
(list) - параметры используемой базы данных, по умолчанию: ['sqlite3', False] |
|
chat_img_path: | (str) - путь до директории с картинками чата. |
list_of_assets_path: | |
(str) - путь до файла с временными данными создаваемых ассетов. | |
preview_img_path: | |
(str) - путь до директории с превью картинок чата. | |
fps: | (float) - fps проекта (по умолчанию 24). |
units: | (str) - юниты 3d сцен ['m', 'cm', 'mm'] по умолчанию 'm' |
list_active_projects: | |
(list) - атрибут класса список активных проектов, только имена. . Заполняется при выполнеии метода get_list, значение по умолчанию - []. |
|
list_projects: | (list) - атрибут класса список всех проектов (экземпляры). Заполняется при выполнеии метода get_list, значение по умолчанию - []. |
dict_projects: | (dict) - атрибут класса словарь содержащий все проекты (экземпляры) с ключами по именам. . Заполняется при выполнеии метода get_list, значение по умолчанию - {}. |
Методы¶
-
add_project
(project_name, project_path)¶ создаёт проект.
Note
при создании проекта новый экземпляр не возвращается, заполняются поля текущего экземпляра.
Параметры:
- project_name (str) - имя проекта, если имя не указано, но указана директория, проект будет назван именем директории
- project_path (str - path) - путь к директории проекта, если путь не указан, директория проекта будет создана в директории студии
- return - (True, ‘Ok!’) или (False, comment)
-
init
(name[, new=True])¶ инициализирует экземпляр по имени (заполняет поля экземпляра), чтение БД.
Параметры:
- name (str) - имя проекта
- new (bool) - если new= True - возвращает новый инициализированный экземпляр, если False то инициализирует текущий экземпляр
- return - новый экземпляр (project) / (True, ‘Ok!’) или (False, comment)
-
init_by_keys
(keys[, new=True])¶ инициализирует экземпляр по словарю (заполняет поля экземпляра), без чтения БД
Параметры:
- keys (dict) - словарь по projects_keys
- new (bool) - если new= True - возвращает новый инициализированный экземпляр, если False то инициализирует текущий экземпляр
- return - новый экземпляр (project) / (True, ‘Ok!’) или (False, comment)
-
get_list
()¶ чтение существующих проектов.
Note
не возвращает экземпляры, только заполняет
поля класса
: list_active_projects, list_projects, dict_projects. (см. Атрибуты )- return - (True, ‘Ok!’) или (False, comment)
-
rename_project
(new_name)¶ переименование проекта (данного экземпляра), заполняются поля экземпляра,
перезагружает studio.list_projects. ????
Параметры:
- new_name (str) - новое имя отдела
- return - (True, ‘Ok!’) или (False, comment).
-
remove_project
()¶ удаляет проект из БД (не удаляя файловую структуру),
перезагружает studio.list_projects ???
, приводит экземпляр к сосотоянию empty (все поля по projects_keys = False).Параметры:
- return - (True, ‘Ok!’) или (False, comment).
-
edit_status
(status)¶ изменение статуса проекта.
Параметры:
- status (str) - присваиваемый статус
- return - (True, ‘Ok!’) или (False, comment)
-
change_fps
(fps)¶ изменение fps проекта, предполагается автоматическое назначение этого параметра в сценах.
Параметры:
- fps (float) - fps
- return - (True, ‘Ok!’) или (False, comment)
-
change_units
(fps)¶ изменение юнитов проекта, параметр для 3d сцен. Предполагается автоматическое назначение этого параметра в сценах.
Параметры:
- units (str) - юниты для 3d сцен, значение из studio.projects_units
- return - (True, ‘Ok!’) или (False, comment)
Служебные¶
-
__make_folders
(root)¶ создаёт файловую структуру проекта, при отсутствии.
Параметры:
- root (str - path) - корневой каталог проекта
- return - None.
-
_write_settings
()¶ запись настроек проекта в файл project_path/studio.PROJECT_SETTING
Note
Выполнять в каждой процедуре по редактированию параметров проекта.
Параметры:
- return - (True, ‘Ok!’) или (False, comment)
-
_read_settings
()¶ чтение словаря параметров проекта из файла project_path/studio.PROJECT_SETTING
Параметры:
- return:
- data - словарь по ключам studio.projects_keys
- None в случае остутствия файла.