You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nmWTAI-Platform/Include/nmNum/nmSubWxs/nmPebiResultAnimationExport...

46 lines
1.7 KiB
C++

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#ifndef NMPEBIRESULTANIMATIONEXPORTSETTINGS_H
#define NMPEBIRESULTANIMATIONEXPORTSETTINGS_H
#include "nmSubWxs_global.h"
#include <QVector>
/** @brief PEBI结果动画导出的已规范化纯值参数。 */
class NM_SUB_WXS_EXPORT nmPebiResultAnimationExportSettings
{
public:
/** @brief 创建默认15 FPS、单帧范围、采样间隔1和2x2输出参数。 */
nmPebiResultAnimationExportSettings();
/**
* @brief 校验帧范围、采样间隔、帧率及输出尺寸是否可用于导出。
* @param nAvailableFrameCount 当前动态属性可用的总帧数。
* @return 全部参数有效时返回true。
*/
bool isValid(int nAvailableFrameCount) const;
/**
* @brief 按闭区间和采样间隔生成零基帧下标,并保证包含结束帧。
* @return 有效的有序帧下标;基础范围无效时返回空数组。
*/
QVector<int> buildFrameIndices() const;
/** @brief 返回buildFrameIndices()生成的实际输出帧数。 */
int getOutputFrameCount() const;
/** @brief 视频帧率,正式有效范围为1~5000 FPS。 */
int m_nFramesPerSecond;
/** @brief 导出闭区间的零基起始帧下标。 */
int m_nStartFrameIndex;
/** @brief 导出闭区间的零基结束帧下标,允许与起始帧相同。 */
int m_nEndFrameIndex;
/** @brief 原始结果帧的正整数采样间隔。 */
int m_nSamplingInterval;
/** @brief 输出宽度,单位为像素,必须是2~8192之间的偶数。 */
int m_nOutputWidth;
/** @brief 输出高度,单位为像素,必须是2~8192之间的偶数。 */
int m_nOutputHeight;
};
#endif // NMPEBIRESULTANIMATIONEXPORTSETTINGS_H