169 lines
6.8 KiB
C++
169 lines
6.8 KiB
C++
/***********************************************************************************************************************
|
|
*
|
|
* Copyright (c) 2010 - 2022 by Tech Soft 3D, Inc.
|
|
* The information contained herein is confidential and proprietary to Tech Soft 3D, Inc., and considered a trade secret
|
|
* as defined under civil and criminal statutes. Tech Soft 3D shall pursue its civil and criminal remedies in the event
|
|
* of unauthorized use or misappropriation of its trade secrets. Use of this information by anyone other than authorized
|
|
* employees of Tech Soft 3D, Inc. is granted only under a written non-disclosure agreement, expressly prescribing the
|
|
* scope and manner of such use.
|
|
*
|
|
***********************************************************************************************************************/
|
|
/**
|
|
\file AnimDef.hpp
|
|
|
|
***********************************************************************************************************************/
|
|
|
|
#ifndef __A3DANIMDEF_H__
|
|
#define __A3DANIMDEF_H__
|
|
|
|
|
|
#define HOOPS_PRODUCT_PUBLISH_ADVANCED
|
|
#include <A3DSDKIncludes.h>
|
|
#include "../common.hpp"
|
|
|
|
void AddKeyFrameAppearance(A3DPDFAnimKeyFrame**& ppKeyFrame, int& idxkeyframe,
|
|
A3DDouble dTime,
|
|
int iInterpolationMask,
|
|
double dR, double dG, double dB,
|
|
double dOpacity,
|
|
A3DPDFERenderingStyle eRenderingStyle);
|
|
|
|
|
|
A3DStatus CreateMotionAppearInit(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
A3DPDFTargetEntity** ppTargets, int idxTargets,
|
|
double dColInitR, double dColInitG, double dColInitB,
|
|
double dOpacInit,
|
|
A3DPDFERenderingStyle eRenderingStyle,
|
|
double dTimeOffset,
|
|
double& dTimeDuration);
|
|
|
|
A3DStatus CreateMotionFlash(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
A3DPDFTargetEntity** ppTargets, int idxTarget,
|
|
double dColInitR, double dColInitG, double dColInitB,
|
|
double dColBlinkR, double dColBlinkG, double dColBlinkB,
|
|
A3DPDFERenderingStyle eRenderingStyle,
|
|
double dTimeOffset,
|
|
double& dTimeDuration);
|
|
|
|
|
|
A3DStatus CreateMoveBackward(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
A3DPDFTargetEntity** ppTargets, int idxTargets,
|
|
double dTimeOffset,
|
|
double& dTimeDuration);
|
|
|
|
A3DStatus CreateMotionMoveAndHide(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
A3DPDFTargetEntity** ppTargets, int idxTargets,
|
|
double dInitValueX, double dInitValueY, double dInitValueZ,
|
|
double dApplyTranslateValueX, double dApplyTranslateY, double dApplyTranslateZ,
|
|
double dColInitR, double dColInitG, double dColInitB,
|
|
bool bHide,
|
|
A3DPDFERenderingStyle eRenderingStyle,
|
|
double dTimeOffset,
|
|
double& dTimeDuration);
|
|
|
|
A3DStatus CreateMotionMoveRotateAndHide(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
A3DPDFTargetEntity** ppTargets, int idxTargets,
|
|
double dInitValueX, double dInitValueY, double dInitValueZ,
|
|
double dApplyTranslateValueX, double dApplyTranslateY, double dApplyTranslateZ,
|
|
double dColInitR, double dColInitG, double dColInitB,
|
|
bool bHide,
|
|
A3DPDFERenderingStyle eRenderingStyle,
|
|
double dTimeOffset,
|
|
double& dTimeDuration);
|
|
|
|
|
|
A3DStatus CreateMotionMoveInitTransfo(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
A3DPDFTargetEntity** ppTargets, int idxTargets,
|
|
double dApplyTranslateX, double dApplyTranslateY, double dApplyTranslateZ,
|
|
double dTimeOffset,
|
|
double& dTimeDuration);
|
|
|
|
A3DStatus CreateMoveTranslationBackward(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
A3DPDFTargetEntity** ppTargets, int idxTargets,
|
|
double dApplyTranslateX, double dApplyTranslateY, double dApplyTranslateZ,
|
|
double dColInitR, double dColInitG, double dColInitB,
|
|
double dTimeOffset,
|
|
double& dTimeDuration);
|
|
|
|
A3DStatus CreateMotionCameraInit(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
double dPosX0, double dPosY0, double dPosZ0,
|
|
double dTargetX0, double dTargetY0, double dTargetZ0,
|
|
double dUpX0, double dUpY0, double dUpZ0,
|
|
double dFov0, A3DPDFEProjectionMode eMode0, double dZoomFactor0,
|
|
double dPosX, double dPosY, double dPosZ,
|
|
double dTargetX, double dTargetY, double dTargetZ,
|
|
double dUpX, double dUpY, double dUpZ,
|
|
double dFov, A3DPDFEProjectionMode eMode, double dZoomFactor,
|
|
double dTimeOffset,
|
|
double& dTimeDuration);
|
|
|
|
A3DStatus CreateMotionsInitState(A3DPDFAnimMotion**& ppMotion, int& idxMotion,
|
|
int iMaxStep,
|
|
double dStepInitTimeOffset,
|
|
double& dStepTimeDuration);
|
|
|
|
A3DStatus CreateView(A3DPDFDocument* pDoc, A3DPDF3DArtwork* p3DArtwork,
|
|
A3DDouble dPosX, A3DDouble dPosY, A3DDouble dPosZ,
|
|
A3DDouble dTargetX, A3DDouble dTargetY, A3DDouble dTargetZ,
|
|
A3DDouble dUpX, A3DDouble dUpY, A3DDouble dUpZ,
|
|
A3DPDFEProjectionMode eProjectionMode,
|
|
A3DDouble dZoomFactor, A3DDouble dFieldOfView,
|
|
A3DBool bIsDefault, const A3DUTF8Char* pcViewName,
|
|
A3DPDFView** ppView);
|
|
|
|
|
|
|
|
//######################################################################################################################
|
|
// GLOBAL VARIABLES
|
|
|
|
#ifdef DEFINE_TARGETS_GLOBALS
|
|
#define EXTERN
|
|
#else
|
|
#define EXTERN extern
|
|
#endif
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsWasher;
|
|
EXTERN int idxTargetsWasher;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsAllModel;
|
|
EXTERN int idxTargetsAllModel;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsAllExceptWasher;
|
|
EXTERN int idxTargetsAllExceptWasher;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsScrew1;
|
|
EXTERN int idxTargetsScrew1;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsScrew2To4;
|
|
EXTERN int idxTargetsScrew2To4;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsCarbu;
|
|
EXTERN int idxTargetsCarbu;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsHousingFront;
|
|
EXTERN int idxTargetsHousingFront;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsCasingFront;
|
|
EXTERN int idxTargetsCasingFront;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsScrews;
|
|
EXTERN int idxTargetsScrews;
|
|
|
|
EXTERN A3DPDFTargetEntity** ppTargetsMobilePart;
|
|
EXTERN int idxTargetsMobilePart;
|
|
|
|
#define PAUSE1SEC 1.0
|
|
#define PAUSEDEMISEC 0.5
|
|
|
|
A3DStatus BuildAnimationStep1(A3DPDFAnimation **ppAnim, double dTimeOffset, double& dTimeDuration);
|
|
A3DStatus BuildAnimationStep2(A3DPDFAnimation **ppAnim, double dTimeOffset, double& dTimeDuration);
|
|
A3DStatus BuildAnimationStep3(A3DPDFAnimation **ppAnim, double dTimeOffset, double& dTimeDuration);
|
|
A3DStatus BuildAnimationStep4(A3DPDFAnimation **ppAnim, double dTimeOffset, double& dTimeDuration);
|
|
A3DStatus BuildAnimationStep5(A3DPDFAnimation **ppAnim, double dTimeOffset, double& dTimeDuration);
|
|
A3DStatus BuildAnimationStep6(A3DPDFAnimation **ppAnim, double dTimeOffset, double& dTimeDuration);
|
|
A3DStatus BuildAnimationStep7(A3DPDFAnimation **ppAnim, double dTimeOffset, double& dTimeDuration);
|
|
|
|
void CreateAllTargetsSet(A3DAsmModelFile* pModelFile);
|
|
|
|
#endif /* __A3DANIMDEF_H__ */
|